OVH Cloud OVH Cloud

Publier automatiquement

14 réponses
Avatar
Fredo
Bonjour,
j'ai une macro excel qui me créé une liste de variable.
J'extrait ces variables au format texte, et je l'envoi sur mon
espace ftp. (un prog php reprend ces variables et en fait un tableau html,
mais là n'est pas la question)

J'ai déjà une macro qui me fait le calcul de mes variables
Il faudrait que je puisse automatiquement créer un fichier .txt
nommé "classeur.txt"
et le publier automatiquement

données dont je dispose:
ftp : mon.ftp.fr
identifiant : fredo.strasbourg
mot de passe : motdepasse

J'ai rien trouvé que Excelabo.
(ou j'ai pas cherché au bon endroit.. ;-) )

--
**********************
SOCARA S.A.
Strasbourg

10 réponses

1 2
Avatar
patrick.lyon
bonjour
je te met à la suite des exemples(modifiés) qui fonctionnent chez moi

fichier FTPconfig.ftp
open mon.ftp.fr
fredo.strasbourg
motdepasse
ascii
prompt
put lyon.txt
cd lyon
del lyon.asp
del lyon2.asp
del lyon.php
put lyon.asp
cd ..
cd archives
cd lyon
mkdir 2003
cd 2003
mkdir 41
cd 41
put lyon_4.asp
cd ..
cd ..
pwd
bye

fichier ftppublication.bat
D:
cdpubmonsite
ftp -i -s:ftpconfig.ftp
echo felicitation

et pour finir la macro de creation (je m'en sert pour créer le .ftp, le
.bat et le .asp)

Sub pp_ftp()
'
' --------------------------------------------------------------------
' création du fichier de config ftp
' --------------------------------------------------------------------
'

Dim Var As Range
Dim szRangeAddress As String
Dim objRange As Excel.Range
ppchemin = Range("k1")
ppnom = Range("c11")
ppversion = Range("c12")
Sheets("config").Select
szRangeAddress = "e1:e23"
On Error Resume Next
Set objRange = Range(szRangeAddress)
Set Var = Range(szRangeAddress)


If Var Is Nothing Then Exit Sub

FichierTXT = ppchemin & "ppcrises.ftp" 'chemin et nom à modifier
NbColonne = Var.Columns.Count
NbLigne = Var.Rows.Count
CalcState = Application.Calculation
StatusBarState = Application.DisplayStatusBar
Application.Calculation = xlManual

Application.StatusBar = "Patientez SVP...création du fichier"
If Len(Dir(FichierTXT)) > 1 Then Kill FichierTXT
'Supprime le fichier s'il existe déjà
Open FichierTXT For Output As 1
'création du fichier texte

aRow = 0
While aRow < NbLigne

aRow = aRow + 1
DoEvents
Application.StatusBar = Str$(Int((aRow / NbLigne) * 100)) & "%
achevé"
If (Not Var.Rows(aRow).Hidden) Then
MV = ""
aCol = 0
While aCol < NbColonne
aCol = aCol + 1
If (Not Var.Columns(aCol).Hidden) Then
CellV = Var.Cells(aRow, aCol).Text
End If
If aCol < NbColonne Then
MV = MV & CellV & ";"
Else: MV = MV & CellV
End If
Wend
Print #1, MV
End If
Wend

Close
DoEvents
Application.Calculation = CalcState
Application.StatusBar = ""
Application.DisplayStatusBar = StatusBarState
Sheets("public").Select
Range("A7").Select


End Sub

voila
tu me diras le résultat et si ça te conviens
@+

"Fredo" a exprimé avec précision :
Bonjour,
j'ai une macro excel qui me créé une liste de variable.
J'extrait ces variables au format texte, et je l'envoi sur mon
espace ftp. (un prog php reprend ces variables et en fait un tableau html,
mais là n'est pas la question)

J'ai déjà une macro qui me fait le calcul de mes variables
Il faudrait que je puisse automatiquement créer un fichier .txt
nommé "classeur.txt"
et le publier automatiquement

données dont je dispose:
ftp : mon.ftp.fr
identifiant : fredo.strasbourg
mot de passe : motdepasse

J'ai rien trouvé que Excelabo.
(ou j'ai pas cherché au bon endroit.. ;-) )


--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com

Avatar
Fredo
Ca a l'air pas mal, mais pourrais tu m'expliquer un peu
ta macro :
- où dois-je mettre les coordonnées de connexion ?
- où dois je mettre les valeur à exporter ?
- où dois-je mettre le chemin où doit être créé le fichier txt ?

Merci
Avatar
patrick.lyon
Ca a l'air pas mal, mais pourrais tu m'expliquer un peu
ta macro :
- où dois-je mettre les coordonnées de connexion ?
dans le fichier.ftp

- où dois je mettre les valeur à exporter ?
dans une plage de cellules excel

la macro va te générer un fichier texte
- où dois-je mettre le chemin où doit être créé le fichier txt ?
tu le met en dur ou tu le param avec des combo box dans excel


Merci
en résumé

et pour répondre a la demande initiale
il te faut en dur sur ton dd, 1 fichier .bat qui va te lancer la
conexion avec le fichier.ftp en parametre
et 1 fichier .txt généré par exel et sauvegardé au meme endroit

cerise sur le gateau, il est possible de lancer la connexion depuis
excel (mais c'est une autre histoire)

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com

Avatar
Fredo
Ca marche bien pour lé création du fichier text.

Mais pour ce qui est de
il te faut en dur sur ton dd, 1 fichier .bat qui va te lancer la
conexion avec le fichier.ftp en parametre


comment créé t'on un fichier .bat ?
quelle en est la syntaxe ?
quelle doit être la syntaxe (ou le contenu) du fichier .fpt ?

Avatar
patrick.lyon
"Fredo" avait soumis l'idée :
Ca marche bien pour lé création du fichier text.

Mais pour ce qui est de
il te faut en dur sur ton dd, 1 fichier .bat qui va te lancer la
conexion avec le fichier.ftp en parametre


comment créé t'on un fichier .bat ?
quelle en est la syntaxe ?
quelle doit être la syntaxe (ou le contenu) du fichier .fpt ?
je t'ai mis en début de fil un exemple de fichier bat et ftp

le bat permet de lancer en mode dos la connexion ftp
le .ftp contient toutes les commandes que tu veux passer au serveur
dans ton cas se serai un simple PUT de ton fichier au bon endroit sur
le serveur
on en recause demain si tu veux

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com


Avatar
Fredo
SUPER CA MARCHE
j'ai réussi, en adaptant à mes paramètres.....

maintenant, peut on lancer un fichier .bat à partir de excel ?
Avatar
FxM
Bonsoir,

Indiqué pas plus tard qu'hier par coco le bo :

en fait j'utilise la commande dans ma macro
retval = Shell("c:tempessai.bat", 1)
ici ça marche nickel, il me lance une fenetre dos, et m'exécute mon
fichier bat

@+
FxM

Fredo a écrit:

SUPER CA MARCHE
j'ai réussi, en adaptant à mes paramètres.....

maintenant, peut on lancer un fichier .bat à partir de excel ?




Avatar
patrick.lyon
pareil avec l'option d'afficher ou pas la boite de dialogue

'ReturnValue = Shell(ppchemin & "pppublic.bat", 1)' si 1 affiche le
prog
ReturnValue = Shell(ppchemin & "pppublic.bat", 0) ' 0 masque
l'affichage

"FxM" vient de nous annoncer :
Bonsoir,

Indiqué pas plus tard qu'hier par coco le bo :

en fait j'utilise la commande dans ma macro
retval = Shell("c:tempessai.bat", 1)
ici ça marche nickel, il me lance une fenetre dos, et m'exécute mon fichier
bat

@+
FxM

Fredo a écrit:

SUPER CA MARCHE
j'ai réussi, en adaptant à mes paramètres.....

maintenant, peut on lancer un fichier .bat à partir de excel ?





--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com


Avatar
Fredo
Y'a un truc bizarre,
je vois bien la fenetre dos s'afficher, mais ça dure quelque dizieme de
seconde,
et le fichier n'est pas envoyé...

j'ai incorporé cette ligne
ReturnValue = Shell("C:Documents and SettingsfredoMes
documentstesttest2lanceur.bat", 1)' si 1 affiche le
Avatar
patrick.lyon
Le 07/11/2003, "Fredo" a supposé :
Y'a un truc bizarre,
je vois bien la fenetre dos s'afficher, mais ça dure quelque dizieme de
seconde,
et le fichier n'est pas envoyé...

j'ai incorporé cette ligne
ReturnValue = Shell("C:Documents and SettingsfredoMes
documentstesttest2lanceur.bat", 1)' si 1 affiche le
ce que tu peux faire pour tester, c'est premdre une session DOS

te mettre dans le bon répertoire (toujours en DOS)
lancer le pregramme FTP
et une fois dans le prog FTP tapez tes commandes a la main, une par une
tu verras rapidement ce qui coince

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com

1 2