J'ai un fichier .csv que je récupère dans un fichier excel par le biais d'une "connexion à partir d'un fichier texte/csv" et je souhaiterais que cette connexion puisse être actualisée automatiquement toutes les X secondes.
J'ai vu que je peux définir une mise a jour automatique toutes les X minutes mais ce n'est pas assez, il faudrait que je puisse descendre sur des secondes.
Je pense que cela doit être possible avec une macro mais je ne trouve rien sur la toile.
avec ce code la macro est executée une fois seulement je pense, comment faire pour que cela tourne en boucle permanente ?
VB:
Sub Macro1()
'
' Macro1 Macro
'
ActiveWorkbook.RefreshAll
End Sub
Sub Macro2()
'
' Macro2 Macro
'
Application.OnTime Now + TimeValue("00:00:05"), "Macro1"
End Sub
Effectivement cela marche bien mieux ainsi, merci beaucoup.
est-il possible de trouver un petit bout de code qui arrête la macro en cliquant simplement sur un bouton que je mettrai dans la fichier excel ?
VB:
Sub Macro1()
'
' Macro1 Macro
'
ActiveWorkbook.RefreshAll
Application.OnTime Now + TimeValue("00:00:05"), "Macro1"
End Sub
Dim tMemo
Sub Macro1()
ActiveWorkbook.RefreshAll
tMemo = Now + TimeValue("00:00:05")
Application.OnTime tMemo, "Macro1"
Debug.Print tMemo
End Sub
Sub stopMacro1()
Application.OnTime tMemo, "Macro1", , False
End Sub
penser à appeler stopMacro1 également depuis Workbook_BeforeClose() si tu ne veux pas que ton fichier se rouvre.
eric