voici un petit casse tête pour les amoureux du VBA Excel :
je génère plusieurs feuilles par l'intermédiaire d'un userform. Je propose
sur ce formulaire d'imprimer les feuilles après génération. Il y a 4
feuilles.
lorsque l'utilisateur coche une case "imprimer" concernant une feuille, la
valeur "vrai" est stockée dans une cellule de mon classeur. Il y a donc 4
cellules dans lesquelles j'aurai au final soit faux, soit vrai.
Ma question :
quel code dois-je utiliser pour demander à Excel d'imprimer les bonnes
feuilles à imprimer ? (à savoir les feuilles dont la cellule "témoin"
contient "vrai" ?
J'ai essayé de sélectionner les feuilles dont la cellule témoin est à
"vrai", mais ma sélection ne fonctionne pas...
Voici mon ébauche de code :
'd'abord je teste s'il y a vrai ou faux dans la cellule "témoin"
> If Sheets("config").Range("B15").Value = True Then
> ImpFeuil1 = "nom de la feuille 1"
> End if
je fais pareil pour les 4 feuilles.
Au final, j'avais l'idée d'obtenir 4 variables avec les noms ou non des
feuilles à imprimer :
ImpFeuil1 contient le nom de la feuille 1 (car elle a été demandée)
ImpFeuil2 contient le nom de la feuille 2 (car elle a été demandée)
ImpFeuil3 contient "" (car elle n'a pas été demandée)
ImpFeuil4 contient "" (car elle n'a pas été demandée)
Puis j'essaye de sélectionner les feuilles dont j'ai récupéré le nom :
> Sheets(Array(ImpFeuil1, ImpFeuil2, ImpFeuil3, ImpFeuil4)).Select
Mais c'est là que ça plante, car Excel n'aime pas ImpFeuil3 et Impfeuil4 qui
contiennent "" et me dit que ces deux feuilles n'existent pas...
Puis j'ai comme idée d'imprimer les feuilles sélectionnées :
> ActiveWindow.SelectedSheets.PrintOut
Ce ne sont que des idées, apparemment pas très bonnes. Est-ce que quelqu'un
peut me donner un coup de main SVP ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ru-th
Salut
pas testé en supposant de B15 à B18 pour les true ou false et de c15 à c18 pour les noms de feuilles à imprimer for =i to 18 If Sheets("config").Range("B"& i).Value = True then sheets(Sheets("config").Range("c"& i).text).printout Sheets("config").Range("B"& i).Value = false endif next i
a+ rural thierry
"Microsoft VBA Excel" a écrit dans le message de news:%23B%
Bonjour à tous,
voici un petit casse tête pour les amoureux du VBA Excel :
je génère plusieurs feuilles par l'intermédiaire d'un userform. Je propose sur ce formulaire d'imprimer les feuilles après génération. Il y a 4 feuilles.
lorsque l'utilisateur coche une case "imprimer" concernant une feuille, la valeur "vrai" est stockée dans une cellule de mon classeur. Il y a donc 4 cellules dans lesquelles j'aurai au final soit faux, soit vrai.
Ma question : quel code dois-je utiliser pour demander à Excel d'imprimer les bonnes feuilles à imprimer ? (à savoir les feuilles dont la cellule "témoin" contient "vrai" ?
J'ai essayé de sélectionner les feuilles dont la cellule témoin est à "vrai", mais ma sélection ne fonctionne pas...
Voici mon ébauche de code :
'd'abord je teste s'il y a vrai ou faux dans la cellule "témoin"
If Sheets("config").Range("B15").Value = True Then ImpFeuil1 = "nom de la feuille 1" End if
je fais pareil pour les 4 feuilles.
Au final, j'avais l'idée d'obtenir 4 variables avec les noms ou non des feuilles à imprimer : ImpFeuil1 contient le nom de la feuille 1 (car elle a été demandée) ImpFeuil2 contient le nom de la feuille 2 (car elle a été demandée) ImpFeuil3 contient "" (car elle n'a pas été demandée) ImpFeuil4 contient "" (car elle n'a pas été demandée)
Puis j'essaye de sélectionner les feuilles dont j'ai récupéré le nom :
Mais c'est là que ça plante, car Excel n'aime pas ImpFeuil3 et Impfeuil4 qui
contiennent "" et me dit que ces deux feuilles n'existent pas...
Puis j'ai comme idée d'imprimer les feuilles sélectionnées :
ActiveWindow.SelectedSheets.PrintOut
Ce ne sont que des idées, apparemment pas très bonnes. Est-ce que quelqu'un
peut me donner un coup de main SVP ?
Merci d'avance pour vos précieux conseils.
Salut
pas testé
en supposant de B15 à B18 pour les true ou false et de c15 à c18 pour les
noms de feuilles à imprimer
for =i to 18
If Sheets("config").Range("B"& i).Value = True then
sheets(Sheets("config").Range("c"& i).text).printout
Sheets("config").Range("B"& i).Value = false
endif
next i
a+
rural thierry
"Microsoft VBA Excel" <gg.aa@free.fr> a écrit dans le message de
news:%23B%23mNkDoGHA.4688@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
voici un petit casse tête pour les amoureux du VBA Excel :
je génère plusieurs feuilles par l'intermédiaire d'un userform. Je propose
sur ce formulaire d'imprimer les feuilles après génération. Il y a 4
feuilles.
lorsque l'utilisateur coche une case "imprimer" concernant une feuille, la
valeur "vrai" est stockée dans une cellule de mon classeur. Il y a donc 4
cellules dans lesquelles j'aurai au final soit faux, soit vrai.
Ma question :
quel code dois-je utiliser pour demander à Excel d'imprimer les bonnes
feuilles à imprimer ? (à savoir les feuilles dont la cellule "témoin"
contient "vrai" ?
J'ai essayé de sélectionner les feuilles dont la cellule témoin est à
"vrai", mais ma sélection ne fonctionne pas...
Voici mon ébauche de code :
'd'abord je teste s'il y a vrai ou faux dans la cellule "témoin"
If Sheets("config").Range("B15").Value = True Then
ImpFeuil1 = "nom de la feuille 1"
End if
je fais pareil pour les 4 feuilles.
Au final, j'avais l'idée d'obtenir 4 variables avec les noms ou non des
feuilles à imprimer :
ImpFeuil1 contient le nom de la feuille 1 (car elle a été demandée)
ImpFeuil2 contient le nom de la feuille 2 (car elle a été demandée)
ImpFeuil3 contient "" (car elle n'a pas été demandée)
ImpFeuil4 contient "" (car elle n'a pas été demandée)
Puis j'essaye de sélectionner les feuilles dont j'ai récupéré le nom :
pas testé en supposant de B15 à B18 pour les true ou false et de c15 à c18 pour les noms de feuilles à imprimer for =i to 18 If Sheets("config").Range("B"& i).Value = True then sheets(Sheets("config").Range("c"& i).text).printout Sheets("config").Range("B"& i).Value = false endif next i
a+ rural thierry
"Microsoft VBA Excel" a écrit dans le message de news:%23B%
Bonjour à tous,
voici un petit casse tête pour les amoureux du VBA Excel :
je génère plusieurs feuilles par l'intermédiaire d'un userform. Je propose sur ce formulaire d'imprimer les feuilles après génération. Il y a 4 feuilles.
lorsque l'utilisateur coche une case "imprimer" concernant une feuille, la valeur "vrai" est stockée dans une cellule de mon classeur. Il y a donc 4 cellules dans lesquelles j'aurai au final soit faux, soit vrai.
Ma question : quel code dois-je utiliser pour demander à Excel d'imprimer les bonnes feuilles à imprimer ? (à savoir les feuilles dont la cellule "témoin" contient "vrai" ?
J'ai essayé de sélectionner les feuilles dont la cellule témoin est à "vrai", mais ma sélection ne fonctionne pas...
Voici mon ébauche de code :
'd'abord je teste s'il y a vrai ou faux dans la cellule "témoin"
If Sheets("config").Range("B15").Value = True Then ImpFeuil1 = "nom de la feuille 1" End if
je fais pareil pour les 4 feuilles.
Au final, j'avais l'idée d'obtenir 4 variables avec les noms ou non des feuilles à imprimer : ImpFeuil1 contient le nom de la feuille 1 (car elle a été demandée) ImpFeuil2 contient le nom de la feuille 2 (car elle a été demandée) ImpFeuil3 contient "" (car elle n'a pas été demandée) ImpFeuil4 contient "" (car elle n'a pas été demandée)
Puis j'essaye de sélectionner les feuilles dont j'ai récupéré le nom :
Mais c'est là que ça plante, car Excel n'aime pas ImpFeuil3 et Impfeuil4 qui
contiennent "" et me dit que ces deux feuilles n'existent pas...
Puis j'ai comme idée d'imprimer les feuilles sélectionnées :
ActiveWindow.SelectedSheets.PrintOut
Ce ne sont que des idées, apparemment pas très bonnes. Est-ce que quelqu'un
peut me donner un coup de main SVP ?
Merci d'avance pour vos précieux conseils.
Microsoft VBA Excel
Tu me conseilles d'imprimer les feuilles une par une, et ce n'est pas bête du tout ! Je me bornais à essayer d'imprimer toutes les feuilles d'un coup...
Je vais tester ta solution,
merci !!! "ru-th" a écrit dans le message de news: %
Salut
pas testé en supposant de B15 à B18 pour les true ou false et de c15 à c18 pour les noms de feuilles à imprimer for =i to 18 If Sheets("config").Range("B"& i).Value = True then sheets(Sheets("config").Range("c"& i).text).printout Sheets("config").Range("B"& i).Value = false endif next i
a+ rural thierry
"Microsoft VBA Excel" a écrit dans le message de news:%23B%
Bonjour à tous,
voici un petit casse tête pour les amoureux du VBA Excel :
je génère plusieurs feuilles par l'intermédiaire d'un userform. Je propose sur ce formulaire d'imprimer les feuilles après génération. Il y a 4 feuilles.
lorsque l'utilisateur coche une case "imprimer" concernant une feuille, la valeur "vrai" est stockée dans une cellule de mon classeur. Il y a donc 4 cellules dans lesquelles j'aurai au final soit faux, soit vrai.
Ma question : quel code dois-je utiliser pour demander à Excel d'imprimer les bonnes feuilles à imprimer ? (à savoir les feuilles dont la cellule "témoin" contient "vrai" ?
J'ai essayé de sélectionner les feuilles dont la cellule témoin est à "vrai", mais ma sélection ne fonctionne pas...
Voici mon ébauche de code :
'd'abord je teste s'il y a vrai ou faux dans la cellule "témoin"
If Sheets("config").Range("B15").Value = True Then ImpFeuil1 = "nom de la feuille 1" End if
je fais pareil pour les 4 feuilles.
Au final, j'avais l'idée d'obtenir 4 variables avec les noms ou non des feuilles à imprimer : ImpFeuil1 contient le nom de la feuille 1 (car elle a été demandée) ImpFeuil2 contient le nom de la feuille 2 (car elle a été demandée) ImpFeuil3 contient "" (car elle n'a pas été demandée) ImpFeuil4 contient "" (car elle n'a pas été demandée)
Puis j'essaye de sélectionner les feuilles dont j'ai récupéré le nom :
Mais c'est là que ça plante, car Excel n'aime pas ImpFeuil3 et Impfeuil4 qui
contiennent "" et me dit que ces deux feuilles n'existent pas...
Puis j'ai comme idée d'imprimer les feuilles sélectionnées :
ActiveWindow.SelectedSheets.PrintOut
Ce ne sont que des idées, apparemment pas très bonnes. Est-ce que quelqu'un
peut me donner un coup de main SVP ?
Merci d'avance pour vos précieux conseils.
Tu me conseilles d'imprimer les feuilles une par une, et ce n'est pas bête
du tout ! Je me bornais à essayer d'imprimer toutes les feuilles d'un
coup...
Je vais tester ta solution,
merci !!!
"ru-th" <ailleurs@nowhere.fr> a écrit dans le message de news:
%23RHhY9DoGHA.4240@TK2MSFTNGP02.phx.gbl...
Salut
pas testé
en supposant de B15 à B18 pour les true ou false et de c15 à c18 pour les
noms de feuilles à imprimer
for =i to 18
If Sheets("config").Range("B"& i).Value = True then
sheets(Sheets("config").Range("c"& i).text).printout
Sheets("config").Range("B"& i).Value = false
endif
next i
a+
rural thierry
"Microsoft VBA Excel" <gg.aa@free.fr> a écrit dans le message de
news:%23B%23mNkDoGHA.4688@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
voici un petit casse tête pour les amoureux du VBA Excel :
je génère plusieurs feuilles par l'intermédiaire d'un userform. Je
propose
sur ce formulaire d'imprimer les feuilles après génération. Il y a 4
feuilles.
lorsque l'utilisateur coche une case "imprimer" concernant une feuille,
la
valeur "vrai" est stockée dans une cellule de mon classeur. Il y a donc 4
cellules dans lesquelles j'aurai au final soit faux, soit vrai.
Ma question :
quel code dois-je utiliser pour demander à Excel d'imprimer les bonnes
feuilles à imprimer ? (à savoir les feuilles dont la cellule "témoin"
contient "vrai" ?
J'ai essayé de sélectionner les feuilles dont la cellule témoin est à
"vrai", mais ma sélection ne fonctionne pas...
Voici mon ébauche de code :
'd'abord je teste s'il y a vrai ou faux dans la cellule "témoin"
If Sheets("config").Range("B15").Value = True Then
ImpFeuil1 = "nom de la feuille 1"
End if
je fais pareil pour les 4 feuilles.
Au final, j'avais l'idée d'obtenir 4 variables avec les noms ou non des
feuilles à imprimer :
ImpFeuil1 contient le nom de la feuille 1 (car elle a été demandée)
ImpFeuil2 contient le nom de la feuille 2 (car elle a été demandée)
ImpFeuil3 contient "" (car elle n'a pas été demandée)
ImpFeuil4 contient "" (car elle n'a pas été demandée)
Puis j'essaye de sélectionner les feuilles dont j'ai récupéré le nom :
Tu me conseilles d'imprimer les feuilles une par une, et ce n'est pas bête du tout ! Je me bornais à essayer d'imprimer toutes les feuilles d'un coup...
Je vais tester ta solution,
merci !!! "ru-th" a écrit dans le message de news: %
Salut
pas testé en supposant de B15 à B18 pour les true ou false et de c15 à c18 pour les noms de feuilles à imprimer for =i to 18 If Sheets("config").Range("B"& i).Value = True then sheets(Sheets("config").Range("c"& i).text).printout Sheets("config").Range("B"& i).Value = false endif next i
a+ rural thierry
"Microsoft VBA Excel" a écrit dans le message de news:%23B%
Bonjour à tous,
voici un petit casse tête pour les amoureux du VBA Excel :
je génère plusieurs feuilles par l'intermédiaire d'un userform. Je propose sur ce formulaire d'imprimer les feuilles après génération. Il y a 4 feuilles.
lorsque l'utilisateur coche une case "imprimer" concernant une feuille, la valeur "vrai" est stockée dans une cellule de mon classeur. Il y a donc 4 cellules dans lesquelles j'aurai au final soit faux, soit vrai.
Ma question : quel code dois-je utiliser pour demander à Excel d'imprimer les bonnes feuilles à imprimer ? (à savoir les feuilles dont la cellule "témoin" contient "vrai" ?
J'ai essayé de sélectionner les feuilles dont la cellule témoin est à "vrai", mais ma sélection ne fonctionne pas...
Voici mon ébauche de code :
'd'abord je teste s'il y a vrai ou faux dans la cellule "témoin"
If Sheets("config").Range("B15").Value = True Then ImpFeuil1 = "nom de la feuille 1" End if
je fais pareil pour les 4 feuilles.
Au final, j'avais l'idée d'obtenir 4 variables avec les noms ou non des feuilles à imprimer : ImpFeuil1 contient le nom de la feuille 1 (car elle a été demandée) ImpFeuil2 contient le nom de la feuille 2 (car elle a été demandée) ImpFeuil3 contient "" (car elle n'a pas été demandée) ImpFeuil4 contient "" (car elle n'a pas été demandée)
Puis j'essaye de sélectionner les feuilles dont j'ai récupéré le nom :