Hello !!
Je suis débutant en VBA et j'ai testé ma première macro qui à l'air de fonctionner mais qui est loin d'être parfaite :
L'idée est d'aller chercher un fichier de prix dans un fichier que l'utilisateur sélectionne, de copier l'onglet "GlobalMeet tariff sheet" dans l'onglet "GlobalMeet tariff sheet" (même nom) de l'outil (qui s'appelle "Audio Conferencing cost calculator").
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 Sub Upload() Dim chemin As String chemin = Application.GetOpenFilename 'ouvrir la fenêtre parcourir et copie le chemin du fichier selectionné dans chemin Workbooks.Open Filename:=chemin 'ouvre le fichier de pricing sélectioné Sheets("GlobalMeet tariff sheet").Select 'selectionne l'onglet de la pricing list Range("A1:L700").Select 'selectionne le tableau Range("L700").Activate Selection.Copy 'copie le tableau de pricing Windows("Audio Conferencing cost calculator.xlsm").Activate 'selectionne le fichier de simulation déjà ouvert Sheets("GlobalMeet tariff sheet").Select 'sélectionne l'onglet où le pricing doit être copié Range("A1").Select ActiveSheet.Paste 'colle le tableau de pricing Workbooks.Open Filename:=chemin 'sélectionne le fichier de pricing ouvert ActiveWorkbook.Close 'puis le ferme Windows("Audio Conferencing cost calculator.xlsm").Activate 'retour au calculateur Sheets("Cost calculator").Select 'sélectionne le premier onglet Application.CutCopyMode = False 'effacer le contenu le pressepapier MsgBox ("Thank you, the GlobalMeet tariff sheet has been uploaded.") End Sub
J'ai deux problèmes :
1) lorsque je clique sur le bouton qui lance cette procédure je dois sélectionner un fichier et si je clique sur Fermer ou Annuler, un message d'erreur m'est renvoyé, car la procédure ne prends pas en compte ce cas (apparemment le fichier s'appelle False.xlsx dans ce cas..)
2) Si je veux changer le nom de mon outil ("Audio Conferencing cost calculator"), évidemment le nom ne change pas dans la procédure et mon outil ne fonctionne plus. Je n'arrive pas à appliquer un nom variable...
Merci de m'aider qi vous avez des suggestions !! )
Antoine
Partager