Bonjour à tous,
J'ai un petit soucis pour la création de macro...
Je dois, à partir d'un fichier excel, créer un nouveau classeur en fonction du nom de la personne (un classeur par nom de personne).
Dans ce classeur, il faut que j'ajoute un "header" avec toujours les mêmes noms de colonnes. Par exemple pour la première colonne : colonne1
Je dois ensuite copier des données du classeur de base ou est enregistré ma macro à ces classeurs.
Pour le moment, j'en suis à la première étape : création d'un fichier : c'est ok grâce à ce code trouvé sur internet.
Je n'ai pas encore pu faire le tri en fonction des noms de la personne mais je suppose que ça sera quelque chose comme ça ?
Donc voici ce code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 for each nompersonne --- code ci dessous --- end foreach
Mon problème est pour la création du header. J'ai ajouté une ligne
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
27
28
29
30
31 Sub AddNewWorkbook() Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet OutputRow = 1 InputRow = 2 'On créer l'objet Excel Set xlApp = CreateObject("Excel.Application") 'On défini le nombre d'onglets (ici 1) xlApp.SheetsInNewWorkbook = 1 'On ajoute un classeur Set xlBook = xlApp.Workbooks.Add 'On donne un nom au classeur xlBook.SaveAs ("C:\Desktop\test_macro\customer-1.xls") 'On rend le classeur visible xlApp.Visible = True 'On créer l'objet onglet dans le nouveau classeur créé Set xlSheet = xlBook.Worksheets(1) 'On affecte un nom aux l'onglets xlSheet.Name = "export-YREB" 'ajout des noms de ligne Sheet1.Activate 'affichage lignes des noms des champs des onglets Sheet1.Cells(1, 3) = "colonne1" 'On ferme l'application xlApp.Quit End Sub
En pensant que ça pourrait fonctionner mais non...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 'affichage lignes des noms des champs des onglets Sheet1.Cells(1, 3) = "colonne1"
Deuxième question, comme "écrire" le fait de copier une donnée du classeur A, vers le classeur B?
Si quelqu'un peut m'aider...
Merci d'avance!
Partager