impression sous conditions

D

David

Guest
Bonjour,

Je voudrais savoir s'il était possible de faire une macro qui nous permettrait d'imprimer tous les onglets sauf deux ou trois onglets.

Par exemple, j'ai un fichier qui est composé de 10 onglets (d'autres onglets se rajouteront au fur et à mesure de l'utilisation du tableau) et j'aimerais tous les imprimer sauf la feuil3, feuil5 , feuil7. (quelque soit le nombre d'onglet au total)

Est ce possible?
Merci

David
 

porcinet82

XLDnaute Barbatruc
Salut David,

Je ne suis pas sur du tout du résultat mais peut etre qu'avec la syntaxe suivante et un peu de chance sa peut fonctionner:

Code:
Sub Imprime()
Dim i As Byte

For i = 1 To Sheets.Count
    If Sheets(i).Name ? 'Feuil3' Or Sheets(i).Name ? 'Feuil5' Or Sheets(i).Name ? 'Feuil7' Then
        Sheets(i).PrintOut
    End If
Next i
End Sub

Tiens moi au courant.

@+

PS: Le forum n'accepte pas la syntaxe différent, donc je les ai remplacés par la lettre ?. Donc partout ou il y a un point d'interrogation, il faut mettre différent (signe inférieur puis supérieur)
 

Gael

XLDnaute Barbatruc
Bonjour David, bonjour Porcinet,

A partir d'un code de Thierry ou Hervé, je te propose la solution ci-dessous:

Code:
Sub Imprime()
Dim ws As Worksheet

Application.DisplayAlerts = False
For Each ws In Worksheets
    If ws.Name Dif 'Feuil3' And ws.Name Dif 'Feuil5' And ws.Name Dif 'Feuil7' Then
    Sheets(ws.Name).Select (False)
    End If
Next

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Application.DisplayAlerts = True

End Sub

Comme pour la réponse de Porcinet, tu remplace 'Dif' par inférieur supérieur.

La différence avec la solution de porcinet est que ce code sélectionne toutes les feuilles avant impression ce qui permet d'avoir une pagination continue.

@+

Gael
 
D

David

Guest
Rebonjour et merci à vous deux pour vos réponse

Pour le code de porcinet82 j'ai une erreur sur la ligne:
Sheets(i).PrintOut

Et pour celui de Gael, j'ai une erreur sur la ligne
Sheets(ws.Name).Select (False)

avez vous une solution pour palier a ces problèmes.

Merci

David
 

Discussions similaires