Forcer saisie d'une cellule à l'ouverture du document
2 réponses
Cyril DUPONT
Je remet mon post ici :
Bonjour,
Il n'y a pas tout dans l'intitulé du message désolé pas assez de place ^^
Voici mon soucis :
Je souhaites forcer la saisie de plusieurs cellules excel d'une même feuille
avec "Private Sub Workbook_BeforeSave".
Pour cela j'affiche une msgbox qui prévient que telle ou telle cellule n'est
pas saisie.
Le problème est que je souhaiterais que la cellule soit vide à l'ouverture
du document par une autre personne... mais avec la macro je n'arrive pas à
enregistrer la feuille sans saisir ces cellules ^^.
C'est l'arroseur arrosé !!!
J'ai cherché un peu et grace à Corto (merci) voila ce que ça donne :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If [H7] = "" Then
MsgBox "La Cellule [Demandeur] n'est pas saisie"
Cancel = True
End If
If [F9] = "" Then
MsgBox "La Cellule [Client] n'est pas saisie"
Cancel = True
End If
Application.EnableEvents = False
ABCD.xls.Save
Application.EnableEvents = True
End Sub
Par contre :
J'arrive à enregistrer mon fichier sans désactiver le code et il fonctionne
quand je réouvre le fichier et que je veux l'enregistrer de nouveau...
Mais à la suite de mes msgbox il se produit une erreur et la ligne
avec le nom de mon fichier apparait en surbrillance :
ABCD.xls.Save
l'erreur est : erreur d'exécution '424' : objet requis
Et si je clique sur "Fin", je peux de nouveau enregistrer sans que mes
cellules soient saisie...
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
MichDenis
| ABCD.xls.Save
A ) si c'est le classeur dans lequel le code est écrit que tu veux fermer : ThisWorkbook.Save
B ) tu peux aussi utiliser ce type de syntaxe si le classeur que tu veux fermer existe et est OUVERT.
Workbooks("ABCD.xls").Save
"Cyril DUPONT" a écrit dans le message de news:
Je remet mon post ici :
Bonjour,
Il n'y a pas tout dans l'intitulé du message désolé pas assez de place ^^
Voici mon soucis :
Je souhaites forcer la saisie de plusieurs cellules excel d'une même feuille avec "Private Sub Workbook_BeforeSave". Pour cela j'affiche une msgbox qui prévient que telle ou telle cellule n'est pas saisie.
Le problème est que je souhaiterais que la cellule soit vide à l'ouverture du document par une autre personne... mais avec la macro je n'arrive pas à enregistrer la feuille sans saisir ces cellules ^^.
C'est l'arroseur arrosé !!!
J'ai cherché un peu et grace à Corto (merci) voila ce que ça donne :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If [H7] = "" Then MsgBox "La Cellule [Demandeur] n'est pas saisie" Cancel = True End If If [F9] = "" Then MsgBox "La Cellule [Client] n'est pas saisie" Cancel = True End If Application.EnableEvents = False ABCD.xls.Save Application.EnableEvents = True End Sub
Par contre :
J'arrive à enregistrer mon fichier sans désactiver le code et il fonctionne quand je réouvre le fichier et que je veux l'enregistrer de nouveau... Mais à la suite de mes msgbox il se produit une erreur et la ligne avec le nom de mon fichier apparait en surbrillance :
ABCD.xls.Save
l'erreur est : erreur d'exécution '424' : objet requis
Et si je clique sur "Fin", je peux de nouveau enregistrer sans que mes cellules soient saisie...
Cyril.
| ABCD.xls.Save
A ) si c'est le classeur dans lequel le code est écrit que tu veux fermer :
ThisWorkbook.Save
B ) tu peux aussi utiliser ce type de syntaxe si le classeur que tu veux fermer
existe et est OUVERT.
Workbooks("ABCD.xls").Save
"Cyril DUPONT" <CyrilDUPONT@discussions.microsoft.com> a écrit dans le message de news:
88EEB8C8-D47A-4BC8-A028-A04484114E3A@microsoft.com...
Je remet mon post ici :
Bonjour,
Il n'y a pas tout dans l'intitulé du message désolé pas assez de place ^^
Voici mon soucis :
Je souhaites forcer la saisie de plusieurs cellules excel d'une même feuille
avec "Private Sub Workbook_BeforeSave".
Pour cela j'affiche une msgbox qui prévient que telle ou telle cellule n'est
pas saisie.
Le problème est que je souhaiterais que la cellule soit vide à l'ouverture
du document par une autre personne... mais avec la macro je n'arrive pas à
enregistrer la feuille sans saisir ces cellules ^^.
C'est l'arroseur arrosé !!!
J'ai cherché un peu et grace à Corto (merci) voila ce que ça donne :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If [H7] = "" Then
MsgBox "La Cellule [Demandeur] n'est pas saisie"
Cancel = True
End If
If [F9] = "" Then
MsgBox "La Cellule [Client] n'est pas saisie"
Cancel = True
End If
Application.EnableEvents = False
ABCD.xls.Save
Application.EnableEvents = True
End Sub
Par contre :
J'arrive à enregistrer mon fichier sans désactiver le code et il fonctionne
quand je réouvre le fichier et que je veux l'enregistrer de nouveau...
Mais à la suite de mes msgbox il se produit une erreur et la ligne
avec le nom de mon fichier apparait en surbrillance :
ABCD.xls.Save
l'erreur est : erreur d'exécution '424' : objet requis
Et si je clique sur "Fin", je peux de nouveau enregistrer sans que mes
cellules soient saisie...
A ) si c'est le classeur dans lequel le code est écrit que tu veux fermer : ThisWorkbook.Save
B ) tu peux aussi utiliser ce type de syntaxe si le classeur que tu veux fermer existe et est OUVERT.
Workbooks("ABCD.xls").Save
"Cyril DUPONT" a écrit dans le message de news:
Je remet mon post ici :
Bonjour,
Il n'y a pas tout dans l'intitulé du message désolé pas assez de place ^^
Voici mon soucis :
Je souhaites forcer la saisie de plusieurs cellules excel d'une même feuille avec "Private Sub Workbook_BeforeSave". Pour cela j'affiche une msgbox qui prévient que telle ou telle cellule n'est pas saisie.
Le problème est que je souhaiterais que la cellule soit vide à l'ouverture du document par une autre personne... mais avec la macro je n'arrive pas à enregistrer la feuille sans saisir ces cellules ^^.
C'est l'arroseur arrosé !!!
J'ai cherché un peu et grace à Corto (merci) voila ce que ça donne :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If [H7] = "" Then MsgBox "La Cellule [Demandeur] n'est pas saisie" Cancel = True End If If [F9] = "" Then MsgBox "La Cellule [Client] n'est pas saisie" Cancel = True End If Application.EnableEvents = False ABCD.xls.Save Application.EnableEvents = True End Sub
Par contre :
J'arrive à enregistrer mon fichier sans désactiver le code et il fonctionne quand je réouvre le fichier et que je veux l'enregistrer de nouveau... Mais à la suite de mes msgbox il se produit une erreur et la ligne avec le nom de mon fichier apparait en surbrillance :
ABCD.xls.Save
l'erreur est : erreur d'exécution '424' : objet requis
Et si je clique sur "Fin", je peux de nouveau enregistrer sans que mes cellules soient saisie...
Cyril.
Cyril DUPONT
Merci de ta réponse mais en fait ce que je veux faire n'a pas l'air de plaire à tout le monde dans la société dans laquelle je travaille... Donc je laisse tomber, merci quand même... -- Cyril.
| ABCD.xls.Save
A ) si c'est le classeur dans lequel le code est écrit que tu veux fermer : ThisWorkbook.Save
B ) tu peux aussi utiliser ce type de syntaxe si le classeur que tu veux fermer existe et est OUVERT.
Workbooks("ABCD.xls").Save
"Cyril DUPONT" a écrit dans le message de news:
Je remet mon post ici :
Bonjour,
Il n'y a pas tout dans l'intitulé du message désolé pas assez de place ^^
Voici mon soucis :
Je souhaites forcer la saisie de plusieurs cellules excel d'une même feuille avec "Private Sub Workbook_BeforeSave". Pour cela j'affiche une msgbox qui prévient que telle ou telle cellule n'est pas saisie.
Le problème est que je souhaiterais que la cellule soit vide à l'ouverture du document par une autre personne... mais avec la macro je n'arrive pas à enregistrer la feuille sans saisir ces cellules ^^.
C'est l'arroseur arrosé !!!
J'ai cherché un peu et grace à Corto (merci) voila ce que ça donne :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If [H7] = "" Then MsgBox "La Cellule [Demandeur] n'est pas saisie" Cancel = True End If If [F9] = "" Then MsgBox "La Cellule [Client] n'est pas saisie" Cancel = True End If Application.EnableEvents = False ABCD.xls.Save Application.EnableEvents = True End Sub
Par contre :
J'arrive à enregistrer mon fichier sans désactiver le code et il fonctionne quand je réouvre le fichier et que je veux l'enregistrer de nouveau... Mais à la suite de mes msgbox il se produit une erreur et la ligne avec le nom de mon fichier apparait en surbrillance :
ABCD.xls.Save
l'erreur est : erreur d'exécution '424' : objet requis
Et si je clique sur "Fin", je peux de nouveau enregistrer sans que mes cellules soient saisie...
Cyril.
Merci de ta réponse mais en fait ce que je veux faire n'a pas l'air de plaire
à tout le monde dans la société dans laquelle je travaille...
Donc je laisse tomber, merci quand même...
--
Cyril.
| ABCD.xls.Save
A ) si c'est le classeur dans lequel le code est écrit que tu veux fermer :
ThisWorkbook.Save
B ) tu peux aussi utiliser ce type de syntaxe si le classeur que tu veux fermer
existe et est OUVERT.
Workbooks("ABCD.xls").Save
"Cyril DUPONT" <CyrilDUPONT@discussions.microsoft.com> a écrit dans le message de news:
88EEB8C8-D47A-4BC8-A028-A04484114E3A@microsoft.com...
Je remet mon post ici :
Bonjour,
Il n'y a pas tout dans l'intitulé du message désolé pas assez de place ^^
Voici mon soucis :
Je souhaites forcer la saisie de plusieurs cellules excel d'une même feuille
avec "Private Sub Workbook_BeforeSave".
Pour cela j'affiche une msgbox qui prévient que telle ou telle cellule n'est
pas saisie.
Le problème est que je souhaiterais que la cellule soit vide à l'ouverture
du document par une autre personne... mais avec la macro je n'arrive pas à
enregistrer la feuille sans saisir ces cellules ^^.
C'est l'arroseur arrosé !!!
J'ai cherché un peu et grace à Corto (merci) voila ce que ça donne :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If [H7] = "" Then
MsgBox "La Cellule [Demandeur] n'est pas saisie"
Cancel = True
End If
If [F9] = "" Then
MsgBox "La Cellule [Client] n'est pas saisie"
Cancel = True
End If
Application.EnableEvents = False
ABCD.xls.Save
Application.EnableEvents = True
End Sub
Par contre :
J'arrive à enregistrer mon fichier sans désactiver le code et il fonctionne
quand je réouvre le fichier et que je veux l'enregistrer de nouveau...
Mais à la suite de mes msgbox il se produit une erreur et la ligne
avec le nom de mon fichier apparait en surbrillance :
ABCD.xls.Save
l'erreur est : erreur d'exécution '424' : objet requis
Et si je clique sur "Fin", je peux de nouveau enregistrer sans que mes
cellules soient saisie...
Merci de ta réponse mais en fait ce que je veux faire n'a pas l'air de plaire à tout le monde dans la société dans laquelle je travaille... Donc je laisse tomber, merci quand même... -- Cyril.
| ABCD.xls.Save
A ) si c'est le classeur dans lequel le code est écrit que tu veux fermer : ThisWorkbook.Save
B ) tu peux aussi utiliser ce type de syntaxe si le classeur que tu veux fermer existe et est OUVERT.
Workbooks("ABCD.xls").Save
"Cyril DUPONT" a écrit dans le message de news:
Je remet mon post ici :
Bonjour,
Il n'y a pas tout dans l'intitulé du message désolé pas assez de place ^^
Voici mon soucis :
Je souhaites forcer la saisie de plusieurs cellules excel d'une même feuille avec "Private Sub Workbook_BeforeSave". Pour cela j'affiche une msgbox qui prévient que telle ou telle cellule n'est pas saisie.
Le problème est que je souhaiterais que la cellule soit vide à l'ouverture du document par une autre personne... mais avec la macro je n'arrive pas à enregistrer la feuille sans saisir ces cellules ^^.
C'est l'arroseur arrosé !!!
J'ai cherché un peu et grace à Corto (merci) voila ce que ça donne :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If [H7] = "" Then MsgBox "La Cellule [Demandeur] n'est pas saisie" Cancel = True End If If [F9] = "" Then MsgBox "La Cellule [Client] n'est pas saisie" Cancel = True End If Application.EnableEvents = False ABCD.xls.Save Application.EnableEvents = True End Sub
Par contre :
J'arrive à enregistrer mon fichier sans désactiver le code et il fonctionne quand je réouvre le fichier et que je veux l'enregistrer de nouveau... Mais à la suite de mes msgbox il se produit une erreur et la ligne avec le nom de mon fichier apparait en surbrillance :
ABCD.xls.Save
l'erreur est : erreur d'exécution '424' : objet requis
Et si je clique sur "Fin", je peux de nouveau enregistrer sans que mes cellules soient saisie...