Bonjour,
2 questions que j'ai du mal à résoudre
1. J'ai créé sur Visual Basic une application qui entre autre va aller ouvrir une macro Excel.
Pour ouvrir le fichier j'ai utilisé Shell ...
Ce que je voudrais faire c'est vérifier que le fichier est toujours là et si non aller chercher la nouvelle adresse. Ensuite je voudrais que cette nouvelle adresse remplace la précédente définitivement. C'est à dire que si je ferme la macro et l'application VB la nouvelle adresse adresse restera effective jusqu'au prochain changement. Cela éviterai qu'une fois le chemin du fichier mauvais on ai besoin de le recharger à chaque fois.
2. J'ai un code vba qui copie les données d'un fichier excel, créé un 2ème fichier excel et écrit dessus.
Le problème c'est que si je relance le calcul, je ne suis plus sur le même fichier excel actif.
Du coup j'avais écrit un truc du genre
NomduFichier = ActiveWorkbook.Name 'sauf que lorsque j'ai changé de fichier, le nom change
J'ai pensé à ça
1 2 3 4
| Sub Nfichier ()
Dim NomduFichier as String
NomduFichier = ThisWorkbook.Name 'ici j'ai l'impression que le nom ne change pas.
End Sub |
Ceci est dans un module
Ensuite dans le UserForm au clique d'un bouton cela effectue la création du 2ème fichier excel, etc et à la fin je veux revenir à mon premier fichier donc j'écris
1 2
| Call Nfichier
WorkBook(Nomdufichier).Activate |
La macro s'est bien exécuter mais à la fin j'ai une erreur sur cette dernière ligne.
Si savez d'où viennent mais erreur, j'attends vos suggestions.
Merci
Partager