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 32 33 34
|
Sub decla_var() ' macro pour demander le workbook, la sheet_source et destination, ainsi que les colonnes que la personne souhaite copier
wb = InputBox("Sur quel fichier voulez-vous travaillez ? :")
sh_s = InputBox("quelle est la feuille source ? :")
sh_d = InputBox("quelle est la feuille destination ? :")
choix_colonnes = InputBox("quelles colonnes souhaitez-vous copier (séparer chaque colonne par ", "une virgule) ? :")
End Sub
Sub copie_colonnes()
Dim col ' col : colonne source
Dim i As Integer
Workbooks(wb).Activate ' on se place sur le fichier concerné
Sheets.Add after:=Sheets(Sheets.Count) ' ajouter une nouvelle feuille à la fin
ActiveSheet.Name = sh_d ' on renomme la nouvelle feuille avec la valeur saisie précédemment
Sheets(sh_s).Select ' on se place sur la feuille source
i = 1
For Each col In Array(choix_colonnes)
Columns(col).Copy Destination:=Sheets(sh_d).Cells(1, i) ' on copie la colonne vers la nouvelle feuille
i = i + 1 ' on incrémente i pour que le prochain copier soit fait sur la colonne suivante
Next
Do While (Workbooks(wb).Sheets(sh_d).Range("A1") = "") ' tant que A1 est vide, on appel la macro de suppr de ligne
Call del_line(wb, sh_d, "1") ' appel de la macro suppr de ligne
Loop
End Sub
Sub test_temp() ' la macro pour mon test temporaire
Call decla_var
Call copie_colonnes
End Sub |
Partager