Tu peux utiliser array sans connaître le nom des feuilles. Voici comment
sélectionner les 3 premières feuilles :
Sheets(Array(Sheets(1).Name, Sheets(2).Name, Sheets(3).Name)).Select
Cordialement
Hervé
"philippe" <phil...@phoon.org> a écrit dans le message news:
77c201c19944$5d3b0760$3bef2ecf@TKMSFTNGXA10...
Comment faire pour selectionner un nbre X de feuilles sans
utiliser la fonction array qui oblige à connaitre d'avance
le nom de la feuille.
Merci d'avance
>-----Message d'origine-----
>.
>
et avec une boucle sur worksheets.count pour remplir le array ça irais ?
isabelle
philippe a écrit :
merci
>-----Message d'origine-----
>.
>
merci
>-----Message d'origine-----
>.
>
J'ai un peu de difficulté à suivre... sélectionner des feuilles
sans savoir quelles feuilles tu dois sélectionner...
Voici quelque chose à partir duquel tu peux t'inspirer ...
à Copier ds un module standard
Il s'agit d'entrer dans un inputbox, la liste des index(Numéro) des feuilles dont tu désires
sélectionner en les séparant les index par une virgule ...
Sub SelectionFeuille()
Dim Arr
lesfeuilles = Application.InputBox("Inscrivez les feuilles à sélectionner" _
+ vbCrLf + vbCrLf + "Notez comme suit les feuilles à sélectionner : 1,3,4,7 etc. ", "Sélection")
Arr = Split(lesfeuilles, ",")
For a = LBound(Arr) To UBound(Arr)
Sheets(Val(Arr(a))).Select Replace:=False
Next
End Sub
Salutations!
"philippe" <phil...@phoon.org> a écrit dans le message de news:
6f5501c1994d$367344e0$37ef2ecf@TKMSFTNGXA13...
la, j'ai parlé trop vite, j'ai bien essayé mais y a rien à faire.
je te livre quant même ce que j'ai fais,
Dim i, f, feuilles
For i = 1 To Worksheets.Count
f = f & Chr(34) & "Feuil" & i & Chr(34) & ", "
Next i
feuilles = Mid(f, 2, Len(f) - 4)
Sheets(Array(feuilles)).Select
la variable feuilles est bien égal au trois feuilles de mon classeur
"Feuil1", "Feuil2", "Feuil3"
mais j'obtiens une erreur d'indice en dehors de la plage,
et j'ni voie plus rien.
si tu trouve, stépplé, fais le moi savoir
bisou
isabelle
philippe a écrit :
En connaissant les critères, on peut faire des boucles conditionnelles et/ou
des branchements conditionnels. Si les critères sont immuables, cela vaut
sans doute la peine de faire une macro. Si les critères varient au fil du
temps, aussi bien le faire à la mitaine.
--
Clément Marcotte
"Être vraiment patient, c'est être patient quand vous ne pensiez plus qu'il
était possiblement concevable de l'être."
- Léonard de Vinci
"philippe" <phil...@phoon.org> a écrit dans le message news:
77c201c19944$5d3b0760$3bef2ecf@TKMSFTNGXA10...
Merci d'avance
isabelle a écrit :
Si je peux me permettre une suggestion :
Pour traiter les noms des feuilles ds un tableau et
d'en faire la sélection.
-----------
Sub TableauFeuille()
Dim arr()
Dim Nb As Integer
Nb = Worksheets.Count
ReDim arr(1 To Nb)
For i = 1 To Worksheets.Count
arr(i) = Worksheets(i).Name
Next
Worksheets(arr).Select Replace:=False
End Sub
-------------
Salutations!
"isabelle" <as.isa...@videotron.ca> a écrit dans le message de news: 3C3CD229...@videotron.ca...
Sub Macro1()
Dim f, i, feuilles
Dim MyArray()
For Each f In Worksheets
'pour éliminer certaine feuilles place une condition ici.
If f.Name <> "blabla" Then
ReDim Preserve MyArray(i)
MyArray(i) = f.Name
i = i + 1
End If
Next f
For feuilles = LBound(MyArray) To UBound(MyArray)
Sheets(MyArray(feuilles)).Select
Denis Michon a écrit :
A+
>-----Message d'origine-----
>.
>