J'ai une macro qui fait une série d'actions (enlever de la couleur, afficher
certaines lignes et colonnes, imprimer, remettre la couleur, masquer
certaines lignes et colonnes). Cette macro fonctionne très bien lorsque je
sélectionne une seule feuille à la fois. Par contre, si je sélectionne 3
feuilles par exemple, tout est correct sur une feuille mais pas sur les
autres (les actions de la macro ne fonctionnent pas sur toutes les
feuilles).
Y a t-il une certaine ligne de code à insérer au début de la macro qui
dirait : Fait la macro de A à Z sur chaque feuille.
Bonjour Caroline et MichDenis Dans le cas où la macro ne devrait pas faire strictement les mêmes choses aux mêmes endroits sur les feuilles sélectionnées au départ, je suggère de remplacer le Sh.Activate par Sh.Select Le groupe de travail sera ainsi dissocié mais la boucle For each Sh ... Next sera quand même effectuée sur les onglets initialement sélectionnés
Cordialement Trirème
Bonsoir MichDenis,
Super ! Ca fonctionne. Je suis très heureuse. Gros gros merci à toi ! "michdenis" a écrit dans le message de news:
For Each Sh In ActiveWindow.SelectedSheets Sh.Activate 'Ta macro
Next
Bonjour Caroline et MichDenis
Dans le cas où la macro ne devrait pas faire strictement les mêmes
choses aux mêmes endroits sur les feuilles sélectionnées au départ, je
suggère de remplacer le
Sh.Activate par Sh.Select
Le groupe de travail sera ainsi dissocié mais la boucle
For each Sh ... Next sera quand même effectuée sur les onglets
initialement sélectionnés
Cordialement
Trirème
Bonsoir MichDenis,
Super ! Ca fonctionne. Je suis très heureuse.
Gros gros merci à toi !
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
For Each Sh In ActiveWindow.SelectedSheets
Sh.Activate
'Ta macro
Bonjour Caroline et MichDenis Dans le cas où la macro ne devrait pas faire strictement les mêmes choses aux mêmes endroits sur les feuilles sélectionnées au départ, je suggère de remplacer le Sh.Activate par Sh.Select Le groupe de travail sera ainsi dissocié mais la boucle For each Sh ... Next sera quand même effectuée sur les onglets initialement sélectionnés
Cordialement Trirème
Bonsoir MichDenis,
Super ! Ca fonctionne. Je suis très heureuse. Gros gros merci à toi ! "michdenis" a écrit dans le message de news:
For Each Sh In ActiveWindow.SelectedSheets Sh.Activate 'Ta macro
Next
Caroline L.
Bonsoir Trirème,
merci pour ton intervention.
la macro fait la même chose sur toutes les feuilles donc pas de problème à l'horizon
Merci :-)
Caroline
"Trirème" a écrit dans le message de news: #
Bonjour Caroline et MichDenis Dans le cas où la macro ne devrait pas faire strictement les mêmes choses aux mêmes endroits sur les feuilles sélectionnées au départ, je suggère de remplacer le Sh.Activate par Sh.Select Le groupe de travail sera ainsi dissocié mais la boucle For each Sh ... Next sera quand même effectuée sur les onglets initialement sélectionnés
Cordialement Trirème
Bonsoir MichDenis,
Super ! Ca fonctionne. Je suis très heureuse. Gros gros merci à toi ! "michdenis" a écrit dans le message de news:
For Each Sh In ActiveWindow.SelectedSheets Sh.Activate 'Ta macro
Next
Bonsoir Trirème,
merci pour ton intervention.
la macro fait la même chose sur toutes les feuilles donc pas de problème à
l'horizon
Merci :-)
Caroline
"Trirème" <NoOne@EvryOuer.fr> a écrit dans le message de news:
#aHfsIF0FHA.3188@TK2MSFTNGP14.phx.gbl...
Bonjour Caroline et MichDenis
Dans le cas où la macro ne devrait pas faire strictement les mêmes
choses aux mêmes endroits sur les feuilles sélectionnées au départ, je
suggère de remplacer le
Sh.Activate par Sh.Select
Le groupe de travail sera ainsi dissocié mais la boucle
For each Sh ... Next sera quand même effectuée sur les onglets
initialement sélectionnés
Cordialement
Trirème
Bonsoir MichDenis,
Super ! Ca fonctionne. Je suis très heureuse.
Gros gros merci à toi !
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
For Each Sh In ActiveWindow.SelectedSheets
Sh.Activate
'Ta macro
la macro fait la même chose sur toutes les feuilles donc pas de problème à l'horizon
Merci :-)
Caroline
"Trirème" a écrit dans le message de news: #
Bonjour Caroline et MichDenis Dans le cas où la macro ne devrait pas faire strictement les mêmes choses aux mêmes endroits sur les feuilles sélectionnées au départ, je suggère de remplacer le Sh.Activate par Sh.Select Le groupe de travail sera ainsi dissocié mais la boucle For each Sh ... Next sera quand même effectuée sur les onglets initialement sélectionnés
Cordialement Trirème
Bonsoir MichDenis,
Super ! Ca fonctionne. Je suis très heureuse. Gros gros merci à toi ! "michdenis" a écrit dans le message de news:
For Each Sh In ActiveWindow.SelectedSheets Sh.Activate 'Ta macro
Next
LSteph
Bonjour,
La macrio que je te donnais, (n'ayant pas tout compris en premier lieu) envisageait de boucler sur les feuilles du classeur.
Aussi comme tu précises que tu as déjà des feuilles sélectionnées , SelectedSheets, (soit un groupe de travail) mon second propos n'est plus d'utiliser cette macro mais d'effecuer les actions sur la feuille (en cours) pour toutes les feuilles sélectionnées.
Mais puisque MichDenis t'a donné une solution complète, tout va bien!
a+
lSteph
"Caroline L." a écrit dans le message de news: eyT%
Re-bonsoir,
hum, je ne comprends pas ce que tu veux dire. J'ai fait le test en ajoutant ton code à mon code et voici. J'ai une dizaine de feuilles et j'ai sélectionnées 3 d'entre-elle et là j'ai lancé la macro. Résultat : toutes les feuilles du classeur ont été affectées par la macro alors que je désire que SEULES LES FEUILLES PRÉALABLEMENT SÉLECTIONNÉES soit affectées par la macro.
Groupe de travail veut-il dire que j'ai sélectionnées plusieurs feuilles ?
Caroline
"LSteph" a écrit dans le message de news: #K$
Re, alors si j'ai bien compris tu es en groupe de travail Donc plusieurs feuilles sont déjà sélectionées tout ce que tu fera sur activesheet sera retenu pour les autres!
lSteph
"Caroline L." a écrit dans le message de news:
Bonjour LSteph,
Merci pour ton aide ! Ce que tu proposes fonctionne (on se rapproche) mais je ne veux pas que la
macro s'applique sur toutes les feuilles du classeur, SEULEMENT sur les feuilles que j'aurai sélectionnées. Tu vois ? Quelle est la petite subtilité à ajouter ?
Merci
Caroline
"LSteph" a écrit dans le message de news:
Bonjour Caroline,
Option explicit Sub masub() Dim wSh as worksheet For each wSh in ActiveWorkbook.Worksheets wSh.activate 'faireicilamacroquifaittoutcequelledoitdanslafeuille next end sub
'lSteph nb: (Il ne s'agit peut-être que de feuilles et pas de graphiques et celles que l'on veut traiter appartiennent peut-être au classeur actif et non forcément celui qui contient la macro)
"Caroline L." a écrit dans le message de news:
Bonjour à tous !
J'ai une macro qui fait une série d'actions (enlever de la couleur, afficher certaines lignes et colonnes, imprimer, remettre la couleur, masquer certaines lignes et colonnes). Cette macro fonctionne très bien lorsque
je
sélectionne une seule feuille à la fois. Par contre, si je sélectionne
3 feuilles par exemple, tout est correct sur une feuille mais pas sur les
autres (les actions de la macro ne fonctionnent pas sur toutes les feuilles). Y a t-il une certaine ligne de code à insérer au début de la macro qui
dirait : Fait la macro de A à Z sur chaque feuille.
Merci à l'avance pour vos idées
Caroline
Bonjour,
La macrio que je te donnais, (n'ayant pas tout compris en premier lieu)
envisageait de boucler sur les feuilles du classeur.
Aussi comme tu précises que tu as déjà des feuilles sélectionnées ,
SelectedSheets,
(soit un groupe de travail) mon second propos n'est plus d'utiliser cette
macro mais d'effecuer
les actions sur la feuille (en cours) pour toutes les feuilles
sélectionnées.
Mais puisque MichDenis t'a donné une solution complète, tout va bien!
a+
lSteph
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
eyT%23DLE0FHA.3780@TK2MSFTNGP12.phx.gbl...
Re-bonsoir,
hum, je ne comprends pas ce que tu veux dire. J'ai fait le test en
ajoutant
ton code à mon code et voici.
J'ai une dizaine de feuilles et j'ai sélectionnées 3 d'entre-elle et là
j'ai
lancé la macro. Résultat : toutes les feuilles du classeur ont été
affectées
par la macro alors que je désire que SEULES LES FEUILLES PRÉALABLEMENT
SÉLECTIONNÉES soit affectées par la macro.
Groupe de travail veut-il dire que j'ai sélectionnées plusieurs feuilles ?
Caroline
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
#K$rc8D0FHA.1708@TK2MSFTNGP10.phx.gbl...
Re,
alors si j'ai bien compris tu es en groupe de travail
Donc plusieurs feuilles sont déjà sélectionées tout ce que tu fera sur
activesheet sera retenu pour les autres!
lSteph
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
uxNCHyD0FHA.3188@TK2MSFTNGP14.phx.gbl...
Bonjour LSteph,
Merci pour ton aide !
Ce que tu proposes fonctionne (on se rapproche) mais je ne veux pas que
la
macro s'applique sur toutes les feuilles du classeur, SEULEMENT sur les
feuilles que j'aurai sélectionnées. Tu vois ? Quelle est la petite
subtilité
à ajouter ?
Merci
Caroline
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de news:
OumEoqD0FHA.800@TK2MSFTNGP12.phx.gbl...
Bonjour Caroline,
Option explicit
Sub masub()
Dim wSh as worksheet
For each wSh in ActiveWorkbook.Worksheets
wSh.activate
'faireicilamacroquifaittoutcequelledoitdanslafeuille
next
end sub
'lSteph
nb: (Il ne s'agit peut-être que de feuilles et pas de graphiques et
celles
que l'on veut traiter
appartiennent peut-être au classeur actif et non forcément celui qui
contient la macro)
"Caroline L." <caroland@videotron.ca> a écrit dans le message de news:
uWtwgSD0FHA.2912@TK2MSFTNGP10.phx.gbl...
Bonjour à tous !
J'ai une macro qui fait une série d'actions (enlever de la couleur,
afficher
certaines lignes et colonnes, imprimer, remettre la couleur, masquer
certaines lignes et colonnes). Cette macro fonctionne très bien
lorsque
je
sélectionne une seule feuille à la fois. Par contre, si je
sélectionne
3
feuilles par exemple, tout est correct sur une feuille mais pas sur
les
autres (les actions de la macro ne fonctionnent pas sur toutes les
feuilles).
Y a t-il une certaine ligne de code à insérer au début de la macro
qui
dirait : Fait la macro de A à Z sur chaque feuille.
La macrio que je te donnais, (n'ayant pas tout compris en premier lieu) envisageait de boucler sur les feuilles du classeur.
Aussi comme tu précises que tu as déjà des feuilles sélectionnées , SelectedSheets, (soit un groupe de travail) mon second propos n'est plus d'utiliser cette macro mais d'effecuer les actions sur la feuille (en cours) pour toutes les feuilles sélectionnées.
Mais puisque MichDenis t'a donné une solution complète, tout va bien!
a+
lSteph
"Caroline L." a écrit dans le message de news: eyT%
Re-bonsoir,
hum, je ne comprends pas ce que tu veux dire. J'ai fait le test en ajoutant ton code à mon code et voici. J'ai une dizaine de feuilles et j'ai sélectionnées 3 d'entre-elle et là j'ai lancé la macro. Résultat : toutes les feuilles du classeur ont été affectées par la macro alors que je désire que SEULES LES FEUILLES PRÉALABLEMENT SÉLECTIONNÉES soit affectées par la macro.
Groupe de travail veut-il dire que j'ai sélectionnées plusieurs feuilles ?
Caroline
"LSteph" a écrit dans le message de news: #K$
Re, alors si j'ai bien compris tu es en groupe de travail Donc plusieurs feuilles sont déjà sélectionées tout ce que tu fera sur activesheet sera retenu pour les autres!
lSteph
"Caroline L." a écrit dans le message de news:
Bonjour LSteph,
Merci pour ton aide ! Ce que tu proposes fonctionne (on se rapproche) mais je ne veux pas que la
macro s'applique sur toutes les feuilles du classeur, SEULEMENT sur les feuilles que j'aurai sélectionnées. Tu vois ? Quelle est la petite subtilité à ajouter ?
Merci
Caroline
"LSteph" a écrit dans le message de news:
Bonjour Caroline,
Option explicit Sub masub() Dim wSh as worksheet For each wSh in ActiveWorkbook.Worksheets wSh.activate 'faireicilamacroquifaittoutcequelledoitdanslafeuille next end sub
'lSteph nb: (Il ne s'agit peut-être que de feuilles et pas de graphiques et celles que l'on veut traiter appartiennent peut-être au classeur actif et non forcément celui qui contient la macro)
"Caroline L." a écrit dans le message de news:
Bonjour à tous !
J'ai une macro qui fait une série d'actions (enlever de la couleur, afficher certaines lignes et colonnes, imprimer, remettre la couleur, masquer certaines lignes et colonnes). Cette macro fonctionne très bien lorsque
je
sélectionne une seule feuille à la fois. Par contre, si je sélectionne
3 feuilles par exemple, tout est correct sur une feuille mais pas sur les
autres (les actions de la macro ne fonctionnent pas sur toutes les feuilles). Y a t-il une certaine ligne de code à insérer au début de la macro qui
dirait : Fait la macro de A à Z sur chaque feuille.