Initialisation d'un combobox

Le
Denys
Bonjour tous,

Je voudrais l'initialisation d'un userform que si la
cellule G1 de la feuille active a comme valeur X , le
combobox1 aille chercher comme "rowsource" une plage
nomme Mois, et que si la cellule G1 est vide, qu'il aille
chercher la plage nomme Month

J'essaie depuis un bon bout de temps, mais je ne trouve
pas

Voici ou j'en suis:
Private Sub UserForm_Initialize()
If ActiveSheet.Range("G1").Value = "X" Then
ComboBox1.RowSource = "Mois"
If [G1].Value = "" Then ComboBox1.RowSource = "Month"
etc.

Ou fais-je l'erreur???

Merci

Denys
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #1231670
bonjour Denys,

essaie avec,

ComboBox1.RowSource = Range("Mois")
ComboBox1.RowSource = Range("Month")

isabelle


Bonjour à tous,

Je voudrais à l'initialisation d'un userform que si la
cellule G1 de la feuille active a comme valeur X , le
combobox1 aille chercher comme "rowsource" une plage
nommée Mois, et que si la cellule G1 est vide, qu'il aille
chercher la plage nommée Month...

J'essaie depuis un bon bout de temps, mais je ne trouve
pas...

Voici ou j'en suis:
Private Sub UserForm_Initialize()
If ActiveSheet.Range("G1").Value = "X" Then
ComboBox1.RowSource = "Mois"
If [G1].Value = "" Then ComboBox1.RowSource = "Month"
etc....

Ou fais-je l'erreur???

Merci

Denys


mousnynao
Le #1231495
Bonjour,

Exemple :

Private Sub UserForm_Initialize()

Dim Valeur As Variant
Dim Feuille As String
Dim Mois, Annee

Mois = "B1:B5"
Annee = "C1:C5"


Feuille = ActiveSheet.Name
Valeur = ActiveSheet.Range("G1").Value
If (UCase(Valeur) = "X") Then
DoEvents
ComboBox1.RowSource = Feuille & "!" & Mois
Else
DoEvents
If (Valeur = "") Then
ComboBox1.RowSource = Feuille & "!" & Annee
End If
End If

End Sub

mousnynao!

-----Message d'origine-----
Bonjour à tous,

Je voudrais à l'initialisation d'un userform que si la
cellule G1 de la feuille active a comme valeur X , le
combobox1 aille chercher comme "rowsource" une plage
nommée Mois, et que si la cellule G1 est vide, qu'il
aille

chercher la plage nommée Month...

J'essaie depuis un bon bout de temps, mais je ne trouve
pas...

Voici ou j'en suis:
Private Sub UserForm_Initialize()
If ActiveSheet.Range("G1").Value = "X" Then
ComboBox1.RowSource = "Mois"
If [G1].Value = "" Then ComboBox1.RowSource = "Month"
etc....

Ou fais-je l'erreur???

Merci

Denys
.



Denys
Le #1231492
Bonjour Isabelle,

Merci, mais ça ne fonctionne pas... Excel ne va pas voir
s'il y a quelque chose d'écrit dans la cellule G1...

A bientôt

Denys


-----Original Message-----
bonjour Denys,

essaie avec,

ComboBox1.RowSource = Range("Mois")
ComboBox1.RowSource = Range("Month")

isabelle


Bonjour à tous,

Je voudrais à l'initialisation d'un userform que si la
cellule G1 de la feuille active a comme valeur X , le
combobox1 aille chercher comme "rowsource" une plage
nommée Mois, et que si la cellule G1 est vide, qu'il
aille


chercher la plage nommée Month...

J'essaie depuis un bon bout de temps, mais je ne trouve
pas...

Voici ou j'en suis:
Private Sub UserForm_Initialize()
If ActiveSheet.Range("G1").Value = "X" Then
ComboBox1.RowSource = "Mois"
If [G1].Value = "" Then ComboBox1.RowSource
= "Month"


etc....

Ou fais-je l'erreur???

Merci

Denys
.





michdenis
Le #1231491
Bonjour Denys,

Essaie ceci : Tu peux ajouter autant de "Case" qu'il y de valeurs différentes dans la cellule G1

Attention au nom des plages. J'ai choisi "Autre" et "Mois", ton application peut être différent...


'-----------------------
Private Sub UserForm_Initialize()
Select Case UCase(ActiveSheet.Range("G1"))
Case Is = ""
Me.ComboBox1.RowSource = Range("Autre").Address(0, 0)
Case Is = "X"
Me.ComboBox1.RowSource = Range("Mois").Address(0, 0)
End Select

End Sub
'-----------------------


Salutations!



