Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

lister feuilles userform

S

steve

Guest
Bonjour a tous

Je recherche une userform qui permettrait de lister les feuilles d'un classeur sauf la feuille zaza titi et toto
Et d'activer la feuille selectionné

merci pour vos reponse
 
Z

Zon

Guest
Salut,

Un truc du style dans l'initialize de ton usf


for i=1 to thisworkbook.worsheets.count
if sheets(i).name <>"Titi" and sheets(i).name <>"tata" sheets(i).name <>"ZOZO" then talistbox.additem sheets(i).name
next i

dans l'évènement click de ta listbox

sheet(talistbox.list(talistox.listindex)).activate


A+++
 
R

Roland

Guest
Bonsoir Steve

Un petit exemple à adapter et à perfectionner

A+ Rolans
 

Pièces jointes

  • ChoixFeuille.zip
    13.8 KB · Affichages: 48
  • ChoixFeuille.zip
    13.8 KB · Affichages: 45
  • ChoixFeuille.zip
    13.8 KB · Affichages: 41
Z

Zon

Guest
Re,

Et oui Roland j'oubliais la propriété text d'une listbox. Par contre il vaudrait mieux déclarer tes variables et rajoutes en haut de ton module option explicit.

A+++
 
S

steve

Guest
merci pour vos reponse mais finalement j'ai listé
les feuilles dans unbarre d'outil avec boutons
maintenant j'ai le choix entre les deux solution
peut lancer usf par bouton

Sub Créerbouton()

Dim x
Dim Y
Dim CHW
Dim CHs
Dim I
Sheets("test").Cells(5, 5) = Worksheets.Count
With ThisWorkbook
For I = 5 To .Sheets.Count
Sheets("test").Cells(14 + I - 4, 1).Value = .Sheets(I).Name
Next I
End With

x = Sheets("test1").Cells(1, 26)
'Application.CommandBars(1).Controls(x).Delete

For Each CB In Application.CommandBars
If CB.Name = x Then
CB.Position = msoBarFloating
CB.Protection = msoBarNoCustomize
CB.Visible = True
Exit Sub
End If
Next CB

Application.CommandBars.Add(Name:=x).Visible = True
Application.CommandBars(x).Position = msoBarFloating
With Application.CommandBars(x).Controls
.Add Type:=msoControlPopup
.Add Type:=msoControlPopup

'<<<<<<<<<<<< "Données">>>>>>>>>>>>>>>
With Application.CommandBars(x).Controls(1)
.Caption = "Données"

'lister parcelle
.Controls.Add Type:=msoControlPopup
With .Controls(1)
.Caption = "Liste des feuilles"
z = Sheets("test").Cells(14, 1)
For Y = 1 To z
.Controls.Add Type:=msoControlButton
CHW = Sheets("test").Cells(Y + 14, 1)
CHs = Sheets("test").Cells(Y + 14, 2)
With .Controls(Y)
.FaceID = 0
.Caption = CHW
.OnAction = CHs

End With
Next Y
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…