Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Remplir une liste déroulante

5 réponses
Avatar
Pounet95
Bonjour à toutes et tous, Bonne année, etc,etc ...
Windows 2000 et XL2000

J'ai la honte ! Je viens de me rendre compte que je ne sais pas mettre à
jour une liste déroulante dans un onglet.

Je voudrais à l'ouverture du classeur ( Workbook_Open ), mettre à jour une
liste déroulante nommée lst_Onglets dans un onglet nommé Accueil.
En fait, mon problème est de dire où elle se situe ;o))))

Sub MAJ
Dim MaListe as Object
Set MaListe =< c'est là que je sais pas comment dire où elle est, quel
est son nom >
MaListe.Clear
For i=1 to ThisWorkbook.Sheets.Count
MaListe.AddItem Sheets(i).name
Next i
End Sub

Merci de me dire
Bien cordialement
Pounet95

5 réponses

Avatar
Jacquouille
Bonsoir Pounet,
Voici ce qu'il me donne pour nommer et définir une plage.

ActiveWorkbook.Names.Add Name:="playa", RefersToR1C1:= _
"þuil1!R1C3:R5C3"
Yapluka définir les contenus -----> [C1]="blabla" [C2]="toto"
[C3]="etc...."
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"Pounet95" a écrit dans le message de news:

Bonjour à toutes et tous, Bonne année, etc,etc ...
Windows 2000 et XL2000

J'ai la honte ! Je viens de me rendre compte que je ne sais pas mettre à
jour une liste déroulante dans un onglet.

Je voudrais à l'ouverture du classeur ( Workbook_Open ), mettre à jour une
liste déroulante nommée lst_Onglets dans un onglet nommé Accueil.
En fait, mon problème est de dire où elle se situe ;o))))

Sub MAJ
Dim MaListe as Object
Set MaListe =< c'est là que je sais pas comment dire où elle est, quel
est son nom >
MaListe.Clear
For i=1 to ThisWorkbook.Sheets.Count
MaListe.AddItem Sheets(i).name
Next i
End Sub

Merci de me dire
Bien cordialement
Pounet95


Avatar
michdenis
Pour un contrôle d'une liste déroulante

Contrôle émanant d'une barre d'outils contrôle
Adapter le nom de la feuille est de la plage de cellules
'----------------------------------------------
Sub Control_Liste_Controle()
Dim X
With Feuil1
X = .Range("A1:A" & .Range("A65536").End(xlUp).Row).Value
End With
With Feuil1.ListBox1
.Clear
.List = X
End With
End Sub
'----------------------------------------------

Contrôle émanant d'une barre d'outils formulaire
Adapter le nom de la feuille est de la plage de cellules
'----------------------------------------------
Sub Control_Liste_Formulaire()
Dim X
With Feuil1
X = .Range("A1:A" & .Range("A65536").End(xlUp).Row).Value
With .Shapes("Maliste").OLEFormat.Object
.List = ""
.List = X
End With
End With
End Sub
'----------------------------------------------



"Pounet95" a écrit dans le message de news:

Bonjour à toutes et tous, Bonne année, etc,etc ...
Windows 2000 et XL2000

J'ai la honte ! Je viens de me rendre compte que je ne sais pas mettre à
jour une liste déroulante dans un onglet.

Je voudrais à l'ouverture du classeur ( Workbook_Open ), mettre à jour une
liste déroulante nommée lst_Onglets dans un onglet nommé Accueil.
En fait, mon problème est de dire où elle se situe ;o))))

Sub MAJ
Dim MaListe as Object
Set MaListe =< c'est là que je sais pas comment dire où elle est, quel
est son nom >
MaListe.Clear
For i=1 to ThisWorkbook.Sheets.Count
MaListe.AddItem Sheets(i).name
Next i
End Sub

Merci de me dire
Bien cordialement
Pounet95
Avatar
Pounet95
Bonsoir,
Merci de vos réponses.

Donc, en fait, il faut que j'écrive dans la procédure :
Set Maliste = <nom de la feuille>.<nom du contrôle>

Juste une précision, ce que j'appelle <nom de la feuille>, c'est le
"Sheet.Name" ou le "Sheet.CodeName" ?

Bonne soirée
Pounet95

"michdenis" a écrit dans le message de
news:uf%
Pour un contrôle d'une liste déroulante

