Bonjour,
j'ai modifié et adapté cette macro que m'a filé KERGRESSE.
je veux qu'elle me copie la dernière ligne de ma feuille "suivis etudes" et la colle dans la feuille du client concerné. cette macro(en dessous) me copie bien la ligne mais me la colle souvent à la feuille active.
j'ai essayépour activer la feuille de destination mais il me fait erreur à deboger.
Code : Sélectionner tout - Visualiser dans une fenêtre à part shNouveau.activate
je vous remercie de bien vouloir m'aider svp
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 Sub CreationCCC() Dim ShClients As Worksheet Dim shNouveau As Worksheet Dim ShModele As Worksheet Dim CelluleClient As Range Dim NomNouvelleFeuille As String Dim DerLig As Long Dim DerniereColonneACopier As Long Dim derl As Integer Dim worksheetIsExist As Boolean ' Identification de la feuille Clients Set ShClients = Sheets("suivis etudes") DerLig = ShClients.Cells(ShClients.Rows.Count, 1).End(xlUp).Row DerniereColonneACopier = 22 Set CelluleClient = ShClients.Cells(DerLig, 11) '*localisation For Each shNouveau In Worksheets If shNouveau.Name = CelluleClient Then worksheetIsExist = True End If Next shNouveau If worksheetIsExist = True Then GoTo suivant If worksheetIsExist = False Then Set ShModele = Sheets("Modèle") ' Création d'une nouvelle feuille client à partir du modèle ShModele.Copy after:=Sheets(Sheets.Count) ' On place la nouvelle feuille en dernier ' Création d'une nouvelle feuille client Set shNouveau = ActiveSheet shNouveau.Name = CelluleClient suivant: ' Copie des informations de la feuille clients sur la nouvelle feuille client Range(ShClients.Cells(CelluleClient.Row, 1), ShClients.Cells(CelluleClient.Row, DerniereColonneACopier)).Copy derl = Range("A65536").End(xlUp).Row + 1 'shNouveau.Activate Set shNouveau = ActiveSheet shNouveau.Cells(derl, 1).Select shNouveau.Paste End If Set ShModele = Nothing Set CelluleClient = Nothing Set shNouveau = Nothing Set ShClients = Nothing End Sub
Partager