Barre des menus / Outils / Macros / Sécurité / onglet Sources Fiables /
coche les 2 options dans le bas de la fenêtre
Barre des menus / Outils / Macros / Sécurité / onglet Sources Fiables /
coche les 2 options dans le bas de la fenêtre
Barre des menus / Outils / Macros / Sécurité / onglet Sources Fiables /
coche les 2 options dans le bas de la fenêtre
Barre des menus / Outils / Macros / Sécurité / onglet Sources Fiables /
coche les 2 options dans le bas de la fenêtre
Barre des menus / Outils / Macros / Sécurité / onglet Sources Fiables /
coche les 2 options dans le bas de la fenêtre
Barre des menus / Outils / Macros / Sécurité / onglet Sources Fiables /
coche les 2 options dans le bas de la fenêtre
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
Bonjour Jean-Claude,
A ) La méthode "Remove" demande que nous lui passions un OBJET (module, userform) afin qu'elle puisse le supprimer.
- Ajoute la bibliothèque suivante à ton projet : "Microsoft Visual Basic For Applications Extensibility 5.3"
- À partir de la barre d'outils - Un clic sur l'explorateur d'objet
- Saisir dans la boîte de saisie "VBComponent"
- Dans la fenêtre du bas , section de gauche ayant l'étiquette "Classes" , recherche et clique sur l'item
"VBComponent" et observe à droite les méthodes et les propriétés de cette classe d'objet. La propriété "objet" n'est pas
défini. Si elle l'avait été, on aurait pu alors écrire :
ActiveWorkbook.VBProject.VBComponents.Remove _
ActiveWorkbook.VBProject.VBComponents(tabVbEàEffacer(i)).Object
Et cette dernière ligne de code aurait très bien fonctionné.
Comme la propriété objet n'est pas définie, j'ai utilisé une variable de type objet pour "personnaliser" chacun à tour
de rôle les objets à supprimer dans ton projet.
Set Comp = .Item(tabVbEàEffacer(i))
Je peux donc supprimer cet objet à la ligne suivante :
.remove Comp
Un autre exemple : Suppose que tu veuilles supprimer un bouton de commande issu de la barre d'outils "Contrôle"
Tu peux écrire comme ligne de commande :
Shapes("CommandButton1").Delete
Refais dans l'explorateur le même type d'exercice en saissisant "Shape" et tu va voir que la méthode "Delete" est bien
définie.
Et observe la différence de syntaxe, dans le deuxième exemple, la méthode delete est appliqué à un objet tandis que la
méthode "Remove" demande que tu lui passe un objet et rien d'autre.
J'espère que c'est un peu plus clair !!!!!!!!!!!!!!!!!
B ) J'ai apporté un correctif à ta gestion d'erreur dans la procédure
'----------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
codeerreur = Err & " - " & Err.Description & _
vbCrLf & "Ce composant """ & tabVbEàEffacer(i) & """ n'existe pas."
MsgBox codeerreur
Err = 0: i = i + 1
Resume
End Sub
'----------------------------------
Salutations!
"Jean-Claude" a écrit dans le message de news:ci4p2m$m5l$
Bonjour et merci
Pourquoi ça marche avec ce code ?
JcEn supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
Bonjour Jean-Claude,
A ) La méthode "Remove" demande que nous lui passions un OBJET (module, userform) afin qu'elle puisse le supprimer.
- Ajoute la bibliothèque suivante à ton projet : "Microsoft Visual Basic For Applications Extensibility 5.3"
- À partir de la barre d'outils - Un clic sur l'explorateur d'objet
- Saisir dans la boîte de saisie "VBComponent"
- Dans la fenêtre du bas , section de gauche ayant l'étiquette "Classes" , recherche et clique sur l'item
"VBComponent" et observe à droite les méthodes et les propriétés de cette classe d'objet. La propriété "objet" n'est pas
défini. Si elle l'avait été, on aurait pu alors écrire :
ActiveWorkbook.VBProject.VBComponents.Remove _
ActiveWorkbook.VBProject.VBComponents(tabVbEàEffacer(i)).Object
Et cette dernière ligne de code aurait très bien fonctionné.
Comme la propriété objet n'est pas définie, j'ai utilisé une variable de type objet pour "personnaliser" chacun à tour
de rôle les objets à supprimer dans ton projet.
Set Comp = .Item(tabVbEàEffacer(i))
Je peux donc supprimer cet objet à la ligne suivante :
.remove Comp
Un autre exemple : Suppose que tu veuilles supprimer un bouton de commande issu de la barre d'outils "Contrôle"
Tu peux écrire comme ligne de commande :
Shapes("CommandButton1").Delete
Refais dans l'explorateur le même type d'exercice en saissisant "Shape" et tu va voir que la méthode "Delete" est bien
définie.
Et observe la différence de syntaxe, dans le deuxième exemple, la méthode delete est appliqué à un objet tandis que la
méthode "Remove" demande que tu lui passe un objet et rien d'autre.
J'espère que c'est un peu plus clair !!!!!!!!!!!!!!!!!
B ) J'ai apporté un correctif à ta gestion d'erreur dans la procédure
'----------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
codeerreur = Err & " - " & Err.Description & _
vbCrLf & "Ce composant """ & tabVbEàEffacer(i) & """ n'existe pas."
MsgBox codeerreur
Err = 0: i = i + 1
Resume
End Sub
'----------------------------------
Salutations!
"Jean-Claude" <jcvalProut@wanadoo.fr> a écrit dans le message de news:ci4p2m$m5l$1@news-reader5.wanadoo.fr...
Bonjour et merci
Pourquoi ça marche avec ce code ?
Jc
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
Bonjour Jean-Claude,
A ) La méthode "Remove" demande que nous lui passions un OBJET (module, userform) afin qu'elle puisse le supprimer.
- Ajoute la bibliothèque suivante à ton projet : "Microsoft Visual Basic For Applications Extensibility 5.3"
- À partir de la barre d'outils - Un clic sur l'explorateur d'objet
- Saisir dans la boîte de saisie "VBComponent"
- Dans la fenêtre du bas , section de gauche ayant l'étiquette "Classes" , recherche et clique sur l'item
"VBComponent" et observe à droite les méthodes et les propriétés de cette classe d'objet. La propriété "objet" n'est pas
défini. Si elle l'avait été, on aurait pu alors écrire :
ActiveWorkbook.VBProject.VBComponents.Remove _
ActiveWorkbook.VBProject.VBComponents(tabVbEàEffacer(i)).Object
Et cette dernière ligne de code aurait très bien fonctionné.
Comme la propriété objet n'est pas définie, j'ai utilisé une variable de type objet pour "personnaliser" chacun à tour
de rôle les objets à supprimer dans ton projet.
Set Comp = .Item(tabVbEàEffacer(i))
Je peux donc supprimer cet objet à la ligne suivante :
.remove Comp
Un autre exemple : Suppose que tu veuilles supprimer un bouton de commande issu de la barre d'outils "Contrôle"
Tu peux écrire comme ligne de commande :
Shapes("CommandButton1").Delete
Refais dans l'explorateur le même type d'exercice en saissisant "Shape" et tu va voir que la méthode "Delete" est bien
définie.
Et observe la différence de syntaxe, dans le deuxième exemple, la méthode delete est appliqué à un objet tandis que la
méthode "Remove" demande que tu lui passe un objet et rien d'autre.
J'espère que c'est un peu plus clair !!!!!!!!!!!!!!!!!
B ) J'ai apporté un correctif à ta gestion d'erreur dans la procédure
'----------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
codeerreur = Err & " - " & Err.Description & _
vbCrLf & "Ce composant """ & tabVbEàEffacer(i) & """ n'existe pas."
MsgBox codeerreur
Err = 0: i = i + 1
Resume
End Sub
'----------------------------------
Salutations!
"Jean-Claude" a écrit dans le message de news:ci4p2m$m5l$
Bonjour et merci
Pourquoi ça marche avec ce code ?
JcEn supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
Bonjour Jean-Claude,
A ) La méthode "Remove" demande que nous lui passions un OBJET (module, userform) afin qu'elle puisse le supprimer.
- Ajoute la bibliothèque suivante à ton projet : "Microsoft Visual Basic For Applications Extensibility 5.3"
- À partir de la barre d'outils - Un clic sur l'explorateur d'objet
- Saisir dans la boîte de saisie "VBComponent"
- Dans la fenêtre du bas , section de gauche ayant l'étiquette "Classes" , recherche et clique sur l'item
"VBComponent" et observe à droite les méthodes et les propriétés de cette classe d'objet. La propriété "objet" n'est
pas
défini. Si elle l'avait été, on aurait pu alors écrire :
ActiveWorkbook.VBProject.VBComponents.Remove _
ActiveWorkbook.VBProject.VBComponents(tabVbEàEffacer(i)).Object
Et cette dernière ligne de code aurait très bien fonctionné.
Comme la propriété objet n'est pas définie, j'ai utilisé une variable de type objet pour "personnaliser" chacun à tour
de rôle les objets à supprimer dans ton projet.
Set Comp = .Item(tabVbEàEffacer(i))
Je peux donc supprimer cet objet à la ligne suivante :
.remove Comp
Un autre exemple : Suppose que tu veuilles supprimer un bouton de commande issu de la barre d'outils "Contrôle"
Tu peux écrire comme ligne de commande :
Shapes("CommandButton1").Delete
Refais dans l'explorateur le même type d'exercice en saissisant "Shape" et tu va voir que la méthode "Delete" est bien
définie.
Et observe la différence de syntaxe, dans le deuxième exemple, la méthode delete est appliqué à un objet tandis que la
méthode "Remove" demande que tu lui passe un objet et rien d'autre.
J'espère que c'est un peu plus clair !!!!!!!!!!!!!!!!!
B ) J'ai apporté un correctif à ta gestion d'erreur dans la procédure
'----------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
codeerreur = Err & " - " & Err.Description & _
vbCrLf & "Ce composant """ & tabVbEàEffacer(i) & """ n'existe pas."
MsgBox codeerreur
Err = 0: i = i + 1
Resume
End Sub
'----------------------------------
Salutations!
"Jean-Claude" a écrit dans le message de news:ci4p2m$m5l$
Bonjour et merci
Pourquoi ça marche avec ce code ?
JcEn supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
Bonjour Jean-Claude,
A ) La méthode "Remove" demande que nous lui passions un OBJET (module, userform) afin qu'elle puisse le supprimer.
- Ajoute la bibliothèque suivante à ton projet : "Microsoft Visual Basic For Applications Extensibility 5.3"
- À partir de la barre d'outils - Un clic sur l'explorateur d'objet
- Saisir dans la boîte de saisie "VBComponent"
- Dans la fenêtre du bas , section de gauche ayant l'étiquette "Classes" , recherche et clique sur l'item
"VBComponent" et observe à droite les méthodes et les propriétés de cette classe d'objet. La propriété "objet" n'est
pas
défini. Si elle l'avait été, on aurait pu alors écrire :
ActiveWorkbook.VBProject.VBComponents.Remove _
ActiveWorkbook.VBProject.VBComponents(tabVbEàEffacer(i)).Object
Et cette dernière ligne de code aurait très bien fonctionné.
Comme la propriété objet n'est pas définie, j'ai utilisé une variable de type objet pour "personnaliser" chacun à tour
de rôle les objets à supprimer dans ton projet.
Set Comp = .Item(tabVbEàEffacer(i))
Je peux donc supprimer cet objet à la ligne suivante :
.remove Comp
Un autre exemple : Suppose que tu veuilles supprimer un bouton de commande issu de la barre d'outils "Contrôle"
Tu peux écrire comme ligne de commande :
Shapes("CommandButton1").Delete
Refais dans l'explorateur le même type d'exercice en saissisant "Shape" et tu va voir que la méthode "Delete" est bien
définie.
Et observe la différence de syntaxe, dans le deuxième exemple, la méthode delete est appliqué à un objet tandis que la
méthode "Remove" demande que tu lui passe un objet et rien d'autre.
J'espère que c'est un peu plus clair !!!!!!!!!!!!!!!!!
B ) J'ai apporté un correctif à ta gestion d'erreur dans la procédure
'----------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
codeerreur = Err & " - " & Err.Description & _
vbCrLf & "Ce composant """ & tabVbEàEffacer(i) & """ n'existe pas."
MsgBox codeerreur
Err = 0: i = i + 1
Resume
End Sub
'----------------------------------
Salutations!
"Jean-Claude" <jcvalProut@wanadoo.fr> a écrit dans le message de news:ci4p2m$m5l$1@news-reader5.wanadoo.fr...
Bonjour et merci
Pourquoi ça marche avec ce code ?
Jc
En supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub
Bonjour Jean-Claude,
A ) La méthode "Remove" demande que nous lui passions un OBJET (module, userform) afin qu'elle puisse le supprimer.
- Ajoute la bibliothèque suivante à ton projet : "Microsoft Visual Basic For Applications Extensibility 5.3"
- À partir de la barre d'outils - Un clic sur l'explorateur d'objet
- Saisir dans la boîte de saisie "VBComponent"
- Dans la fenêtre du bas , section de gauche ayant l'étiquette "Classes" , recherche et clique sur l'item
"VBComponent" et observe à droite les méthodes et les propriétés de cette classe d'objet. La propriété "objet" n'est
pas
défini. Si elle l'avait été, on aurait pu alors écrire :
ActiveWorkbook.VBProject.VBComponents.Remove _
ActiveWorkbook.VBProject.VBComponents(tabVbEàEffacer(i)).Object
Et cette dernière ligne de code aurait très bien fonctionné.
Comme la propriété objet n'est pas définie, j'ai utilisé une variable de type objet pour "personnaliser" chacun à tour
de rôle les objets à supprimer dans ton projet.
Set Comp = .Item(tabVbEàEffacer(i))
Je peux donc supprimer cet objet à la ligne suivante :
.remove Comp
Un autre exemple : Suppose que tu veuilles supprimer un bouton de commande issu de la barre d'outils "Contrôle"
Tu peux écrire comme ligne de commande :
Shapes("CommandButton1").Delete
Refais dans l'explorateur le même type d'exercice en saissisant "Shape" et tu va voir que la méthode "Delete" est bien
définie.
Et observe la différence de syntaxe, dans le deuxième exemple, la méthode delete est appliqué à un objet tandis que la
méthode "Remove" demande que tu lui passe un objet et rien d'autre.
J'espère que c'est un peu plus clair !!!!!!!!!!!!!!!!!
B ) J'ai apporté un correctif à ta gestion d'erreur dans la procédure
'----------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
codeerreur = Err & " - " & Err.Description & _
vbCrLf & "Ce composant """ & tabVbEàEffacer(i) & """ n'existe pas."
MsgBox codeerreur
Err = 0: i = i + 1
Resume
End Sub
'----------------------------------
Salutations!
"Jean-Claude" a écrit dans le message de news:ci4p2m$m5l$
Bonjour et merci
Pourquoi ça marche avec ce code ?
JcEn supposant que les "BdD" représentent un module standard,
de classe ou un userform, voici ce que pourrait avoir l'air ta macro.
'-------------------------------
Sub SupprimComposantVba()
Dim Comp As Object
Dim tabVbEàEffacer()
tabVbEàEffacer = Array("BdD1", "BdD2", "BdD3", "BdD4", "BdD5")
On Error GoTo TraitementErreur
For i = 0 To UBound(tabVbEàEffacer)
With ThisWorkbook.VBProject.VBComponents
Set Comp = .Item(tabVbEàEffacer(i))
.Remove Comp
End With
Next i
Exit Sub
TraitementErreur:
CodeErreur = Err & " - " & Err.Description
End Sub