"Denys" Bonjour à tous,

Je voudrais à l'initialisation d'un userform que si la
cellule G1 de la feuille active a comme valeur X , le
combobox1 aille chercher comme "rowsource" une plage
nommée Mois, et que si la cellule G1 est vide, qu'il aille
chercher la plage nommée Month...

J'essaie depuis un bon bout de temps, mais je ne trouve
pas...

Voici ou j'en suis:
Private Sub UserForm_Initialize()
If ActiveSheet.Range("G1").Value = "X" Then
ComboBox1.RowSource = "Mois"
If [G1].Value = "" Then ComboBox1.RowSource = "Month"
etc....

Ou fais-je l'erreur???

Merci

Denys
Jean-François Aubert
Le #1231489
Salut Denys,

Ceci fonctionne bien.

Private Sub UserForm_Initialize()
With Sheets("feuil1") ' <-- à adapter
If .[G1].Value = "X" Then
Me.ComboBox1.RowSource = "Mois"
End If
If .[G1].Value = "" Then
Me.ComboBox1.RowSource = "Month"
End If
End With
End Sub
'...................................................................................................
...........
Private Sub UserForm_Initialize()
Select Case Sheets("Feuil1").Range("G1").Value ' <-- à adapter
Case Is = "X": Me.ComboBox1.RowSource = "Mois"
Case Is = "": Me.ComboBox1.RowSource = "Month"
Case Else: Unload Me
' ou
' Case Else
' Me.ComboBox1.AddItem "G1 contient autre chose que X"
' Me.ComboBox1.ListIndex = 0
End Select
End Sub


--
Amicalement

Jean-François Aubert
{Vaudois de la Côte Lémanique}


"Denys" news:1917201c41c13$dcbd8220$
Bonjour à tous,

Je voudrais à l'initialisation d'un userform que si la
cellule G1 de la feuille active a comme valeur X , le
combobox1 aille chercher comme "rowsource" une plage
nommée Mois, et que si la cellule G1 est vide, qu'il aille
chercher la plage nommée Month...

J'essaie depuis un bon bout de temps, mais je ne trouve
pas...

Voici ou j'en suis:
Private Sub UserForm_Initialize()
If ActiveSheet.Range("G1").Value = "X" Then
ComboBox1.RowSource = "Mois"
If [G1].Value = "" Then ComboBox1.RowSource = "Month"
etc....

Ou fais-je l'erreur???

Merci

Denys
Denys
Le #1231315
Bonjour Denis, Jean-François et Mousnynao,

Merci infiniment à vous trois.... Tout fonctionne à
merveille... Très aimable..

Bonne soirée

Denys



-----Original Message-----
Bonjour à tous,

Je voudrais à l'initialisation d'un userform que si la
cellule G1 de la feuille active a comme valeur X , le
combobox1 aille chercher comme "rowsource" une plage
nommée Mois, et que si la cellule G1 est vide, qu'il
aille

chercher la plage nommée Month...

J'essaie depuis un bon bout de temps, mais je ne trouve
pas...

Voici ou j'en suis:
Private Sub UserForm_Initialize()
If ActiveSheet.Range("G1").Value = "X" Then
ComboBox1.RowSource = "Mois"
If [G1].Value = "" Then ComboBox1.RowSource = "Month"
etc....

Ou fais-je l'erreur???

Merci

Denys
.



Rai
Le #1230959
"Denys" Bonjour Isabelle,

Merci, mais ça ne fonctionne pas... Excel ne va pas voir
s'il y a quelque chose d'écrit dans la cellule G1...

A bientôt

Denys


-----Original Message-----
bonjour Denys,

essaie avec,

ComboBox1.RowSource = Range("Mois")
ComboBox1.RowSource = Range("Month")

isabelle



Bonjour Denys,

En premier il faut tester la valeur de G1.
En second il faut passer l'adresse du Range concerné à RowSource (et non le Range au complet).

Ci-dessous un exemple de code :
Private Sub UserForm_Initialize()
If Range("G1") = "x" Then
ComboBox1.RowSource = Range("Month").Address
Else
ComboBox1.RowSource = Range("Mois").Address
End If
End Sub

Espérant avoir fait avancer tes projets.


--
Cordialement,

Rai
Remplacer point par la ponctuation appropriée pour répondre...

Rai
Le #1230958
Ooops !

Désolé pour le doublon (ou la triplette ?).

Le temps de bidouiller sur mon Excel favori et de poster le message .... d'autres messages sont apparus.

Bonne journée à tous.


--
Cordialement,

Rai
Remplacer point par la ponctuation appropriée pour répondre...
Publicité
Poster une réponse
Anonyme