j'ai créé un tableau pour des collègues.
Dans ce tableau, une cellule vérifie qu'il n'y a pas d'erreur dans le-dit
tableau.
(Elle afiche "controle OK" ou "Erreur")
Puis-je interdire l'impression du document (et l'impression uniquement, le
document doit quand meme pouvoir etre enregistré) ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
papou
Bonjour A adapter et à positionner dans ThisWorkbook : Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("Feuil1").Range("A1").Value = "Erreur" Then Cancel = True End Sub
Cordialement Pascal
"Fredo (67)" a écrit dans le message de news: %
Bonjour,
j'ai créé un tableau pour des collègues. Dans ce tableau, une cellule vérifie qu'il n'y a pas d'erreur dans le-dit tableau. (Elle afiche "controle OK" ou "Erreur")
Puis-je interdire l'impression du document (et l'impression uniquement, le document doit quand meme pouvoir etre enregistré) ?
Merci.
Bonjour
A adapter et à positionner dans ThisWorkbook :
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Worksheets("Feuil1").Range("A1").Value = "Erreur" Then Cancel = True
End Sub
Cordialement
Pascal
"Fredo (67)" <bidon@free.fr> a écrit dans le message de news:
%23rqKULhhGHA.3756@TK2MSFTNGP02.phx.gbl...
Bonjour,
j'ai créé un tableau pour des collègues.
Dans ce tableau, une cellule vérifie qu'il n'y a pas d'erreur dans le-dit
tableau.
(Elle afiche "controle OK" ou "Erreur")
Puis-je interdire l'impression du document (et l'impression uniquement, le
document doit quand meme pouvoir etre enregistré) ?
Bonjour A adapter et à positionner dans ThisWorkbook : Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("Feuil1").Range("A1").Value = "Erreur" Then Cancel = True End Sub
Cordialement Pascal
"Fredo (67)" a écrit dans le message de news: %
Bonjour,
j'ai créé un tableau pour des collègues. Dans ce tableau, une cellule vérifie qu'il n'y a pas d'erreur dans le-dit tableau. (Elle afiche "controle OK" ou "Erreur")
Puis-je interdire l'impression du document (et l'impression uniquement, le document doit quand meme pouvoir etre enregistré) ?
Merci.
Fredo(67)
Ok, j'ai essayé de l'intégrer mais y'a une faute : en fait voilà ce que je veux faire : 1- si la cellule E1 de la feuille SITUATIONS contient la valeur "ERREUR SUR FEUILLE DE SAISIE" ==> Affichage de l'information puis ARRET de la macro 2- si non ==> demande de la question suivante "VOULEZ VOUS UNE SAUVEGARDE AVANT IMPRESSION" 3- sauvegarde ou non puis impression
voilà mon code Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.", vbInformation Exit Sub Else Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select
End If End Sub
il m'affiche bien l'info, mais ne stoppe pas la macro, et lance la commande d'impression.
où se situe l'erreur ?
merci
Ok, j'ai essayé de l'intégrer mais y'a une faute :
en fait voilà ce que je veux faire :
1- si la cellule E1 de la feuille SITUATIONS contient la valeur "ERREUR
SUR FEUILLE DE SAISIE" ==> Affichage de l'information puis ARRET de la
macro
2- si non ==> demande de la question suivante "VOULEZ VOUS UNE
SAUVEGARDE AVANT IMPRESSION"
3- sauvegarde ou non puis impression
voilà mon code
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE
SAISIE" Then
MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.",
vbInformation
Exit Sub
Else
Dim msginvite As String, msgtitre As String
Dim msgboutons As Integer, msgresultat As Integer
msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER
?" & Chr(13) & "non=impression sans sauvegarde"
msgboutons = vbYesNo + vbQuestion + vbDefaultButton1
msgtitre = "IMPRESSION"
msgresultat = MsgBox(msginvite, msgboutons, msgtitre)
Select Case msgresultat
Case vbYes
ActiveWorkbook.Save
Case vbNo
End
End Select
End If
End Sub
il m'affiche bien l'info, mais ne stoppe pas la macro, et lance la
commande d'impression.
Ok, j'ai essayé de l'intégrer mais y'a une faute : en fait voilà ce que je veux faire : 1- si la cellule E1 de la feuille SITUATIONS contient la valeur "ERREUR SUR FEUILLE DE SAISIE" ==> Affichage de l'information puis ARRET de la macro 2- si non ==> demande de la question suivante "VOULEZ VOUS UNE SAUVEGARDE AVANT IMPRESSION" 3- sauvegarde ou non puis impression
voilà mon code Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.", vbInformation Exit Sub Else Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select
End If End Sub
il m'affiche bien l'info, mais ne stoppe pas la macro, et lance la commande d'impression.
où se situe l'erreur ?
merci
Fredo(67)
j'ai corrigé comme ceci : Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.", vbInformation Cancel = True Else Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select
End If End Sub
j'ai corrigé comme ceci :
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE
SAISIE" Then
MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.",
vbInformation
Cancel = True
Else
Dim msginvite As String, msgtitre As String
Dim msgboutons As Integer, msgresultat As Integer
msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER
?" & Chr(13) & "non=impression sans sauvegarde"
msgboutons = vbYesNo + vbQuestion + vbDefaultButton1
msgtitre = "IMPRESSION"
msgresultat = MsgBox(msginvite, msgboutons, msgtitre)
Select Case msgresultat
Case vbYes
ActiveWorkbook.Save
Case vbNo
End
End Select
j'ai corrigé comme ceci : Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.", vbInformation Cancel = True Else Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select
End If End Sub
papou
Re
Ce que je te suggère : Positionner ceci dans le code de ThisWorkbook : Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.",vbInformation Cancel = True Else Sauvegarde End if End Sub
Puis dans un module Sub Sauvegarde() Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select End Sub
Cordialement Pascal
"Fredo(67)" a écrit dans le message de news:
Ok, j'ai essayé de l'intégrer mais y'a une faute : en fait voilà ce que je veux faire : 1- si la cellule E1 de la feuille SITUATIONS contient la valeur "ERREUR SUR FEUILLE DE SAISIE" ==> Affichage de l'information puis ARRET de la macro 2- si non ==> demande de la question suivante "VOULEZ VOUS UNE SAUVEGARDE AVANT IMPRESSION" 3- sauvegarde ou non puis impression
voilà mon code Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.", vbInformation Exit Sub Else Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select
End If End Sub
il m'affiche bien l'info, mais ne stoppe pas la macro, et lance la commande d'impression.
où se situe l'erreur ?
merci
Re
Ce que je te suggère :
Positionner ceci dans le code de ThisWorkbook :
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE
SAISIE" Then
MsgBox "Erreur sur feuille" & Chr(13) & "Impression
impossible.",vbInformation
Cancel = True
Else
Sauvegarde
End if
End Sub
Puis dans un module
Sub Sauvegarde()
Dim msginvite As String, msgtitre As String
Dim msgboutons As Integer, msgresultat As Integer
msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER
?" & Chr(13) & "non=impression sans sauvegarde"
msgboutons = vbYesNo + vbQuestion + vbDefaultButton1
msgtitre = "IMPRESSION"
msgresultat = MsgBox(msginvite, msgboutons, msgtitre)
Select Case msgresultat
Case vbYes
ActiveWorkbook.Save
Case vbNo
End
End Select
End Sub
Cordialement
Pascal
"Fredo(67)" <frederic.seys@socara.net> a écrit dans le message de news:
1149234037.786237.287990@h76g2000cwa.googlegroups.com...
Ok, j'ai essayé de l'intégrer mais y'a une faute :
en fait voilà ce que je veux faire :
1- si la cellule E1 de la feuille SITUATIONS contient la valeur "ERREUR
SUR FEUILLE DE SAISIE" ==> Affichage de l'information puis ARRET de la
macro
2- si non ==> demande de la question suivante "VOULEZ VOUS UNE
SAUVEGARDE AVANT IMPRESSION"
3- sauvegarde ou non puis impression
voilà mon code
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE
SAISIE" Then
MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.",
vbInformation
Exit Sub
Else
Dim msginvite As String, msgtitre As String
Dim msgboutons As Integer, msgresultat As Integer
msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER
?" & Chr(13) & "non=impression sans sauvegarde"
msgboutons = vbYesNo + vbQuestion + vbDefaultButton1
msgtitre = "IMPRESSION"
msgresultat = MsgBox(msginvite, msgboutons, msgtitre)
Select Case msgresultat
Case vbYes
ActiveWorkbook.Save
Case vbNo
End
End Select
End If
End Sub
il m'affiche bien l'info, mais ne stoppe pas la macro, et lance la
commande d'impression.
Ce que je te suggère : Positionner ceci dans le code de ThisWorkbook : Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.",vbInformation Cancel = True Else Sauvegarde End if End Sub
Puis dans un module Sub Sauvegarde() Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select End Sub
Cordialement Pascal
"Fredo(67)" a écrit dans le message de news:
Ok, j'ai essayé de l'intégrer mais y'a une faute : en fait voilà ce que je veux faire : 1- si la cellule E1 de la feuille SITUATIONS contient la valeur "ERREUR SUR FEUILLE DE SAISIE" ==> Affichage de l'information puis ARRET de la macro 2- si non ==> demande de la question suivante "VOULEZ VOUS UNE SAUVEGARDE AVANT IMPRESSION" 3- sauvegarde ou non puis impression
voilà mon code Private Sub Workbook_BeforePrint(Cancel As Boolean) If Worksheets("situations").Range("e1").Value = "ERREUR SUR FEUILLE DE SAISIE" Then MsgBox "Erreur sur feuille" & Chr(13) & "Impression impossible.", vbInformation Exit Sub Else Dim msginvite As String, msgtitre As String Dim msgboutons As Integer, msgresultat As Integer msginvite = "VOULEZ-VOUS SAUVEGARDER AVANT D'IMPRIMER ?" & Chr(13) & "non=impression sans sauvegarde" msgboutons = vbYesNo + vbQuestion + vbDefaultButton1 msgtitre = "IMPRESSION" msgresultat = MsgBox(msginvite, msgboutons, msgtitre) Select Case msgresultat Case vbYes ActiveWorkbook.Save Case vbNo End End Select
End If End Sub
il m'affiche bien l'info, mais ne stoppe pas la macro, et lance la commande d'impression.