Bonjour a tous,
Je suis debutant en Macro Excel / VGA, et j'ai un petit probleme. J'ai cherche sur Internet mais je n'ai pas trouve de solution, donc si quelqu'un pouvait m'aider, j'en serais tres heureux...
Je cherche a copier des donnees d'un fichier excel (appelons-le "source") a un autre (appelons-le "results") en utilisant une macro. La macro est situee sur une worksheet ("macro") du fichier "results" mais qui est differente de la worksheet ("data") ou il faut copier les resultats (pas important ?...).
La ou ca se complique, c'est que la macro demande a l'utilisateur (qui peut etre n'importe qui, utilisant n'importe quel ordinateur) de choisir le fichier source par lui-meme dans un dossier quelconque (ou sur son bureau) par une boite de dialogue. Donc on ne peut pas programmer la macro avec un adresse fixe pour le fichier source. Ensuite, quand le fichier est choisit, le copier-coller entre "source" et "results" s'effectue automatiquement et c'est fini.
Pour appeler le fichier "source", je pense utiliser :
Dim source As Variant
source = Application.GetOpenFilename("Please open the file", MultiSelect:=False)
Ensuite j'ai vu sur internet qu'il faudrait utiliser une commande utilisant "Workbooks.Open data", mais je ne sais pas comment l'utiliser. Et il faudrait ensuite activer la worksheet sur laquelle ou fait les manipulations avec une autre commande ?
Au debut de la macro je parametre une constante pour la worsheet ("data") ou sera copiee les donnees :
Const RD As String = "Data"
Pour ensuite utiliser definir ou je voudrais copier les donnees, dans quelles cellules etc... :
Worksheets(RD).Cells(1, 1).Value = et c'est la que je ne sais pas quoi ecrire.
Ou bien je dois utiliser les commandes .Copy .Select et .Paste comme je l'ai vu quelque part sur un forum ?
Desole pour le long message ! Et merci par avance pour votre aide.
ps : J'utilise Excel en Anglais...
Je suis debutant en Macro Excel / VGA, et j'ai un petit probleme. J'ai cherche sur Internet mais je n'ai pas trouve de solution, donc si quelqu'un pouvait m'aider, j'en serais tres heureux...
Je cherche a copier des donnees d'un fichier excel (appelons-le "source") a un autre (appelons-le "results") en utilisant une macro. La macro est situee sur une worksheet ("macro") du fichier "results" mais qui est differente de la worksheet ("data") ou il faut copier les resultats (pas important ?...).
La ou ca se complique, c'est que la macro demande a l'utilisateur (qui peut etre n'importe qui, utilisant n'importe quel ordinateur) de choisir le fichier source par lui-meme dans un dossier quelconque (ou sur son bureau) par une boite de dialogue. Donc on ne peut pas programmer la macro avec un adresse fixe pour le fichier source. Ensuite, quand le fichier est choisit, le copier-coller entre "source" et "results" s'effectue automatiquement et c'est fini.
Pour appeler le fichier "source", je pense utiliser :
Dim source As Variant
source = Application.GetOpenFilename("Please open the file", MultiSelect:=False)
Ensuite j'ai vu sur internet qu'il faudrait utiliser une commande utilisant "Workbooks.Open data", mais je ne sais pas comment l'utiliser. Et il faudrait ensuite activer la worksheet sur laquelle ou fait les manipulations avec une autre commande ?
Au debut de la macro je parametre une constante pour la worsheet ("data") ou sera copiee les donnees :
Const RD As String = "Data"
Pour ensuite utiliser definir ou je voudrais copier les donnees, dans quelles cellules etc... :
Worksheets(RD).Cells(1, 1).Value = et c'est la que je ne sais pas quoi ecrire.
Ou bien je dois utiliser les commandes .Copy .Select et .Paste comme je l'ai vu quelque part sur un forum ?
Desole pour le long message ! Et merci par avance pour votre aide.
ps : J'utilise Excel en Anglais...