OVH Cloud OVH Cloud

macro sous Word

5 réponses
Avatar
chrislio
Bonsoir,
J'aurais besoin d'aide dans la création d'une macro (il n'est peut-être pas
nécessaire de créer une macro d'ailleurs)qui me permettrait lorsqu'une
fenêtre de dialogue s'ouvre (à ma demande) que suivant ma réponse, elle
m'ouvre une autre boîte de dialogue me demandant d'entrer des données à un
certain endroit de mon document;
La première boîte de dialogue aurait donc un choix :
"oui" ou
"non" sur une question
Avec si "non" rien ne se passe et si "oui" et bien comme précisé ci-dessus.

Merci de votre aide.

Cdlt,
Chrislio

5 réponses

Avatar
Corona
Bonjour Chrislio,
Si tu dois afficher une boîte de dialogue avec Oui/Non qui appèle une
autre boîte de dialogue si tu réponds par 'oui' et ne fait rien si tu
réponds 'Non', ne serait-il pas plus simple de faire immédiatement appel à
la boîte de dialogue qui te permets de rentrer les données ?.

Voici un exemple qui mets à jour des signets nommé ("bmXxxxxx") par des
données remplies dans des 'TextBox' nommés ("Me.tpXxxxxxxx"), et ce dès que
l'on clique sur un 'CommandButton' appelé cbBoutonSave
J'espère que c'est clair.
Philippe

Private Sub cbBoutonSave_Click()
MajSignet "bmCompany", Me.tbCompany
MajSignet "bmContact", Me.tbContact
MajSignet "bmAdress", Me.tbAdress
MajSignet "bmCodePost", Me.tbPost
MajSignet "bmTown", Me.tbTown
MajSignet "bmProjectNr", Me.tbProject
MajSignet "bmQuotationNr", Me.tbQuotation
Unload Me
End Sub

Sub MajSignet(BookmarksName As String, Text As String)
Dim tBm As Range
On Error Resume Next ' au cas où NomSignet n'existerait pas
Set tBm = ActiveDocument.Bookmarks(BookmarksName).Range
tBm.Text = Text
ActiveDocument.Bookmarks.Add BookmarksName, tBm
End Sub


"chrislio" a écrit dans le message de
news:
Bonsoir,
J'aurais besoin d'aide dans la création d'une macro (il n'est peut-être
pas
nécessaire de créer une macro d'ailleurs)qui me permettrait lorsqu'une
fenêtre de dialogue s'ouvre (à ma demande) que suivant ma réponse, elle
m'ouvre une autre boîte de dialogue me demandant d'entrer des données à un
certain endroit de mon document;
La première boîte de dialogue aurait donc un choix :
"oui" ou
"non" sur une question
Avec si "non" rien ne se passe et si "oui" et bien comme précisé
ci-dessus.

Merci de votre aide.

Cdlt,
Chrislio



Avatar
chrislio
Bonjour,
Merci.
Mais à ta question 'ne serait-il pas plus simple de faire immédiatement
appel à la boîte de dialogue qui te permets de rentrer les données ?' je
répondrais non, car les personnes qui vont utiliser le document, ne
réfléchissent pas trop et sont capable de laisser des données qu'il ne faut
pas. D'où cet appelle de boîte de dialogue appelant une uatre boîte de
dialogue...c'est vraiment du aps à pas qu'il faut faire !! ;-)
Aurais-tu cette solution ?
Je retiens en tout cas ta première que je vais tester si j'arrive à
comprendre (car je ne suis pas une super pro)...
Merci beaucoup.

Cdlt,
Chrislio

"Corona" wrote:

Bonjour Chrislio,
Si tu dois afficher une boîte de dialogue avec Oui/Non qui appèle une
autre boîte de dialogue si tu réponds par 'oui' et ne fait rien si tu
réponds 'Non', ne serait-il pas plus simple de faire immédiatement appel à
la boîte de dialogue qui te permets de rentrer les données ?.

Voici un exemple qui mets à jour des signets nommé ("bmXxxxxx") par des
données remplies dans des 'TextBox' nommés ("Me.tpXxxxxxxx"), et ce dès que
l'on clique sur un 'CommandButton' appelé cbBoutonSave
J'espère que c'est clair.
Philippe

Private Sub cbBoutonSave_Click()
MajSignet "bmCompany", Me.tbCompany
MajSignet "bmContact", Me.tbContact
MajSignet "bmAdress", Me.tbAdress
MajSignet "bmCodePost", Me.tbPost
MajSignet "bmTown", Me.tbTown
MajSignet "bmProjectNr", Me.tbProject
MajSignet "bmQuotationNr", Me.tbQuotation
Unload Me
End Sub

