• Initiateur de la discussion Initiateur de la discussion ymrabet
  • Date de début Date de début

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 !

ymrabet

XLDnaute Nouveau
Bonsoir,
J’ai besoin de votre aide pour un projet que je dois développer sous Excel :
J’ai crée dans une feuille des formes auxquelles j’ai associés des macros qui réalise plusieurs choses…
Parmi ces boutons il y a un qui déclenche un chronomètre…
Ce que je souhaite faire, en même temps que déclencher le chrono ouvrir dans une fenêtre une vidéo.avi et associer à d’autres boutons les fonctions pause, arrêt
En faite j’arrive a faire ca mais via un userform et un objet wmp… mais moi je veux l’intégrer a la même feuille excel…
J’espère que j’ai été claire et j’attends avec impatience votre aide…
Merci
 
Re : Excel et VB

Bonsoir,
désolé mais je ne peux tester ton fichier car il comporte un ou des éléments non compatibles avec ma version d'Excel (2010 version 64 bits). Je verrai si je ne peux pas le tester sur un autre ordinateur équipé d'une version 32 bits.
A+
 
Re : Excel et VB

Bonsoir ymrabet, david84, le forum,

je souhaite automatiquement créer dans le UserForm1 Frame « Codage par Action » des commandbutton

Voir si le fichier joint se rapproche de ce que vous souhaitez. Un clique sur un bouton affiche son nom et le texte du bouton.
 

Pièces jointes

Re : Excel et VB

Re bonjour,
Petite question: dans la module de classe: class_Cmdacteur comment faire pour utiliser une valeur afficher dans un label.
je m'explique: qd je dois cliquer sur le boutton crée par l'evenement je souhaite ( a la place de: MsgBox "Nom: " & CmdActeurEvents.Name & vbLf & "Caption: " & CmdActeurEvents.Caption) recopier une valeur située dans un Label1( situé dans le code de l'Userform) dans un tableau par exemple... j'utilise le code suivant:
UserForm2.Spreadsheet2.Cells(2, 7) = Label1 mais j'ai une erreur, il ne reconnait pas le Label1.
puis je avoir votre aide? merci
 
Re : Excel et VB

Bonjour A tous,

''mapomme''....Peux tu stp m'indiquer le code à utiliser pour supprimer un boutton créer dynamiquement dans l'exemple de ton fichier.

Vite fait un essai dans le fichier joint. Attention! Si on rajoute des boutons par la suite, il faut revoir le codage de l'ajout de nouveaux boutons, leurs positionnements ainsi que la gestion du tableau GroupcmdActeur() selon le résultat qu'on désire obtenir.

Le code du bouton "Supprimer un CmdActeur" sur UserForm1:
VB:
Private Sub CommandButton2_Click()
Dim Rep
On Error GoTo CommandButton2_Err1
  Rep = InputBox("Quel numéro de bouton voulez-vous supprimer ?")
  Me.Frame1.Controls.Remove GroupcmdActeur(CInt(Rep)).CmdActeurEvents.Name
  Exit Sub

CommandButton2_Err1:
  MsgBox Rep & "ne correspond à aucun bouton existant !"
End Sub
 

Pièces jointes

Re : Excel et VB

merci. effectivement ca marche dans cet exemle mais ca ne marche pas pour moi car ma problemtique est la suivante:
j'ai une listbox1 avec des chiffres 1,2,3...., un boutton ajouter.. qd je selectione un chiffre de la listbox1 et je clique sur le boutton ajouter, il cree un boutton N°1 conformement a ta procedure( un peu modifie pour ne plus incrementer les noms a chaque clique, donc la taille du tableau est = a 1) et donc mon besoin si je veux retirer un bouton je souhaite selectioner un chiffre de la listbox1 et puis cliquer sur un bouton retirer. Ton code fonctionne que pour le N° 1 forcement car mon tableau en contient qu'un seul element:


voici le code:




Private Sub CommandButton6_Click()
ListBox1.AddItem (UserForm2.ComboBox1)


Dim xCommandButton As MSForms.CommandButton
Dim xLeft As Long, yTop As Long


' création d 'un nouveau bouton au sein du Frame
Set xCommandButton = Frame5.Controls.Add("Forms.CommandButton.1", "Nom Action")

On Error Resume Next ' si création du 1ier button
If UBound(GroupcmdAction) = -1 Then
On Error GoTo 0
' initialisation du tableau
ReDim GroupcmdAction(1 To 1)
' création d'un élément de type class_CmdActeur
Set GroupcmdAction(UBound(GroupcmdAction)) = New class_CmdAction
' affectation pour cet élément de l'objet xCommandButton à la propriété CmdActeurEvents
Set GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents = xCommandButton
Else
' ajout d'un élément au tableau
ReDim Preserve GroupcmdAction(1 To UBound(GroupcmdAction) + 1)
' création d'un élément de type class_CmdActeur
Set GroupcmdAction(UBound(GroupcmdAction)) = New class_CmdAction
' affectation pour cet élément de l'objet xCommandButton à la propriété CmdActeurEvents
Set GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents = xCommandButton
End If

' attribution du nom
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Name = "" & ComboBox1
' attribution du texte affiché
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Caption = _
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Name




' placement du bouton
If UBound(GroupcmdAction) - LBound(GroupcmdAction) + 1 = 1 Then
' C'est le 1er bouton
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Left = 4
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Top = 4
Else
' pour les autres boutons
' position horizontale du nouveau bouton
xLeft = GroupcmdAction(UBound(GroupcmdAction) - 1).CmdActionEvents.Left + _
GroupcmdAction(UBound(GroupcmdAction) - 1).CmdActionEvents.Width + 4

' vérif si le bouton ne déborde pas à droite du frame
If xLeft + GroupcmdAction(UBound(GroupcmdAction) - 1).CmdActionEvents.Width + 4 > Frame1.Width Then
' le bouton sortirait du frame
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Left = 4
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Top = _
GroupcmdAction(UBound(GroupcmdAction) - 1).CmdActionEvents.Top _
+ GroupcmdAction(UBound(GroupcmdAction) - 1).CmdActionEvents.Height + 4
Else
' le bouton peut encore être placé à droite des boutons existants
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Left = xLeft
GroupcmdAction(UBound(GroupcmdAction)).CmdActionEvents.Top = _
GroupcmdAction(UBound(GroupcmdAction) - 1).CmdActionEvents.Top
End If
End If

End Sub
 
- 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
1
Affichages
1 K
Retour