Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Check before printing

ASNJ

XLDnaute Nouveau
Bonjour tout le monde,
Je commence avec les techniques VBA sous excel.
J'ai un fichier dont je veux quand ne peux l'imprimer que si un test est fait por verifier q'il n'y a aucune erreur sur tout une colonne.
Merci pour votre aide.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Check before printing

Bonjour ASNJ,
Je commence avec les techniques VBA sous excel.
J'ai un fichier dont je veux quand ne peux l'imprimer que si un test est fait por verifier q'il n'y a aucune erreur sur tout une colonne.
sans plus de précisions de ta part ........
...... et une meilleure construction de phrase

à+
Philippe
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Check before printing

Bonjour ASNJ, bonjour le forum,

Tu ne nous aides pas beaucoup... Peut-être avec cette macro événementielle du composant ThisWorkbook :
Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim cel As Range 'déclare la variable cel
Dim c As Integer 'déclare la variaable c (Colonne)
 
c = x 'ou x désigne le numéro de la colonne à traiter
With Sheets("Ton_Onglet") 'prend en compte l'onglet à traiter (à adapter à ton cas)
    For Each cel In .Range(.Cells(1, c), .Cells(applications.Rows.Count, c).End(xlUp)) 'boucle sur toutes les cellules éditées cel de la colonne c
        'si la cellule vaut "ton_critère", annule l'impression et sort de la procédure
        If cel.Value = "Ton_Critère" Then Cancel = True: Exit Sub
    Next cel 'prochaine cellule de la boucle
End Sub

[Édition]
Bonjour Philippe on s'est croisé.
 

ASNJ

XLDnaute Nouveau
Re : Check before printing


@ Robert j'ai essayé mais ça ne marche pas ça imprime à tous les coups, en fait pour mon cas j'ai mis une formule sur la colonne L pour verifier par une rechercheV que les données saisies existent vraiment (donc au retour de la formule pas de #NA) et verifier par la meme occasion que la cellule D3 n'est pas vide, si une des deux erreurs existe le fichier retourne un message d'erreur.
Merci d'avance.
 
Dernière édition:

TempusFugit

XLDnaute Impliqué
Re : Check before printing

Bonjour de nouveau


Ton fichier exemple ne contient aucune formule.
Or tu nous dis (dans l'autre discussion) :
La cellule D3 n'est pas vide.
La colonne voucher check ne présente aucune erreur au retour de la formule.
Dans le cas ou les 2 hypotheses sont fausses afficher un message
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Check before printing

Bonjour,

avec ce code:
Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim cel As Range
' test si D3 non-vide
If Sheets(1).[D3] = "" Then
MsgBox ("D3 est vide")
Cancel = True
Exit Sub
End If
' test si erreur en colonne L
For Each cel In Range("L8:L35")
On Error GoTo fin
test = Left(Str(cel), 1)
Next cel
Exit Sub

fin:
MsgBox ("il y a au moins une erreur en colonne L")
Cancel = True

End Sub
à+
Philippe
 

ASNJ

XLDnaute Nouveau
Re : Check before printing

@ phlaurent55 : merci pour votre réactivité d'apres ceque je peux lire sur votre code, tout doit marcher normalement sauf que ça imprime toujours à tous les coups, j'ai essayer de mettre le code dans la page VBA de la feuille, et meme en creant un module ou j'ai fait un copier coller ?
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Check before printing

Re, la solution la plus simple est de mettre ici ton fichier sans oublier les formules dans la colonne L

aide nous pour qu'on puisse t'aider efficacement

@TempusFugit,
@ASNJ: Peux-tu répondre, s'il te plait, à la question de mon précédent message ?
Où sont les formules dont tu parles ?
la réponse est "nulle part pour l'instant"

à+
Philippe
 

Discussions similaires

Réponses
10
Affichages
263
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…