bonjour,
Je souhaite intégrer ma macro dans le classeur 2 que je lancerais avec un bouton.
Est-ce bien ThisWorbook que je dois utiliser?
merci d'avance pour votre retour
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75 Sub essai() ' ' essai Macro ' ' Keyboard Shortcut: ' ' Dim wkbSource As Workbook, wkbdestination As Workbook Dim wbExcel As Excel.Workbook 'Classeur Excel Dim NouvelleFeuille As Worksheet Dim Fichier As String, Chemin As String Dim Plage As Variant, Plage1 As Variant Dim Ligne As Long Dim C As Range, Plg As Range Dim i As Integer ' ' ' ouverture fichier ' Chemin = "G:\Users\Documents\" ChDrive "G" ChDir Chemin Fichier = Application.GetOpenFilename() 'on peut ajouter un filtre pour n'avoir que les types de fichiers voulus If Fichier = "Faux" Then Exit Sub Set wkbSource = Workbooks.Open(Fichier) ' 'Positionner le pointeur sur la première cellule vide ' Range("B1").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Range("B1").Select LIGNEFIN = ActiveCell(1, 0).Address() FIN = Range(LIGNEFIN).Row ' ' Selectionner la zone ' LIGNEFIN = ActiveCell.Row Range("A1" & ":K" & LIGNEFIN).Select ' ' ouverture fichier destination avec macro ancienne version ' 'Chemin = "G:\Users\Documents\" ' ChDrive "G" ' ChDir Chemin ' Fichier2 = Application.GetOpenFilename() ' If Fichier2 = "Faux" Then Exit Sub 'Set wkbdestination = Workbooks.Open(Fichier2) ' 'ouverture fichier destination avec macro integree dans le classeur 2 ' ThisWorkbook.Activate Set wkbdestination = ThisWorkbooks ' 'Positionner le pointeur sur la première cellule vide ' wkbdestination.Worksheets("Donnees").Activate Range("B1").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Range("B1").Select LIGNEFIN2 = ActiveCell(1, 0).Address() FIN = Range(LIGNEFIN2).Row ' ' Effacer contenu cellules sur plage definie ' LIGNEFIN2 = ActiveCell.Row Sheets("Donnees").Range("A1" & ":N" & LIGNEFIN2).ClearContents ' 'Coller ' wkbSource.Sheets("miseajour").Range("A1" & ":N" & LIGNEFIN).Copy Destination:=wkbdestination.Sheets("Donnees").Range("B1") '
Partager