Supprimer tous les boutons d'un chiffrier

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Re : Supprimer tous les boutons d'un chiffrier

Bonsoir siocnarf,

Tout ce que je peux faire pour vous, c'est cette macro (à placer dans un Module) :

Code:
Sub SupprimeObjets()
Dim nom$
Application.ScreenUpdating = False
Application.DisplayAlerts = False
nom = ActiveSheet.Name
ActiveSheet.DrawingObjects.Delete
Sheets.Add
Sheets(nom).Cells.Copy [A1]
Sheets(nom).Delete
ActiveSheet.Name = nom
End Sub

Elle supprime tous les objets de la feuille active et toutes les macros dans cette feuille (et pas celles placées dans des Modules).

Pour faire mieux, c'est beaucoup plus compliqué, je passe la main.

A+
 
Re : Supprimer tous les boutons d'un chiffrier

Bonjour,

Suite à l'exécution de votre code mon code retourne une erreur d'exécution 9 l'indice n'appartient pas à la sélection.
En examinant dans Microsoft Visual Basic, je constate que dans Microsoft Excel Objects, il n'y a plus feuil1 dans les VBA Project. En fait feuil4(feuil1) Comment on peut le recréer avec feuil1(feuil1)?



Sub AjoutCommandButton_Feuille()


Dim CaseBouton As String
Dim ModificateurHauteurDeLigne As Integer
Dim ModificateurLargeurDeColonne As Integer
Dim ColonneBouton As String
Dim Obj As OLEObject
Dim laMacro As String
Dim x As Integer

ModificateurHauteurDeLigne = 1.5
ModificateurLargeurDeColonneBouton = 31
ColonneBouton = "D"
W = 140
H = 0
L = 0
T = 0

V_StrChiffrierDeBaseFeuille1 = "Serveurs"

CaseBouton = Cells(1, 4).Select

H = ActiveCell.Height * ModificateurHauteurDeLigne
L = ActiveCell.Left
T = ActiveCell.Top


'Ajout CommandButton dans la feuille
Set Obj = ActiveWorkbook.ActiveSheet.OLEObjects.Add("Forms.CommandButton.1")
With Obj
.Left = L 'position horizontale
.Top = T 'position verticale
.Width = W 'largeur
.Height = H 'hauteur
.Object.BackColor = RGB(235, 235, 200) 'Couleur de fond
.Object.Caption = "qpw502.prodna.mrqech"
End With

'Paramètres pour la création de la macro:
laMacro = "Sub CommandButton1_Click()" & vbCrLf
laMacro = laMacro & "Call Tester" & vbCrLf
laMacro = laMacro & "End Sub"

'Si la première feuille s'appelle feuil1 alors on lui donne un bon nom
'Si la feuille s'appelle autrement que Feuil1 alors on a une erreur 9...
If FeuilleExiste("Serveurs") Then
Sheets("Serveurs").Select
Sheets("Serveurs").Name = "Feuil1"
End If

With ThisWorkbook.VBProject.VBComponents(ActiveSheet.Name).CodeModule
x = .CountOfLines + 1
.InsertLines x, laMacro
End With

If FeuilleExiste("Feuil1") Then
Sheets("Feuil1").Select
Sheets("Feuil1").Name = V_StrChiffrierDeBaseFeuille1
End If

Columns(ColonneBouton & ":" & ColonneBouton).ColumnWidth = 31
Rows("1:1").RowHeight = H
Merci
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
222
Réponses
10
Affichages
666
Réponses
17
Affichages
787
Retour