Impression sélectionnée

Le
Sunburn
Bonjour,
je voudrais savoir comment faire pour imprimer les pages selon un critère
très précis.
Mon classeur fais 30 pages.
Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
lesquelles la cellule A4 n'est pas "N/A".
J'espère que je me suis assez bien exprimer.
Merci pour l'aide, YANN
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #17243941
Bonjour.
Essaie :

Sub test()
For Each sh In Sheets
If Not Application.IsNA(sh.[A4]) Then
sh.PrintOut
End If
Next sh
End Sub

Cordialement.
Daniel
"Sunburn" news:
Bonjour,
je voudrais savoir comment faire pour imprimer les pages selon un critère
très précis.
Mon classeur fais 30 pages.
Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
lesquelles la cellule A4 n'est pas "N/A".
J'espère que je me suis assez bien exprimer.
Merci pour l'aide, YANN


Mishell
Le #17245701
Bonjour.

Pour compléter:
Sub test()
For i = 16 To 30
Set sh = Sheets(i)
If Not Application.IsNA(sh.[A4]) Then
Debug.Print sh.Name
sh.PrintOut
End If
Next
End Sub

Cordialement

Mishell

"Daniel.C" news:
Bonjour.
Essaie :

Sub test()
For Each sh In Sheets
If Not Application.IsNA(sh.[A4]) Then
sh.PrintOut
End If
Next sh
End Sub

Cordialement.
Daniel
"Sunburn" news:
Bonjour,
je voudrais savoir comment faire pour imprimer les pages selon un critère
très précis.
Mon classeur fais 30 pages.
Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
lesquelles la cellule A4 n'est pas "N/A".
J'espère que je me suis assez bien exprimer.
Merci pour l'aide, YANN






Sunburn
Le #17336121
Je vous remercie,
désolé pour le retard de réponse.

Bon, ça imprime toutes mes feuilles, même celles ou "NA" est saisi en
celulle A4.

Si vous pouvez de nouveau m'éclairer, merci
YANN


"Daniel.C" a écrit :

Bonjour.
Essaie :

Sub test()
For Each sh In Sheets
If Not Application.IsNA(sh.[A4]) Then
sh.PrintOut
End If
Next sh
End Sub

Cordialement.
Daniel
"Sunburn" news:
> Bonjour,
> je voudrais savoir comment faire pour imprimer les pages selon un critère
> très précis.
> Mon classeur fais 30 pages.
> Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
> lesquelles la cellule A4 n'est pas "N/A".
> J'espère que je me suis assez bien exprimer.
> Merci pour l'aide, YANN





Sunburn
Le #17336131
Je vous remercie,
désolé pour le retard de réponse.

Bon, ça imprime toutes mes feuilles, même celles ou "NA" est saisi en
celulle A4.

Si vous pouvez de nouveau m'éclairer, merci
YANN

"Mishell" a écrit :

Bonjour.

Pour compléter:
Sub test()
For i = 16 To 30
Set sh = Sheets(i)
If Not Application.IsNA(sh.[A4]) Then
Debug.Print sh.Name
sh.PrintOut
End If
Next
End Sub

Cordialement

Mishell

"Daniel.C" news:
> Bonjour.
> Essaie :
>
> Sub test()
> For Each sh In Sheets
> If Not Application.IsNA(sh.[A4]) Then
> sh.PrintOut
> End If
> Next sh
> End Sub
>
> Cordialement.
> Daniel
> "Sunburn" > news:
>> Bonjour,
>> je voudrais savoir comment faire pour imprimer les pages selon un critère
>> très précis.
>> Mon classeur fais 30 pages.
>> Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
>> lesquelles la cellule A4 n'est pas "N/A".
>> J'espère que je me suis assez bien exprimer.
>> Merci pour l'aide, YANN
>
>





Mishell
Le #17351361
Si la valeur de la cellule A4 est NA et non pas #N/A
remplace
If Not Application.IsNA(sh.[A4]) Then
par
If Not UCase(Trim(sh.Cells(4, 1).Value)) = "NA" Then

Mishell


"Sunburn" news:
Je vous remercie,
désolé pour le retard de réponse.

Bon, ça imprime toutes mes feuilles, même celles ou "NA" est saisi en
celulle A4.

Si vous pouvez de nouveau m'éclairer, merci
YANN

"Mishell" a écrit :

Bonjour.

Pour compléter:
Sub test()
For i = 16 To 30
Set sh = Sheets(i)
If Not Application.IsNA(sh.[A4]) Then
Debug.Print sh.Name
sh.PrintOut
End If
Next
End Sub

Cordialement

Mishell

"Daniel.C" news:
> Bonjour.
> Essaie :
>
> Sub test()
> For Each sh In Sheets
> If Not Application.IsNA(sh.[A4]) Then
> sh.PrintOut
> End If
> Next sh
> End Sub
>
> Cordialement.
> Daniel
> "Sunburn" > de
> news:
>> Bonjour,
>> je voudrais savoir comment faire pour imprimer les pages selon un
>> critère
>> très précis.
>> Mon classeur fais 30 pages.
>> Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
>> lesquelles la cellule A4 n'est pas "N/A".
>> J'espère que je me suis assez bien exprimer.
>> Merci pour l'aide, YANN
>
>







