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

quelle instruction VBA ferme les feuilles ?

2 réponses
Avatar
Etienne
Bonjour /bonsoir

je voudrai fermer les feuilles ,l'une après l'autre, après les avoir
exploité dans une boucle :
For i=1 to Sheets.Count
'par une instruction du style:
After recopie de la feuille i sur feuille recap
close sheet(i)
next i

pour le moment quand la macro a copié la 1ère feuille dans la feuille recap
(dans un autre classeur)
la 1ère feuille s'affiche sans aller automatiquement à la 2eme feuille
et quand je ferme manuellement la 1ere feuille ,
un msg microsoft s'affiche me demandant :
"Voulez vous enregistrer les modifications apportées au classeur ?
oui non annuler

qui pourra m' ecrire le code ?

merci d'avance

2 réponses

Avatar
michdenis
Bonsoir Étienne,

Les feuilles d'un classeur ne se ferment pas. Tu peux les masquer ou les supprimer, modifier leur ordre.

Pour les masquer :

For i=1 to Sheets.Count
sheets(i).visible = false 'ou xlveryhidden ( regarde dans l'aide ce que cela signifie)
Next

Pour les supprimer :
'Le moins 1 (-1) , un classeur ouvert doit avoir au moins une feuille visible.
For i=1 to Sheets.Count -1
sheets(i).delete
Next


Est-ce que cela répond à ta question ?


Salutations!

"Etienne" a écrit dans le message de news:e6b0eY$
Bonjour /bonsoir

je voudrai fermer les feuilles ,l'une après l'autre, après les avoir
exploité dans une boucle :
For i=1 to Sheets.Count
'par une instruction du style:
After recopie de la feuille i sur feuille recap
close sheet(i)
next i

pour le moment quand la macro a copié la 1ère feuille dans la feuille recap
(dans un autre classeur)
la 1ère feuille s'affiche sans aller automatiquement à la 2eme feuille
et quand je ferme manuellement la 1ere feuille ,
un msg microsoft s'affiche me demandant :
"Voulez vous enregistrer les modifications apportées au classeur ?
oui non annuler

qui pourra m' ecrire le code ?

merci d'avance
Avatar
Michel Gaboly
Bonjour,

Comme le dis Michel, il n'est pas possible de fermer une feuille. Tu ne peux
fermer qu'un document, c'est-à-dire un classeur.

Si tu veux économiser de la mémoire, la seule possibilité est de faire des
classeurs ne contenant qu'une feuille chacun.

Tu pourras alors "fermer" chaque feuille de manière indépendante en fermant
le classeur correspondant.


merci Michdenis pour ta réponse nocturne.

mais je persiste à vouloir fermer mes feuilles de classeur, sans les
supprimer, une fois que la macro les a copiées dans un autre classeur.
pour ne pas encombrer la mémoire vive de mon micro avec des feuilles de
données volumineuses.
Etienne

michdenis a écrit dans le message :
OkO$8$
Bonsoir Étienne,

Les feuilles d'un classeur ne se ferment pas. Tu peux les masquer ou les
supprimer, modifier leur ordre.


Pour les masquer :

For i=1 to Sheets.Count
sheets(i).visible = false 'ou xlveryhidden ( regarde dans l'aide ce
que cela signifie)

Next

Pour les supprimer :
'Le moins 1 (-1) , un classeur ouvert doit avoir au moins une feuille
visible.

For i=1 to Sheets.Count -1
sheets(i).delete
Next


Est-ce que cela répond à ta question ?


Salutations!

"Etienne" a écrit dans le message de
news:e6b0eY$

Bonjour /bonsoir

je voudrai fermer les feuilles ,l'une après l'autre, après les avoir
exploité dans une boucle :
For i=1 to Sheets.Count
'par une instruction du style:
After recopie de la feuille i sur feuille recap (dans un autre classeur)
close sheet(i)
next i


qui pourra m' aider ?

merci d'avance






--
Cordialement,

Michel Gaboly
http://www.gaboly.com