Message pour compléter cellule avant impression

Résolu/Fermé
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 - Modifié par ec163 le 27/05/2015 à 08:44
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 - 28 mai 2015 à 14:21
Bonjour,
je souhaiterais savoir comment faire dans calc pour empêcher l'impression d'un tableau si une cellule de ce tableau (par ex: C5) n'est pas complétée en indiquant à la personne que cette case est obligatoirement à renseigner pour l'impression (comme un msgbox sur excel). ci joint la macro excel qui serait à traduire en macro calc
Private Sub Workbook_Open()
MsgBox "N'oubliez pas vos noms et prénoms SVP"
End Sub
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Sheets("mois").Range("c5").Value = "" Then
Cancel = True
MsgBox "Nom et prénom SVP"
End If
End Sub
Pour info je ne connais pas les macros sur calc.
Par avance merci de votre aide.
ec163
A voir également:

2 réponses

yclik Messages postés 3587 Date d'inscription vendredi 25 juillet 2014 Statut Membre Dernière intervention 18 avril 2024 1 478
27 mai 2015 à 11:58
Bonjour
une proposition de solution
rentrer la macro suivante
sub test_impression
rem define variables
dim document   as object
dim oSheet as object 
dim NomPrenom as string
dim NomPrenomSaisie as string
' nom de la feuille
 oSheet = ThisComponent.sheets.GetByName("feuille1") 
' récupération des contenus de cellules
  NomPrenom=oSheet.getCellRangeByName ("C5").getstring
  'tests 
   If NomPrenom="" then  goto saisie_nom_prenom else GOTO Fin 
' etiquette pour saisie  
saisie_nom_prenom:
  NomPrenomSaisie=inputbox("veuillez renseigner Nom et prénom SVP")
 oSheet.getCellRangeByName("C5").String = NomPrenomSaisie

' etiquette pour fin
Fin: 
rem msgbox("Fin macro")

End Sub


Ensuite assigner la macro à l'évènement impression du document
Outils>Personnaliser
Onglet Evènement
-sélectionner : Imprimer le document
-Sous" Assigner" , Bouton "macro"
--sélectionner la macro précédemment enregistrée
--OK
-OK
0
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 32
27 mai 2015 à 13:32
Merci, ça fonctionne bien sauf que et oui il y a toujours un "sauf que". Si la personne décide de ne pas mettre son identité et de cliquer sur annuler pour faire disparaître le message, la feuille s'imprime tout de même..... Pourrais tu te pencher sur ce détail, et encore merci ça me dépanne déjà pas mal.
ec163
0
yclik Messages postés 3587 Date d'inscription vendredi 25 juillet 2014 Statut Membre Dernière intervention 18 avril 2024 1 478
27 mai 2015 à 16:03
re

sub test_impression_boucle
rem define variables
dim document   as object
dim oSheet as object 
dim NomPrenom as string
dim NomPrenomSaisie as string
' nom de la feuille
 oSheet = ThisComponent.sheets.GetByName("feuille1") 
' récupération des contenus de cellules
 verifier:
  NomPrenom=oSheet.getCellRangeByName ("C5").getstring
  'tests 
   If NomPrenom="" then  goto saisie_nom_prenom else GOTO Fin 
' etiquette pour saisie  
saisie_nom_prenom:
  NomPrenomSaisie=inputbox("veuillez renseigner Nom et prénom SVP")
 oSheet.getCellRangeByName("C5").String = NomPrenomSaisie
GOTO verifier
' etiquete pour fin
Fin: 
rem msgbox("Fin macro")

End Sub
0
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 32
28 mai 2015 à 08:54
Merci beaucoup Yclik, ça fonctionne très bien. Pourrais je abuser en te demandant un complément à cette macro. Je souhaiterais que la personne ne puisse pas enregistrer son document sans avoir renseigner son identité. Il s'agit en fait d'un tableau de pointage pour la grh et certains le renvoient sur papier quand d'autres l'enregistrent et nous le font parvenir par mail. En tout cas merci beaucoup encore pour ton aide précieuse et si tu as le temps de te pencher sur mon autre problème merci encore.
Cdt
ec163
0
yclik Messages postés 3587 Date d'inscription vendredi 25 juillet 2014 Statut Membre Dernière intervention 18 avril 2024 1 478 > ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022
28 mai 2015 à 12:19
bonjour
associer la macro à l'évènement "Enregistrement du document"
0
ec163 Messages postés 147 Date d'inscription jeudi 22 août 2013 Statut Membre Dernière intervention 27 septembre 2022 32
28 mai 2015 à 14:21
Cool!!! ça marche d'enfer
merci bcp Yclik, je mets le sujet en résolu!
@ +
ec163
0