Automatiser une tache
hakoko -
Je voudrai telecharger le meme fichier toute les 30 seconde (par exemple), l'enregistrer dans le meme endroit avec le meme nom ( pour qu'il ecrase la version précedente )
comment le programmer ?? pouvez m'aider svp
40 réponses
- 1
- 2
La problématique porte sur l’automatisation du téléchargement récurrent d’un même fichier toutes les 30 secondes, avec écrasement du fichier existant dans le même répertoire et sous le même nom. Des propositions basées sur VBA Excel suggèrent d’utiliser Application.OnTime pour programmer des exécutions répétées et de lancer le téléchargement, afin de maintenir le fichier à jour automatiquement. La solution évoquée inclut aussi la gestion du chemin et du nom du fichier, et peut reposer sur des méthodes complémentaires comme l’écriture dans un fichier texte ou le rafraîchissement de données. En pratique, la solution peut s’accompagner d’un fichier de configuration précisant l’URL du fichier, l’intervalle et les paramètres d’accès, afin de limiter les risques de surcharge réseau et d’échec de téléchargement.
-
Bonjour,
Si vous etes toujours avec du VBA excel, regardez dans l'aide excel pour application.ontime et http://www.mdf-xlpages.com/modules/publisher/item.php?itemid=14
Bonne suite -
Bonjour,
Ce n'est pas des plus simple, de ce que j'ai pu voir sur internet. Pouvez-vous en mettre un a dispo sur https://www.cjoint.com/ que je puisse faire des tests
Merci
A+ -
Bonjour,
Il faut toujours commencer par: comment est generer le fichier et est-ce parametrable.
Vos avez fait preuve de reflexion et perceverance. Mais juste pour mettre un peu d'ambiance avec vos collegues (mirage23 en particulier), fin 2012 elle avait demande a afficher des infos et le fichier etait un fichier .txt, donc peut-etre qu'elle savait, mais elle n'a rien dit.
A+ -
Bonjour,
j'ai mis la main sur le manuel Eh! oui.
cependant maintenant j'ai un autre souci: Oui, lequel
http://www.commentcamarche.net/forum/excel-145/new#p27456894 qu'est-ce!!! -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Re,
pouvez-vous mettre un fichier txt a dispo?? -
Re,
manip, ouverture fichier .txt avec espace en delimiteur de separation de colonnes, faite avec enregistreur de macro.
Workbooks.OpenText Filename:="D:\_cles\download.txt", Origin:=xlMSDOS, _
StartRow:=1, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 1), Array(8, _
1), Array(15, 1), Array(22, 1), Array(29, 1), Array(36, 1), Array(43, 1), Array(49, 1), _
Array(55, 1), Array(62, 1), Array(68, 1), Array(75, 1), Array(80, 1), Array(87, 1), Array( _
94, 1), Array(101, 1), Array(109, 1), Array(115, 1), Array(122, 1), Array(130, 1), Array( _
138, 1), Array(144, 1), Array(151, 1), Array(158, 1), Array(165, 1), Array(171, 1), Array( _
179, 1), Array(185, 1), Array(191, 1), Array(199, 1)), TrailingMinusNumbers:=True
vous pouvez aussi vous inspirer du fichier de mirage23 pour ses imports .txt
genre:
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & Chemin_Complet, Destination:=Range("$A$2"))
ensuite, vous faite votre programme comme si c'etait un fichier excel
A+ -
Re,
code pour recevoir le fichier en colonne et format txt
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & Chemin_Complet, Destination:=Range("$A$1")) .Name = Fichier .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = False 'pas d'ajustement des colonnes .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = xlMSDOS 'format txt msdos .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = True .TextFileTabDelimiter = True .TextFileSpaceDelimiter = True 'delimiteur espace .TextFileColumnDataTypes = Array(xlTextFormat) 'definition format colonnes .TextFileTrailingMinusNumbers = True .Refresh BackgroundQuery:=False End With
A+ -
Bonjour,
Ben oui, mais ou??? -
Re,
quel est le message d'erreur??? -
Re,
blague a part, vous parametrez bien le bon chemin pour le bon fichier??????? -
Re,
jexecute la macro sans apporter les modif de quelle macro parlez-vous -
Bonjour,
N'ayant pas le fichier, code pour un csv de chez moi, adapter le a votre fichier
'importation 'adapter chemin et nom de fichier With ActiveSheet.QueryTables.Add(Connection:="TEXT;D:\_cles\Trace.CSV", _ Destination:=Range("$A$1")) 'adapter nom de fichier .Name = "Trace" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = 850 .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = True .TextFileCommaDelimiter = False .TextFileSpaceDelimiter = False 'mettre autant de 1 que de colonnes dans le ficher csv .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1) .TextFileTrailingMinusNumbers = True .Refresh BackgroundQuery:=False End With
Bonne suite -
Bonjour,
si vous "deletez" ou renommez le fichier, est-ce-qu'il y a toujours une incrementation de la version?? -
Bonjour,
Vous renommez ou vous supprimez le fichier un fois le traitement fait. -
Bonjour,
Votre macro ne rafraichit pas en permanance vos donnees!!!!!!! -
Re,
a quel endroit du code ?? il suffit peut-etre de synchronser. -
Re,
ligne a ajouter:
'Efface le contenu de toutes les cellules de l'onglet actif
If UCase(Dir(Chemin_Complet)) = UCase(Fichier_Ext) Then
avant:
Cells.ClearContents
et
End If
avant:
'positionne sur cellule A1
Range("A1").Select -
bonjour f894009,
alors j'en pense avoir terminé avec Excel pour importer les données du moins jespers, mon nouveau souci porte sur des données que je doit importer d'un autre ordinateur.
cette ordinateur contient un logiciel qui procur une interface graphique, sur la quelle je peu choisir un certains nombre d'option tel que afficher les données sous fichier text, sauf que pour cette ordinateur il stoque pas les données ou je pourais les recuperer, il me les envoi via le web)
alors manuellement je fais par exemple: brows->data record->(choisir la date)-> l'afficher ou l'enregistrer. alors ce qui me faut c'est de plannifier cette action chaque instnant donné. afin d'avoir à chaque foi le fichier le plus recent.
mon gro souci c'est comment automatiser c'es taches ?? -
Bonjour,
justement avec d'autre logiciel, j'ai pu le paramétrer à faire cette tache, sauf que pour d'autres ce n'est pas faisable, il faut à chaque foie le faire manuellement.
il me reste deux logiciels:
le premier stock des données sous format ".wlk" sauf que celui-ci ne donne pas de chemin pour les récupérer en entier , il faut a chaque foie importer les données, les enregistrer sous fichier.wlk ou bien les copier sous fichier texte .
le second, permet de télécharger les données via le web, sauf que la dernière url que j'ai , c'est celle de la page qui permet de choisir la date et l'heur, et donc même en VB j'ai pas encore réussi à automatiser le téléchargement des données temps réel. -
Re, j'ai trouver ou le premier stock les données. ils sont d'extension ".wlk" et il les stock ainsi :
2012-09.wlk
2012-10.wlk
2012-11.wlk
.................
et chaque fichier contient les données du mois.
est ce que je peut les importé sur mon classeur Excel?
- 1
- 2