Après une impression, désélectionner toutes les feuilles qui l'ont été

Bonjour,

J'utilise ce code pour sélectionner toutes les feuilles qui contienne la chaine de caractère "Cadrage_".

Sub Btn_Aperçu_Impression_Total_Test()

Dim Feuille As Worksheet
For Each Feuille In ActiveWorkbook.Sheets
    If Feuille.Name Like "*" & "Cadrage_" & "*" Then Feuille.Select Replace:=False
Next Feuille

Application.CommandBars.ExecuteMso ("PrintPreviewAndPrint")

'activesheet.activate

End Sub

Problème: Les feuilles continuent d'être sélectionnées après l'impression et il ne faut pas.

J'ai essayé d'ajouter la ligne activesheet.activate après la ligne de preview de l'impression. Malheureusement ça ne fonctionne pas comme je voudrais. Vu que je suis encore dans la prévisualisation lorsque ma feuille est activée du coup ça n'imprime que ma feuille active...

J'ai déjà essayé d'ajouté un application.ontime avec pour instruction d'activer une autre feuille pour casser la sélectionner des autres, mais franchement pas pratique.

Je pensais qu'il existait un évènement after print, mais non...

Je suis à cours d'idée pour: Activer la feuille depuis laquelle j'ai lancé l'impression, après l'impression/Désélectionner mes feuilles sélectionnées pour l'impression, après l'impression

Merci pour votre aide

Bonsoir Matths

Sheets("NomFeuille").Select

A+

Bonsoir Bruno,

Pas compris, ça donne le même résultat que activate ^^

Bonjour Matths

VBA ne fait que ce qu'il est possible de faire manuellement

Si vous ne laissez que les 2 feuilles "Cadrage" forcément que ça ne peut fonctionner

A+

Bonjour Bruno

Avec ce code excel ne trouve aucun contenu à imprimer.

Donc il n'est pas possible de faire ce que j'ai besoin de faire ? =/

Impossible de désélectionner une sélection de plusieurs feuilles sans sélectionner ou activer autre chose ? :/

Pas d'autres méthodes pour imprimer plusieurs feuilles sans quelles soient sélectionnées ?

Merci beaucoup :)

Petit up ? :)

Après ça, si pas de réponse, j'en conclurai que ce que je souhaite faire n'est pas possible :/

Bonjour,

Sub Btn_Aperçu_Impression_Total_Test()
  Dim Feuille As Worksheet
  For Each Feuille In ActiveWorkbook.Sheets
    If Feuille.Name Like "*" & "Cadrage_" & "*" Then Feuille.Select Replace:=False
  Next Feuille
  Selection.PrintPreview
  Sheets(1).Activate
End Sub

Bonjour Bruno,

Merci tu m'as donné une piste que j'ai creusé et finalement cela fonctionne enfin !

Sub Btn_Aperçu_Impression_Cadrage_Total_Test()

Dim Feuille As Worksheet
For Each Feuille In ActiveWorkbook.Sheets
    If Feuille.Name Like "*" & "Cadrage_" & "*" Then Feuille.Select Replace:=False
Next Feuille

ActiveWindow.SelectedSheets.PrintPreview

Sheets("Cadrage_Enjeu").Select

End Sub

Alors ça n'est pas la même fenêtre d'aperçu mais ça fonctionne. A l'issu de l'impression, en entrant en fin de procédure

Sheets("Cadrage_Enjeu").Select

La feuille en question est bien sélectionné APRES l'impression et non avant !

Merci :)

Rechercher des sujets similaires à "impression deselectionner toutes feuilles qui ont ete"