[Résolu] Sélection VBA d'onglets selon liste

Polobe36

XLDnaute Occasionnel
Bonjour à tous, le Forum,

Comment faudrait-il faire en VBA pour sélectionner plusieurs onglets à partir d'une liste, dans laquelle se trouvent une ou plusieurs valeurs correspondant toutes à un nom d'onglet?

Par exemple, si ma liste contient les valeurs "FME0001", "FME0002" et "FME0004", je souhaiterai que les onglets "FME0001", "FME0002" et "FME0004" soient sélectionnés.
Mon but au final étant ensuite d'imprimer la sélection simplement à partir de cette liste.

Merci par avance de m'aiguiller.

Bonne journée
 

Pièces jointes

  • exemple1.xlsx
    28.8 KB · Affichages: 39
  • exemple1.xlsx
    28.8 KB · Affichages: 40
  • exemple1.xlsx
    28.8 KB · Affichages: 41

pierrejean

XLDnaute Barbatruc
Re : Sélection VBA d'onglets selon liste

Bonjour Polobe36

A tester:
Code:
Sub Macro1()
ReDim tablo(0)
For n = 2 To Sheets("Data").Range("B" & Rows.Count).End(xlUp).Row
 tablo(UBound(tablo)) = Sheets("Data").Range("B" & n)
 ReDim Preserve tablo(UBound(tablo) + 1)
Next
ReDim Preserve tablo(UBound(tablo) - 1)
 Sheets(tablo).Select
End Sub

Edit : Salut lolote (avais pas rafraichi )
 

job75

XLDnaute Barbatruc
Re : Sélection VBA d'onglets selon liste

Bonjour Polobe36, Lolote83, Pierre, ça fait longtemps qu'on ne s'est pas croisé :)

OK mais on peut tenir compte du fait qu'il s'agit d'un tableau Excel, et qu'il peut être filtré :

Code:
Private Sub CommandButton1_Click()
Dim c As Range, n%
On Error Resume Next 'si des feuilles n'existent pas
For Each c In [Tableau2].SpecialCells(xlCellTypeVisible)
  If IsError(Sheets(c.Text)) Then Else n = n + 1: Sheets(c.Text).Select n = 1
Next
End Sub
Fichier joint.

A+
 

Pièces jointes

  • Sélectionner les feuilles(1).xlsm
    42 KB · Affichages: 55

Discussions similaires

Réponses
6
Affichages
336

Statistiques des forums

Discussions
312 328
Messages
2 087 316
Membres
103 515
dernier inscrit
Cherbil12345