Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

formulaire personnalisé

7 réponses
Avatar
jo
Bonjour à vous,

J'ai créé un formulaire pour notre bureau à partir du formulaire message.
Lorsque je l'imprimais, toutes les informations de mes champs apparaîssaient
une en dessous de l'autre. Comme je voulais imprimer mon formulaire tel
qu'il apparaissait à l'écran, j'ai inséré ce code dans un bouton de contrôle:

Sub cmdPrint_Click()
Set oWordApp = CreateObject("Word.Application")
If oWordApp Is Nothing Then
MsgBox "Couldn't start Word."
Else
Dim oWordApp
Dim oWordDoc
Dim oBMs
Dim bolPrintBackground
' Open a new document.
Set oDoc = oWordApp.Documents.Add
' Set a page setup object variable.
Set oPS = oDoc.PageSetup
' Reduce the margins to .5" (36 points).
oPS.TopMargin = 36
oPS.BottomMargin = 36
oPS.LeftMargin = 36
oPS.RightMargin = 36
' Paste in the screen shot.
oWordApp.Selection.Paste
' Center the screen shot.
Const wdAlignParagraphCenter = 1
oDoc.Paragraphs(1).Alignment = wdAlignParagraphCenter
' Get the current Word setting for background printing.
bolPrintBackground = oWordApp.Options.PrintBackground
' Turn background printing off.
oWordApp.Options.PrintBackground = False
' Print the Word document.
oDoc.PrintOut
' Restore previous setting.
oWordApp.Options.PrintBackground = bolPrintBackground
' Close and do not save changes to the document.
Const wdDoNotSaveChanges = 0
oDoc.Close wdDoNotSaveChanges
' Close the Word instance.
oWordApp.Quit
' Clean up.
Set oPS = Nothing
Set oDoc = Nothing
Set oWordApp = Nothing
End If
End Sub


Or, je peux l'imprimer en tant que créateur du message. Si j'envoie ce
message, ma macro ne fonctionne plus et la personne qui reçoit le message ne
peut pas imprimer via mon bouton commande. Pourquoi?

Merci de m'aider

7 réponses

Avatar
Geo
Bonjour

Or, je peux l'imprimer en tant que créateur du message. Si j'envoie ce
message, ma macro ne fonctionne plus et la personne qui reçoit le message ne
peut pas imprimer via mon bouton commande. Pourquoi?



J'y connais rien en formulaires, mais je serais surpris que la macro
l'accompagne.
Elle est dans votre ThisOutlook ?

--
A+
Avatar
jo
Bonjour Geo,

En fait, c'est une macro que j'ai trouvé en faisait des recherches sur
internet. Elle fonctionne très bien dans un formulaire personnalisée, tant
que je n'ai pas envoyé ce formulaire par courriel... et je ne vois pas ce qui
pourrait l'empêcher d'imprimer une fois que je l'envoie!!

Merci de ton aide

"Geo" a écrit :

Bonjour

> Or, je peux l'imprimer en tant que créateur du message. Si j'envoie ce
> message, ma macro ne fonctionne plus et la personne qui reçoit le message ne
> peut pas imprimer via mon bouton commande. Pourquoi?

J'y connais rien en formulaires, mais je serais surpris que la macro
l'accompagne.
Elle est dans votre ThisOutlook ?

--
A+


.



Avatar
Geo
Bonsoir Jo

En fait, c'est une macro que j'ai trouvé en faisait des recherches sur
internet. Elle fonctionne très bien dans un formulaire personnalisée, tant
que je n'ai pas envoyé ce formulaire par courriel... et je ne vois pas ce qui
pourrait l'empêcher d'imprimer une fois que je l'envoie!!



Je ne suis pas certain d'avoir compris, mais votre macro n'est pas
envoyée avec le formulaire.
Donc votre correspondant ne peut pas l'exécuter puisqu'il ne l'a pas.

--
A+
Avatar
jo
eh.. bon point.... mais juste pour être certaine que je comprends bien:

dans mon formulaire, quand je l'ai crée, j'ai inséré un bouton commande.
J'ai ensuite cliqué sur "Visualiser le code" et dans cette fenêtre, j'ai tapé
la macro.

J'ai ensuite exécuté mon formulaire. La macro est où sinon dans le
formulaire?

J'ai ensuite rempli mon formulaire et j'ai cliquer sur mon bouton commande
et le tout a bien imprimé. Puis, je me suis ensuite envoyée le formulaire
par courriel et le bouton commande ne fonctionnait pas... alors, pourquoi ça
a fonctionné avant l'envoi par courriel et pas après ?...

Je suis vraiment confuse là... merci encore de m'aider!




"Geo" a écrit :