Sunburn
Le #17409981
Merci beaucoup, ça marche du tonner !!!
Yann

"Mishell" a écrit :

Si la valeur de la cellule A4 est NA et non pas #N/A
remplace
If Not Application.IsNA(sh.[A4]) Then
par
If Not UCase(Trim(sh.Cells(4, 1).Value)) = "NA" Then

Mishell


"Sunburn" news:
> Je vous remercie,
> désolé pour le retard de réponse.
>
> Bon, ça imprime toutes mes feuilles, même celles ou "NA" est saisi en
> celulle A4.
>
> Si vous pouvez de nouveau m'éclairer, merci
> YANN
>
> "Mishell" a écrit :
>
>> Bonjour.
>>
>> Pour compléter:
>> Sub test()
>> For i = 16 To 30
>> Set sh = Sheets(i)
>> If Not Application.IsNA(sh.[A4]) Then
>> Debug.Print sh.Name
>> sh.PrintOut
>> End If
>> Next
>> End Sub
>>
>> Cordialement
>>
>> Mishell
>>
>> "Daniel.C" >> news:
>> > Bonjour.
>> > Essaie :
>> >
>> > Sub test()
>> > For Each sh In Sheets
>> > If Not Application.IsNA(sh.[A4]) Then
>> > sh.PrintOut
>> > End If
>> > Next sh
>> > End Sub
>> >
>> > Cordialement.
>> > Daniel
>> > "Sunburn" >> > de
>> > news:
>> >> Bonjour,
>> >> je voudrais savoir comment faire pour imprimer les pages selon un
>> >> critère
>> >> très précis.
>> >> Mon classeur fais 30 pages.
>> >> Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
>> >> lesquelles la cellule A4 n'est pas "N/A".
>> >> J'espère que je me suis assez bien exprimer.
>> >> Merci pour l'aide, YANN
>> >
>> >
>>
>>
>>





Sunburn
Le #17410201
Oui, juste une dernière question:
pour imprimer de la page 16 à la dernière page, comment fais-t-on ?
Merci.
Yann

"Mishell" a écrit :

Si la valeur de la cellule A4 est NA et non pas #N/A
remplace
If Not Application.IsNA(sh.[A4]) Then
par
If Not UCase(Trim(sh.Cells(4, 1).Value)) = "NA" Then

Mishell


"Sunburn" news:
> Je vous remercie,
> désolé pour le retard de réponse.
>
> Bon, ça imprime toutes mes feuilles, même celles ou "NA" est saisi en
> celulle A4.
>
> Si vous pouvez de nouveau m'éclairer, merci
> YANN
>
> "Mishell" a écrit :
>
>> Bonjour.
>>
>> Pour compléter:
>> Sub test()
>> For i = 16 To 30
>> Set sh = Sheets(i)
>> If Not Application.IsNA(sh.[A4]) Then
>> Debug.Print sh.Name
>> sh.PrintOut
>> End If
>> Next
>> End Sub
>>
>> Cordialement
>>
>> Mishell
>>
>> "Daniel.C" >> news:
>> > Bonjour.
>> > Essaie :
>> >
>> > Sub test()
>> > For Each sh In Sheets
>> > If Not Application.IsNA(sh.[A4]) Then
>> > sh.PrintOut
>> > End If
>> > Next sh
>> > End Sub
>> >
>> > Cordialement.
>> > Daniel
>> > "Sunburn" >> > de
>> > news:
>> >> Bonjour,
>> >> je voudrais savoir comment faire pour imprimer les pages selon un
>> >> critère
>> >> très précis.
>> >> Mon classeur fais 30 pages.
>> >> Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
>> >> lesquelles la cellule A4 n'est pas "N/A".
>> >> J'espère que je me suis assez bien exprimer.
>> >> Merci pour l'aide, YANN
>> >
>> >
>>
>>
>>





Sunburn
Le #17410351
Euh, en fait, là, il bug à
-------
sh.printout
------
Alors, que quand je l'ai testé, ça marchait. C'est peut être la variable i
qui ne va pas, en effet, mon code est celui-là (dans un userform) :
-----
Private Sub Combobox1_Click()
Application.ScreenUpdating = False
Select Case Me.ComboBox1.Value
Case "Page en cours"
ThisWorkbook.IsAddin = False
ActiveSheet.PrintOut
Case "Tout le dossier général"
'imprime le dossier général
For I = 2 To 11
Set sh = Sheets(I)
If Not UCase(Trim(sh.Cells(4, 1).Value)) = "NA" Then
Debug.Print sh.Name
sh.PrintOut
End If
Next
Case "Tout le dossier de contrôle"
'Imprime le dossier de contrôle annuel + balance + fiches suiveuse, de la
page 16 à la dernière page
For I = 12 To 50
Set sh = Sheets(I)
If Not UCase(Trim(sh.Cells(4, 1).Value)) = "NA" Then
Debug.Print sh.Name
sh.PrintOut
End If
Next
End Select
End Sub
---------------
Merci
Sunburn
Le #17411871
Euh, non, ça ne plante en fait que quand mes feuilles sont cachées.
je vais décacher mes feuilles, imprimer, puis recacher mes feuilles, et ça
devrait aller.

