[VBA] Procédure pour plusieurs UserForm
Résolu
ksa
-
ksa -
ksa -
A voir également:
- [VBA] Procédure pour plusieurs UserForm
- Excel compter cellule couleur sans vba - Guide
- Le point d'entrée de procédure eventsetinformation est introuvable advapi32.dll - Forum Windows
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
6 réponses
Autant pour moi,
la réponse était simplement:
sub toto(formulaire,a,b)
formulaire.Controls("ComboBox" & b).AddItem i
end sub
avec appel (situé sur UserForm1):
Call UserForm2.toto(UserForm1, 1, 2)
(on passe le formulaire, le numéro des combobox utilisées en paramètre)
Merci pour votre aide en tous les cas.
la réponse était simplement:
sub toto(formulaire,a,b)
formulaire.Controls("ComboBox" & b).AddItem i
end sub
avec appel (situé sur UserForm1):
Call UserForm2.toto(UserForm1, 1, 2)
(on passe le formulaire, le numéro des combobox utilisées en paramètre)
Merci pour votre aide en tous les cas.
Bonsoir,
essaie comme ça :
Sub appel()
Call test(UserForm1)
Call test(UserForm2)
End Sub
Sub test(form)
form.ComboBox1.AddItem "toto"
End Sub
en nommant ton combobox ComboBox1 dans tous les formulaires.
eric
essaie comme ça :
Sub appel()
Call test(UserForm1)
Call test(UserForm2)
End Sub
Sub test(form)
form.ComboBox1.AddItem "toto"
End Sub
en nommant ton combobox ComboBox1 dans tous les formulaires.
eric
Merci pour ta réponse,
le hic c'est que j'utilise 2 combobox par userform qui n'ont pas les meme noms, je les passe donc en parametre comme le nom du formulaire, mais cela ne fonctionne pas
le hic c'est que j'utilise 2 combobox par userform qui n'ont pas les meme noms, je les passe donc en parametre comme le nom du formulaire, mais cela ne fonctionne pas
Bonjour,
comme ça peut-etre alors :
For Each Control In UserForm1.Controls
If Control.Name = "ComboBox1" Or Control.Name = "ComboBox2" Then
'...additem
End If
Next Control
ou tu utilises la propriété tag des controles concernés et tu testes dessus...
eric
comme ça peut-etre alors :
For Each Control In UserForm1.Controls
If Control.Name = "ComboBox1" Or Control.Name = "ComboBox2" Then
'...additem
End If
Next Control
ou tu utilises la propriété tag des controles concernés et tu testes dessus...
eric
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour, Bonjour Eric,
Passe ton combo directement en paramètre, le parent sera pris en compte,
A mettre dans un module général (Module1 par exemple).
Exemple d'appel..
A+
Passe ton combo directement en paramètre, le parent sera pris en compte,
Sub Test( C as ComboBox) C.Additem.....
A mettre dans un module général (Module1 par exemple).
Exemple d'appel..
Test LeNomDuCombo
A+
Merci pour votre aide,
Sachant que cela: form.ComboBox1.AddItem "toto" (form étant une variable passée en paramètre) fonctionne parfaitment, il n'est pas possible de faire quelque chose du genre:
form.ComboBox(a).AddItem "toto" avec form et a passés en paramètre ?
cela me parait étonnant car relativement simple et logique...
Quelqu'un aurait il une réponse (positive ou négative^^) ?
Sachant que cela: form.ComboBox1.AddItem "toto" (form étant une variable passée en paramètre) fonctionne parfaitment, il n'est pas possible de faire quelque chose du genre:
form.ComboBox(a).AddItem "toto" avec form et a passés en paramètre ?
cela me parait étonnant car relativement simple et logique...
Quelqu'un aurait il une réponse (positive ou négative^^) ?