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

Masquer 100 feuilles

3 réponses
Avatar
michel-hirard
Bonjour,
Mon classeur a 110 feuilles et je souhaite masquer les 100 premières nommées
01 à 100
J'utilise la macro suivante qui fonctionne, mais peut-on trouver une syntaxe
plus élégante ?

Sub MasquerFeuilles()
Application.ScreenUpdating = False
On Error Resume Next
Worksheets(Array("01", "02", ....,"99","100").Visible = xlHidden
Range("A20").Select
End Sub

Merci

3 réponses

Avatar
BJ
Bonjour Michel

Sub MasquerFeuilles()
Application.ScreenUpdating = False
For k=1 to 100
sheets(k).visibleúlse
Next
Range("A20").Select
End Sub

Bruno

michel-hirard a écrit dans le message :
cdarv0$rje$
Bonjour,
Mon classeur a 110 feuilles et je souhaite masquer les 100 premières
nommées

01 à 100
J'utilise la macro suivante qui fonctionne, mais peut-on trouver une
syntaxe

plus élégante ?

Sub MasquerFeuilles()
Application.ScreenUpdating = False
On Error Resume Next
Worksheets(Array("01", "02", ....,"99","100").Visible = xlHidden
Range("A20").Select
End Sub

Merci




Avatar
michdenis
Bonjour Michel,

Il y a aussi ceci :

'----------------
Dim arr(1 To 100), A as integer

For a = 1 To 100
arr(a) = a
Next
Worksheets(arr).Visible = xlHidden
'----------------


Salutations!



"michel-hirard" a écrit dans le message de news:cdarv0$rje$
Bonjour,
Mon classeur a 110 feuilles et je souhaite masquer les 100 premières nommées
01 à 100
J'utilise la macro suivante qui fonctionne, mais peut-on trouver une syntaxe
plus élégante ?

Sub MasquerFeuilles()
Application.ScreenUpdating = False
On Error Resume Next
Worksheets(Array("01", "02", ....,"99","100").Visible = xlHidden
Range("A20").Select
End Sub

Merci
Avatar
docm
Bonjour michel-hirard

Voici une façon de faire:

For k = 1 To 100
prefixe = ""
If k < 10 Then prefixe = "0"
nom = prefixe & k
Sheets(nom).Visible = xlHidden
Next

Amicalement

"michel-hirard" wrote in message
news:cdarv0$rje$
Bonjour,
Mon classeur a 110 feuilles et je souhaite masquer les 100 premières
nommées

01 à 100
J'utilise la macro suivante qui fonctionne, mais peut-on trouver une
syntaxe

plus élégante ?

Sub MasquerFeuilles()
Application.ScreenUpdating = False
On Error Resume Next
Worksheets(Array("01", "02", ....,"99","100").Visible = xlHidden
Range("A20").Select
End Sub

Merci