En fait, je viens de tester, non ça ne fonctionne pas.
Comment faire pour que cela imprime les feuilles 16 à la dernière page du
classeur, même si elles sont cachées?
Merci.
YANN

"Mishell" a écrit :

Si la valeur de la cellule A4 est NA et non pas #N/A
remplace
If Not Application.IsNA(sh.[A4]) Then
par
If Not UCase(Trim(sh.Cells(4, 1).Value)) = "NA" Then

Mishell


"Sunburn" news:
> Je vous remercie,
> désolé pour le retard de réponse.
>
> Bon, ça imprime toutes mes feuilles, même celles ou "NA" est saisi en
> celulle A4.
>
> Si vous pouvez de nouveau m'éclairer, merci
> YANN
>
> "Mishell" a écrit :
>
>> Bonjour.
>>
>> Pour compléter:
>> Sub test()
>> For i = 16 To 30
>> Set sh = Sheets(i)
>> If Not Application.IsNA(sh.[A4]) Then
>> Debug.Print sh.Name
>> sh.PrintOut
>> End If
>> Next
>> End Sub
>>
>> Cordialement
>>
>> Mishell
>>
>> "Daniel.C" >> news:
>> > Bonjour.
>> > Essaie :
>> >
>> > Sub test()
>> > For Each sh In Sheets
>> > If Not Application.IsNA(sh.[A4]) Then
>> > sh.PrintOut
>> > End If
>> > Next sh
>> > End Sub
>> >
>> > Cordialement.
>> > Daniel
>> > "Sunburn" >> > de
>> > news:
>> >> Bonjour,
>> >> je voudrais savoir comment faire pour imprimer les pages selon un
>> >> critère
>> >> très précis.
>> >> Mon classeur fais 30 pages.
>> >> Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles pour
>> >> lesquelles la cellule A4 n'est pas "N/A".
>> >> J'espère que je me suis assez bien exprimer.
>> >> Merci pour l'aide, YANN
>> >
>> >
>>
>>
>>





Mishell
Le #17412651
Remplace sh.PrintOut
par
memVisible = sh.Visible
sh.Visible = True
sh.PrintOut
sh.Visible = memVisible

Mishell

"Sunburn" news:
Euh, non, ça ne plante en fait que quand mes feuilles sont cachées.
je vais décacher mes feuilles, imprimer, puis recacher mes feuilles, et ça
devrait aller.

En fait, je viens de tester, non ça ne fonctionne pas.
Comment faire pour que cela imprime les feuilles 16 à la dernière page du
classeur, même si elles sont cachées?
Merci.
YANN

"Mishell" a écrit :

Si la valeur de la cellule A4 est NA et non pas #N/A
remplace
If Not Application.IsNA(sh.[A4]) Then
par
If Not UCase(Trim(sh.Cells(4, 1).Value)) = "NA" Then

Mishell


"Sunburn" news:
> Je vous remercie,
> désolé pour le retard de réponse.
>
> Bon, ça imprime toutes mes feuilles, même celles ou "NA" est saisi en
> celulle A4.
>
> Si vous pouvez de nouveau m'éclairer, merci
> YANN
>
> "Mishell" a écrit :
>
>> Bonjour.
>>
>> Pour compléter:
>> Sub test()
>> For i = 16 To 30
>> Set sh = Sheets(i)
>> If Not Application.IsNA(sh.[A4]) Then
>> Debug.Print sh.Name
>> sh.PrintOut
>> End If
>> Next
>> End Sub
>>
>> Cordialement
>>
>> Mishell
>>
>> "Daniel.C" >> news:
>> > Bonjour.
>> > Essaie :
>> >
>> > Sub test()
>> > For Each sh In Sheets
>> > If Not Application.IsNA(sh.[A4]) Then
>> > sh.PrintOut
>> > End If
>> > Next sh
>> > End Sub
>> >
>> > Cordialement.
>> > Daniel
>> > "Sunburn" >> > message
>> > de
>> > news:
>> >> Bonjour,
>> >> je voudrais savoir comment faire pour imprimer les pages selon un
>> >> critère
>> >> très précis.
>> >> Mon classeur fais 30 pages.
>> >> Je voudrais imprimer les pagesde 16 à 30, mais uniquement celles
>> >> pour
>> >> lesquelles la cellule A4 n'est pas "N/A".
>> >> J'espère que je me suis assez bien exprimer.
>> >> Merci pour l'aide, YANN
>> >
>> >
>>
>>
>>







Publicité
Poster une réponse
Anonyme