Contrôle émanant d'une barre d'outils contrôle
Adapter le nom de la feuille est de la plage de cellules
'----------------------------------------------
Sub Control_Liste_Controle()
Dim X
With Feuil1
X = .Range("A1:A" & .Range("A65536").End(xlUp).Row).Value
End With
With Feuil1.ListBox1
.Clear
.List = X
End With
End Sub
'----------------------------------------------

Contrôle émanant d'une barre d'outils formulaire
Adapter le nom de la feuille est de la plage de cellules
'----------------------------------------------
Sub Control_Liste_Formulaire()
Dim X
With Feuil1
X = .Range("A1:A" & .Range("A65536").End(xlUp).Row).Value
With .Shapes("Maliste").OLEFormat.Object
.List = ""
.List = X
End With
End With
End Sub
'----------------------------------------------



"Pounet95" a écrit dans le message de news:

Bonjour à toutes et tous, Bonne année, etc,etc ...
Windows 2000 et XL2000

J'ai la honte ! Je viens de me rendre compte que je ne sais pas mettre à
jour une liste déroulante dans un onglet.

Je voudrais à l'ouverture du classeur ( Workbook_Open ), mettre à jour une
liste déroulante nommée lst_Onglets dans un onglet nommé Accueil.
En fait, mon problème est de dire où elle se situe ;o))))

Sub MAJ
Dim MaListe as Object
Set MaListe =< c'est là que je sais pas comment dire où elle est, quel
est son nom >
MaListe.Clear
For i=1 to ThisWorkbook.Sheets.Count
MaListe.AddItem Sheets(i).name
Next i
End Sub

Merci de me dire
Bien cordialement
Pounet95



Avatar
JB
Bonjour,

http://cjoint.com/?biv1xzMEth

Liste triée des onglets du classeur:


Private Sub UserForm_Initialize()
Dim temp()
For i = 1 To Sheets.Count
ReDim Preserve temp(1 To i)
temp(i) = Sheets(i).Name
Next i
n = UBound(temp)
Call Tri(temp, 1, n)
Me.ComboBox1.List = temp
Me.ComboBox1.ListIndex = 0
End Sub


Sub Tri(a, gauc, droi) ' Quick sort
ref = a((gauc + droi) 2)
g = gauc: d = droi
Do
Do While a(g) < ref: g = g + 1: Loop
Do While ref < a(d): d = d - 1: Loop
If g <= d Then
temp = a(g): a(g) = a(d): a(d) = temp
g = g + 1: d = d - 1
End If
Loop While g <= d
If g < droi Then Call Tri(a, g, droi)
If gauc < d Then Call Tri(a, gauc, d)
End Sub

JB
http://boisgontierjacques.free.fr/



On 8 jan, 16:42, "Pounet95" wrote:
Bonjour à toutes et tous, Bonne année, etc,etc ...
Windows 2000 et XL2000

J'ai la honte ! Je viens de me rendre compte que je ne sais pas mettre à
jour une liste déroulante dans un onglet.

Je voudrais à l'ouverture du classeur ( Workbook_Open ), mettre à jou r une
liste déroulante  nommée lst_Onglets dans un onglet nommé Accueil .
En fait, mon problème est de dire où elle se situe ;o))))

Sub MAJ
    Dim MaListe as Object
    Set MaListe =< c'est là que je sais pas comment dire où ell e est, quel
est son nom >
    MaListe.Clear
    For i=1 to ThisWorkbook.Sheets.Count
            MaListe.AddItem Sheets(i).name
    Next i
End Sub

Merci de me dire
Bien cordialement
Pounet95


Avatar
Pounet95
Bonjour,

Merci de vos propositions.
Je mixte tout ça et l'adapte à mes besoins.
Bonne journée et à la prochaine question.

Pounet95

"Pounet95" a écrit dans le message de
news:
Bonjour à toutes et tous, Bonne année, etc,etc ...
Windows 2000 et XL2000

J'ai la honte ! Je viens de me rendre compte que je ne sais pas mettre à
jour une liste déroulante dans un onglet.

Je voudrais à l'ouverture du classeur ( Workbook_Open ), mettre à jour une
liste déroulante nommée lst_Onglets dans un onglet nommé Accueil.
En fait, mon problème est de dire où elle se situe ;o))))

Sub MAJ
Dim MaListe as Object
Set MaListe =< c'est là que je sais pas comment dire où elle est, quel
est son nom >
MaListe.Clear
For i=1 to ThisWorkbook.Sheets.Count
MaListe.AddItem Sheets(i).name
Next i
End Sub

Merci de me dire
Bien cordialement
Pounet95