Sub MajSignet(BookmarksName As String, Text As String)
Dim tBm As Range
On Error Resume Next ' au cas où NomSignet n'existerait pas
Set tBm = ActiveDocument.Bookmarks(BookmarksName).Range
tBm.Text = Text
ActiveDocument.Bookmarks.Add BookmarksName, tBm
End Sub


"chrislio" a écrit dans le message de
news:
Bonsoir,
J'aurais besoin d'aide dans la création d'une macro (il n'est peut-être
pas
nécessaire de créer une macro d'ailleurs)qui me permettrait lorsqu'une
fenêtre de dialogue s'ouvre (à ma demande) que suivant ma réponse, elle
m'ouvre une autre boîte de dialogue me demandant d'entrer des données à un
certain endroit de mon document;
La première boîte de dialogue aurait donc un choix :
"oui" ou
"non" sur une question
Avec si "non" rien ne se passe et si "oui" et bien comme précisé
ci-dessus.

Merci de votre aide.

Cdlt,
Chrislio








Avatar
Corona
Bonjour Chrislio,
Voilà une boite de dialogue qui appelle la boite de dialogue (userform)
nommé 'ufInfos', si l'utilisateur répond 'oui'.

Sub ModifCoordonnees()
Answ = MsgBox("Voulez-vous entrer des données ?", vbYesNo)
If Answ = vbYes Then ufInfos.Show
End Sub

Si tu souhaites que cette question vienne à l'ouverture de ton document
et en supposant que tu utilises un modèle, la macro est à installer dans la
procédure événementielle 'Document_New' de l'objet 'ThisDocument' .
Private Sub Document_New()
Answ = MsgBox("Voulez-vous entrer des données ?", vbYesNo)
If Answ = vbYes Then ufInfos.Show
End Sub

Si tu épouves des difficultés, je peux t'envoyer un exemple sur dans ta
boîte perso.
Philippe

"chrislio" a écrit dans le message de
news:
Bonjour,
Merci.
Mais à ta question 'ne serait-il pas plus simple de faire immédiatement
appel à la boîte de dialogue qui te permets de rentrer les données ?' je
répondrais non, car les personnes qui vont utiliser le document, ne
réfléchissent pas trop et sont capable de laisser des données qu'il ne
faut
pas. D'où cet appelle de boîte de dialogue appelant une uatre boîte de
dialogue...c'est vraiment du aps à pas qu'il faut faire !! ;-)
Aurais-tu cette solution ?
Je retiens en tout cas ta première que je vais tester si j'arrive à
comprendre (car je ne suis pas une super pro)...
Merci beaucoup.

Cdlt,
Chrislio

"Corona" wrote:

Bonjour Chrislio,
Si tu dois afficher une boîte de dialogue avec Oui/Non qui appèle une
autre boîte de dialogue si tu réponds par 'oui' et ne fait rien si tu
réponds 'Non', ne serait-il pas plus simple de faire immédiatement appel
à
la boîte de dialogue qui te permets de rentrer les données ?.

Voici un exemple qui mets à jour des signets nommé ("bmXxxxxx") par
des
données remplies dans des 'TextBox' nommés ("Me.tpXxxxxxxx"), et ce dès
que
l'on clique sur un 'CommandButton' appelé cbBoutonSave
J'espère que c'est clair.
Philippe

Private Sub cbBoutonSave_Click()
MajSignet "bmCompany", Me.tbCompany
MajSignet "bmContact", Me.tbContact
MajSignet "bmAdress", Me.tbAdress
MajSignet "bmCodePost", Me.tbPost
MajSignet "bmTown", Me.tbTown
MajSignet "bmProjectNr", Me.tbProject
MajSignet "bmQuotationNr", Me.tbQuotation
Unload Me
End Sub

Sub MajSignet(BookmarksName As String, Text As String)
Dim tBm As Range
On Error Resume Next ' au cas où NomSignet n'existerait pas
Set tBm = ActiveDocument.Bookmarks(BookmarksName).Range
tBm.Text = Text
ActiveDocument.Bookmarks.Add BookmarksName, tBm
End Sub


"chrislio" a écrit dans le message
de
news:
Bonsoir,
J'aurais besoin d'aide dans la création d'une macro (il n'est peut-être
pas
nécessaire de créer une macro d'ailleurs)qui me permettrait lorsqu'une
fenêtre de dialogue s'ouvre (à ma demande) que suivant ma réponse, elle
m'ouvre une autre boîte de dialogue me demandant d'entrer des données à
un
certain endroit de mon document;
La première boîte de dialogue aurait donc un choix :
"oui" ou
"non" sur une question
Avec si "non" rien ne se passe et si "oui" et bien comme précisé
ci-dessus.

