Bonjour le forum,
Après avoir fait des recherches dans le forum, j'ai trouvé cette discussion :
J'aimerais comprendre et donc essayer le code proposé par kiki, mais j'ai une erreur de compilation.
Je mets le code :
Du coup, je n'ai pas tout à fait saisi ce que ses macros font exactement.
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 Option Explicit '====================================================================================== ' Cocher Outils | Reférence Microsoft Visual Basic for Applications Extensibility 5.3 '====================================================================================== ' Détruit Macro nommée Essai dans module nommé ModuleA de ThisWorkbook Sub DelMacro() Dim Debut As Long Dim NbLignes As Long Dim VBCodeMod As CodeModule On Error GoTo Erreurs Set VBCodeMod = ThisWorkbook.VBProject.VBComponents("ModuleA").CodeModule With VBCodeMod Debut = .ProcStartLine("Essai", vbext_pk_Proc) NbLignes = .ProcCountLines("Essai", vbext_pk_Proc) .DeleteLines Debut, NbLignes End With Exit Sub Erreurs: Debug.Print Err.Number & " " & Err.Description End Sub ' Crée la Macro nommée Essai dans module nommé ModuleA dans ThisWorkbook Sub CreerMacro() Dim VBCodeMod As CodeModule Dim x As Long Set VBCodeMod = ThisWorkbook.VBProject.VBComponents("ModuleA").CodeModule With VBCodeMod x = .CountOfLines + 1 .InsertLines x, "" .InsertLines x + 1, "Sub Essai()" .InsertLines x + 2, " Msgbox ""Nouvelle Procedure""" .InsertLines x + 3, "End Sub" End With End Sub ' Alternative ' Crée la Macro nommée Essai dans module nommé ModuleA de ThisWorkbook Sub CreerMacro2() Dim VBCodeMod As CodeModule Dim x As Long, str As String str = "" Set VBCodeMod = ThisWorkbook.VBProject.VBComponents("ModuleA").CodeModule With VBCodeMod str = "Sub Essai()" & vbCrLf str = str & " Msgbox ""Nouvelle Procedure""" & vbCrLf str = str & "End Sub" & vbCrLf x = .CountOfLines + 1 .InsertLines x, str End With End Sub
Si quelqu'un peut m'éclairer un peut.
Ce que je cherche à faire, moi, c'est de modifier le texte "aaa" par le texte "bbb" dans le code VBA.
Merci de votre aide
Partager