Zone d'impression selon cellule variables + impression + envoi mail
Résolu/Fermé
stitchbouck
Messages postés
129
Date d'inscription
mercredi 12 janvier 2011
Statut
Membre
Dernière intervention
7 novembre 2024
-
14 mars 2019 à 11:08
stitchbouck Messages postés 129 Date d'inscription mercredi 12 janvier 2011 Statut Membre Dernière intervention 7 novembre 2024 - 19 mars 2019 à 10:20
stitchbouck Messages postés 129 Date d'inscription mercredi 12 janvier 2011 Statut Membre Dernière intervention 7 novembre 2024 - 19 mars 2019 à 10:20
A voir également:
- Zone d'impression selon cellule variables + impression + envoi mail
- Spouleur d'impression - Guide
- Zone telechargement - Accueil - Outils
- Yahoo mail - Accueil - Mail
- Publipostage mail - Accueil - Word
- Impression livret word - Guide
2 réponses
stitchbouck
Messages postés
129
Date d'inscription
mercredi 12 janvier 2011
Statut
Membre
Dernière intervention
7 novembre 2024
2
18 mars 2019 à 15:33
18 mars 2019 à 15:33
Bon j'ai un peu amélioré le code il me semble, sans grand effet pour autant...
Ce code est mis dans un module, et mon bouton ActiveX appelle cette macro, mais que je lance la macro seule ou bien par le bouton, rien ne se passe !!
Je continue mes recherches, si quelqu'un voit ce qui cloche je suis preneur :)
Et je n'ai toujours aucune idée de comment faire apparaitre ma phrase, je pense qu'il faut que je l'inclue à la macro elle-même, un peu comme un texte de mail par vba.
bon, je continue.
Sub imprim()
'zone d'impression + impression
If Cells(6, 33) <> "" Then
Range("A1:H33").Select
ActiveSheet.PageSetup.PrintArea = "R1C1:R33C8"
Selection.PrintOut Copies:=2, Collate:=True
ElseIf Cells(6, 26) <> "" Then
Range("A1:H30").Select
ActiveSheet.PageSetup.PrintArea = "R1C1:R30C8"
Selection.PrintOut Copies:=2, Collate:=True
ElseIf Cells(6, 19) <> "" Then
Range("A1:H23").Select
ActiveSheet.PageSetup.PrintArea = "R1C1:R23C8"
Selection.PrintOut Copies:=2, Collate:=True
ElseIf Cells(6, 12) <> "" Then
Range("A1:H16").Select
ActiveSheet.PageSetup.PrintArea = "R1C1:R16C8"
Selection.PrintOut Copies:=2, Collate:=True
End If
ActiveSheet.PageSetup.PrintArea = ""
End Sub
Ce code est mis dans un module, et mon bouton ActiveX appelle cette macro, mais que je lance la macro seule ou bien par le bouton, rien ne se passe !!
Je continue mes recherches, si quelqu'un voit ce qui cloche je suis preneur :)
Et je n'ai toujours aucune idée de comment faire apparaitre ma phrase, je pense qu'il faut que je l'inclue à la macro elle-même, un peu comme un texte de mail par vba.
bon, je continue.
stitchbouck
Messages postés
129
Date d'inscription
mercredi 12 janvier 2011
Statut
Membre
Dernière intervention
7 novembre 2024
2
Modifié le 19 mars 2019 à 10:20
Modifié le 19 mars 2019 à 10:20
et finit ! finalement, j'ai réussit tout seul :)
Pour ma phrase que eje voulais à chaque fois, je l'ai mis en début de page plutôt qu'en fin. et je ne sais pas pk, mais l'enregistreur appelle ses plages "R1C1:R23C8" par exemple, et il n 'est pas capable de se relire lui-même !!
Bref, ce code fonctionne.
++
Sub imprim()
'zone d'impression + impression
If Range("F33") <> "" Then
Range("A1:H33").Select
ActiveSheet.PageSetup.PrintArea = "A1:H37"
Selection.PrintOut Copies:=2, Collate:=True
ElseIf Range("F26") <> "" Then
Range("A1:H30").Select
ActiveSheet.PageSetup.PrintArea = "A1:H30"
Selection.PrintOut Copies:=2, Collate:=True
ElseIf Range("F19") <> "" Then
Range("A1:H23").Select
ActiveSheet.PageSetup.PrintArea = "A1:H23"
Selection.PrintOut Copies:=2, Collate:=True
ElseIf Range("F12") <> "" Then
Range("A1:H16").Select
ActiveSheet.PageSetup.PrintArea = "A1:H16"
Selection.PrintOut Copies:=2, Collate:=True
End If
ActiveSheet.PageSetup.PrintArea = ""
End Sub
Pour ma phrase que eje voulais à chaque fois, je l'ai mis en début de page plutôt qu'en fin. et je ne sais pas pk, mais l'enregistreur appelle ses plages "R1C1:R23C8" par exemple, et il n 'est pas capable de se relire lui-même !!
Bref, ce code fonctionne.
++