Bonsoir Jo

> En fait, c'est une macro que j'ai trouvé en faisait des recherches sur
> internet. Elle fonctionne très bien dans un formulaire personnalisée, tant
> que je n'ai pas envoyé ce formulaire par courriel... et je ne vois pas ce qui
> pourrait l'empêcher d'imprimer une fois que je l'envoie!!

Je ne suis pas certain d'avoir compris, mais votre macro n'est pas
envoyée avec le formulaire.
Donc votre correspondant ne peut pas l'exécuter puisqu'il ne l'a pas.

--
A+


.



Avatar
Geo
Bonjour

Comme je vous l'ai dit, je ne connais rien en formulaire, et un tout
petit peu en vba.

Les macros sont habituellement dans ThisOutlook qui correspond à un
fichier VbaProject.OTM sur l'ordinateur.

Donc vous pourriez vérifier si votre macro y est : Alt+F11 etc

Puis, je me suis ensuite envoyée le formulaire
par courriel et le bouton commande ne fonctionnait pas... alors, pourquoi ça
a fonctionné avant l'envoi par courriel et pas après ?...



Là je ne sais pas, si personne n'a d'expérience sur le sujet, il va
falloir s'y pencher.

--
A+
Avatar
Geo
Bonsoir

Après avoir tenté de lire l'aide Outlook, je ne suis pas plus avancé,
c'est un bazar pas possible, ils mélangent allègrement formulaires
Outlook et infopath, à se demander si les auteurs y connaissent quelque
chose.
Par contre, beaucoup plus intéressant et utilisable, la faq outlook où
il y a une page sur les formulaires :
http://faq-outlook.fr/articles.php?cat_id

J'en ai tiré au moins deux enseignements : votre code serait donc du
vbscript et non du vba, ce qui change pas mal de choses.
Et le formulaire doit être installé pour pouvoir être utilisé (merci
Olivier qui m'a indiqué cette piste)

Pas sur de vous avoir réellement aidé, mais si ça vous permet
d'avancer.

--
A+
Avatar
rick288
jo a écrit le 29/10/2009 à 15h02 :
Bonjour à vous,

J'ai créé un formulaire pour notre bureau à partir du
formulaire message.
Lorsque je l'imprimais, toutes les informations de mes champs
apparaîssaient
une en dessous de l'autre. Comme je voulais imprimer mon formulaire tel
qu'il apparaissait à l'écran, j'ai inséré ce code
dans un bouton de contrôle:

Sub cmdPrint_Click()
Set oWordApp = CreateObject("Word.Application")
If oWordApp Is Nothing Then
MsgBox "Couldn't start Word."
Else
Dim oWordApp
Dim oWordDoc
Dim oBMs
Dim bolPrintBackground
' Open a new document.
Set oDoc = oWordApp.Documents.Add
' Set a page setup object variable.
Set oPS = oDoc.PageSetup
' Reduce the margins to .5" (36 points).
oPS.TopMargin = 36
oPS.BottomMargin = 36
oPS.LeftMargin = 36
oPS.RightMargin = 36
' Paste in the screen shot.
oWordApp.Selection.Paste
' Center the screen shot.
Const wdAlignParagraphCenter = 1
oDoc.Paragraphs(1).Alignment = wdAlignParagraphCenter
' Get the current Word setting for background printing.
bolPrintBackground = oWordApp.Options.PrintBackground
' Turn background printing off.
oWordApp.Options.PrintBackground = False
' Print the Word document.
oDoc.PrintOut
' Restore previous setting.
oWordApp.Options.PrintBackground = bolPrintBackground
' Close and do not save changes to the document.
Const wdDoNotSaveChanges = 0
oDoc.Close wdDoNotSaveChanges
' Close the Word instance.
oWordApp.Quit
' Clean up.
Set oPS = Nothing
Set oDoc = Nothing
Set oWordApp = Nothing
End If
End Sub


Or, je peux l'imprimer en tant que créateur du message. Si j'envoie ce

message, ma macro ne fonctionne plus et la personne qui reçoit le
message ne
peut pas imprimer via mon bouton commande. Pourquoi?

Merci de m'aider


Salut

Ayant le même souci, je suis tombé sur votre topic,


J'ai créé un formulaire Outlook, et grâce à ce même bout de code piqué sur le site de Microsoft, il est possible d'imprimer simplement le formulaire.

Le probleme est que lorsqu'on envoie le formulaire, la personne qui le recoit ne peut pas l'imprimer, apparement car le code n'est pas transferé avec le formulaire.

Est il possible par un quelconque moyen de transférer également ce code ? C'est vraiment mal foutu leur systeme, j'aimerai bien en finir avec mon calvaire.