Résolu Actualiser avant d'enregistrer et fermer un fichier excel en VBA

  • Auteur de la discussion bentahar.principale
  • Date de début

bentahar.principale

Nouveau membre
Bonjour les amis,

je souhaite rectifier mon code en VBA qui normalement me permet d'ouvrir un autre fichier excel calcule.xlsx l'actualiser par la suite le sauvegarder et le fermer, le code que j'ai est le suivant :

Sub Test()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Open("C:\Calcule.xlsx")
Set ws = wb.Worksheets(1)
wb.Save
wb.Close
End Sub


l'actualisation se fait automatiquement à l'ouverture du fichier calcule.xlsx par une requête de power query et ce à partir d'un autre fichier le souci c'est que le code sauvegarde et ferme le fichier avant que celui-ci ne soit actualiser, donc il me faut le code qui me permet d'attendre la fin de l'actualisation et ensuite sauvegarder et fermer.
j'ai tester avec DoEvents Application.Calculate et avec .RefreshAll même chose
Merci d'avance :)
 

drul

Obscur pro du hardware
Staff
Pas sûr qu'il existe un moyen d'obtenir cet info :/
Un délais pourrait fonctionner ?

edit: essaye un "wb.RefreshAll", avant le "wb.save", pas sûr du résultat, mais ça vaut la peine d'essayer...
 

drul

Obscur pro du hardware
Staff
Meilleure réponse
Salut, dans un module, met le code suivant:
Code:
Dim wb As Workbook
Sub Test()
Set wb = Workbooks.Open("C:\Calcule.xlsx")
Application.OnTime Now + TimeValue("00:00:05"), "closeFile"
End Sub

Sub closeFile()
    wb.Save
    wb.Close
End Sub
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 128
Messages
6 717 845
Membres
1 586 373
Dernier membre
https://forum.tomshardwar
Partager cette page
Haut