Merci de votre aide.

Cdlt,
Chrislio










Avatar
chrislio
Bonsoir Philippe,

Merci de ton aide.
J'ai inséré les données comme tu le disais mais çe ne marche pas...sûrement
des erreurs de ma part.
Je te donne mon adresse perso afin d'examiné un exemple concret :


Merci beaucoup et bonne soirée !
Chrislio

"Corona" wrote:

Bonjour Chrislio,
Voilà une boite de dialogue qui appelle la boite de dialogue (userform)
nommé 'ufInfos', si l'utilisateur répond 'oui'.

Sub ModifCoordonnees()
Answ = MsgBox("Voulez-vous entrer des données ?", vbYesNo)
If Answ = vbYes Then ufInfos.Show
End Sub

Si tu souhaites que cette question vienne à l'ouverture de ton document
et en supposant que tu utilises un modèle, la macro est à installer dans la
procédure événementielle 'Document_New' de l'objet 'ThisDocument' .
Private Sub Document_New()
Answ = MsgBox("Voulez-vous entrer des données ?", vbYesNo)
If Answ = vbYes Then ufInfos.Show
End Sub

Si tu épouves des difficultés, je peux t'envoyer un exemple sur dans ta
boîte perso.
Philippe

"chrislio" a écrit dans le message de
news:
Bonjour,
Merci.
Mais à ta question 'ne serait-il pas plus simple de faire immédiatement
appel à la boîte de dialogue qui te permets de rentrer les données ?' je
répondrais non, car les personnes qui vont utiliser le document, ne
réfléchissent pas trop et sont capable de laisser des données qu'il ne
faut
pas. D'où cet appelle de boîte de dialogue appelant une uatre boîte de
dialogue...c'est vraiment du aps à pas qu'il faut faire !! ;-)
Aurais-tu cette solution ?
Je retiens en tout cas ta première que je vais tester si j'arrive à
comprendre (car je ne suis pas une super pro)...
Merci beaucoup.

Cdlt,
Chrislio

"Corona" wrote:

Bonjour Chrislio,
Si tu dois afficher une boîte de dialogue avec Oui/Non qui appèle une
autre boîte de dialogue si tu réponds par 'oui' et ne fait rien si tu
réponds 'Non', ne serait-il pas plus simple de faire immédiatement appel
à
la boîte de dialogue qui te permets de rentrer les données ?.

Voici un exemple qui mets à jour des signets nommé ("bmXxxxxx") par
des
données remplies dans des 'TextBox' nommés ("Me.tpXxxxxxxx"), et ce dès
que
l'on clique sur un 'CommandButton' appelé cbBoutonSave
J'espère que c'est clair.
Philippe

Private Sub cbBoutonSave_Click()
MajSignet "bmCompany", Me.tbCompany
MajSignet "bmContact", Me.tbContact
MajSignet "bmAdress", Me.tbAdress
MajSignet "bmCodePost", Me.tbPost
MajSignet "bmTown", Me.tbTown
MajSignet "bmProjectNr", Me.tbProject
MajSignet "bmQuotationNr", Me.tbQuotation
Unload Me
End Sub

Sub MajSignet(BookmarksName As String, Text As String)
Dim tBm As Range
On Error Resume Next ' au cas où NomSignet n'existerait pas
Set tBm = ActiveDocument.Bookmarks(BookmarksName).Range
tBm.Text = Text
ActiveDocument.Bookmarks.Add BookmarksName, tBm
End Sub


"chrislio" a écrit dans le message
de
news:
Bonsoir,
J'aurais besoin d'aide dans la création d'une macro (il n'est peut-être
pas
nécessaire de créer une macro d'ailleurs)qui me permettrait lorsqu'une
fenêtre de dialogue s'ouvre (à ma demande) que suivant ma réponse, elle
m'ouvre une autre boîte de dialogue me demandant d'entrer des données à
un
certain endroit de mon document;
La première boîte de dialogue aurait donc un choix :
"oui" ou
"non" sur une question
Avec si "non" rien ne se passe et si "oui" et bien comme précisé
ci-dessus.

Merci de votre aide.

Cdlt,
Chrislio















Avatar
Clément Marcotte
Bonjour,

Je te donne mon adresse perso afin d'examiné un exemple concret :


Tu vas attirer le spam.

Il existe http://cjoint.com qui permet la transmission de fichiers,
sans être obligé de mettre son adresse en clair, à la disposition de
tous les robots écumeurs d'adresse.

La personne va sur le site Internet, télécharge son fichier, et donne
l'adresse que le site lui remet. (Valable 14 jours)