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

Masquer une fenêtre Word

12 réponses
Avatar
ThierryP
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance
--
@+ thierryp

10 réponses

1 2
Avatar
michdenis
Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance
--
@+ thierryp
Avatar
ThierryP
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance

Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance


--
@+ thierryp

Avatar
michdenis
Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors là
tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance

Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance


--
@+ thierryp

Avatar
ThierryP
Comme d'hab, ...rien à redire et ça marche du premier coup!!!
Comment on fait pour être expert à la place de l'expert ??? :-))))))))

Merci beaucoup

Euh...Juste pour la beauté de la chose, peut-on masquer l'icône dans la
barre des tâches ??

@+ thierryp

Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors là
tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance


Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance





--
@+ thierryp


Avatar
michdenis
Bonjour Thierry,

C'est cette ligne de code qui en est responsable :
wApp.WindowState = wdWindowStateMinimize

Si tu ne veux rien voir, lorsque tu auras testé ta macro et que tout fonctionnera comme tu souhaites, tu utilises ceci:
La création d'un instance de l'application Word, ne la rend pas visible à moins d'utiliser ceci : WApp.visible = True . Si tu
n'insère pas cette ligne de code, tout sera invisible pour l'usager !
Set wApp = CreateObject("Word.Application")

'Tu enlèves quand tout ira bien
WApp.visible = True 'False


Salutations!



"ThierryP" a écrit dans le message de news: OZF$
Comme d'hab, ...rien à redire et ça marche du premier coup!!!
Comment on fait pour être expert à la place de l'expert ??? :-))))))))

Merci beaucoup

Euh...Juste pour la beauté de la chose, peut-on masquer l'icône dans la
barre des tâches ??

@+ thierryp

Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors

tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance


Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance





--
@+ thierryp


Avatar
ThierryP
Alors là, je sèche...parce que chez moi, je continue à voir le bouton
Word dans ma barre de tâches. Je suis sous W2K SP4 et Excel 2002. Mais
bon, ce n'est pas bien grave; je voulais juste éviter qu'un utilisateur
très novice s'inquiète de voir arriver des trucs tout seul sur son écran !!
Merci

@+ thierryp

Bonjour Thierry,

C'est cette ligne de code qui en est responsable :
wApp.WindowState = wdWindowStateMinimize

Si tu ne veux rien voir, lorsque tu auras testé ta macro et que tout fonctionnera comme tu souhaites, tu utilises ceci:
La création d'un instance de l'application Word, ne la rend pas visible à moins d'utiliser ceci : WApp.visible = True . Si tu
n'insère pas cette ligne de code, tout sera invisible pour l'usager !
Set wApp = CreateObject("Word.Application")

'Tu enlèves quand tout ira bien
WApp.visible = True 'False


Salutations!



"ThierryP" a écrit dans le message de news: OZF$
Comme d'hab, ...rien à redire et ça marche du premier coup!!!
Comment on fait pour être expert à la place de l'expert ??? :-))))))))

Merci beaucoup

Euh...Juste pour la beauté de la chose, peut-on masquer l'icône dans la
barre des tâches ??

@+ thierryp


Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors

tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance



Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance







--
@+ thierryp



Avatar
michdenis
Publie le code que tu utilises ...


Salutations!


"ThierryP" a écrit dans le message de news:
Alors là, je sèche...parce que chez moi, je continue à voir le bouton
Word dans ma barre de tâches. Je suis sous W2K SP4 et Excel 2002. Mais
bon, ce n'est pas bien grave; je voulais juste éviter qu'un utilisateur
très novice s'inquiète de voir arriver des trucs tout seul sur son écran !!
Merci

@+ thierryp

Bonjour Thierry,

C'est cette ligne de code qui en est responsable :
wApp.WindowState = wdWindowStateMinimize

Si tu ne veux rien voir, lorsque tu auras testé ta macro et que tout fonctionnera comme tu souhaites, tu utilises ceci:
La création d'un instance de l'application Word, ne la rend pas visible à moins d'utiliser ceci : WApp.visible = True . Si tu
n'insère pas cette ligne de code, tout sera invisible pour l'usager !
Set wApp = CreateObject("Word.Application")

'Tu enlèves quand tout ira bien
WApp.visible = True 'False


Salutations!



"ThierryP" a écrit dans le message de news: OZF$
Comme d'hab, ...rien à redire et ça marche du premier coup!!!
Comment on fait pour être expert à la place de l'expert ??? :-))))))))

Merci beaucoup

Euh...Juste pour la beauté de la chose, peut-on masquer l'icône dans la
barre des tâches ??

@+ thierryp


Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors

tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance



Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance







--
@+ thierryp



Avatar
Thierry
Pas pu répondre plus tôt...
En fait, le code est celui que j'ai déjà transmis, après il n'y a qu'une
boucle de recopie de cellule dans les signets et deux trois bricoles.
Mais ce n'est pas la première fois que j'ai un petit souci avec les
trucs genre screenupdating (mis à false mais sans effet) ou visible
úlse sans effet également.
Mais là, c'est un long week-end et ja vais tâcher d'oublier un peu tout
çà !!
En tous cas merci pour tout
@+ thierryp

Publie le code que tu utilises ...


Salutations!


"ThierryP" a écrit dans le message de news:
Alors là, je sèche...parce que chez moi, je continue à voir le bouton
Word dans ma barre de tâches. Je suis sous W2K SP4 et Excel 2002. Mais
bon, ce n'est pas bien grave; je voulais juste éviter qu'un utilisateur
très novice s'inquiète de voir arriver des trucs tout seul sur son écran !!
Merci

@+ thierryp


Bonjour Thierry,

C'est cette ligne de code qui en est responsable :
wApp.WindowState = wdWindowStateMinimize

Si tu ne veux rien voir, lorsque tu auras testé ta macro et que tout fonctionnera comme tu souhaites, tu utilises ceci:
La création d'un instance de l'application Word, ne la rend pas visible à moins d'utiliser ceci : WApp.visible = True . Si tu
n'insère pas cette ligne de code, tout sera invisible pour l'usager !
Set wApp = CreateObject("Word.Application")

'Tu enlèves quand tout ira bien
WApp.visible = True 'False


Salutations!



"ThierryP" a écrit dans le message de news: OZF$
Comme d'hab, ...rien à redire et ça marche du premier coup!!!
Comment on fait pour être expert à la place de l'expert ??? :-))))))))

Merci beaucoup

Euh...Juste pour la beauté de la chose, peut-on masquer l'icône dans la
barre des tâches ??

@+ thierryp



Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors

tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance




Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance











Avatar
michdenis
Eh bien Thierry,

Que vient faire ceci dans ta procédure :

Application.ScreenUpdating = False

Si tu choisis de ne pas afficher l'instance de Word, tout se déroulera en mémoire vive sans que l'usager n'y voit quoi que ce soit !

Je ne sais pas comment tu fais pour afficher l'instance de Word dans la barre des tâches puisque l'instance elle-même est invisible
!

Ceci est vrai pour le bout de code dont il est question sur ce fil.


Salutations!


"Thierry" a écrit dans le message de news:

Pas pu répondre plus tôt...
En fait, le code est celui que j'ai déjà transmis, après il n'y a qu'une
boucle de recopie de cellule dans les signets et deux trois bricoles.
Mais ce n'est pas la première fois que j'ai un petit souci avec les
trucs genre screenupdating (mis à false mais sans effet) ou visible
úlse sans effet également.
Mais là, c'est un long week-end et ja vais tâcher d'oublier un peu tout
çà !!
En tous cas merci pour tout
@+ thierryp

Publie le code que tu utilises ...


Salutations!


"ThierryP" a écrit dans le message de news:
Alors là, je sèche...parce que chez moi, je continue à voir le bouton
Word dans ma barre de tâches. Je suis sous W2K SP4 et Excel 2002. Mais
bon, ce n'est pas bien grave; je voulais juste éviter qu'un utilisateur
très novice s'inquiète de voir arriver des trucs tout seul sur son écran !!
Merci

@+ thierryp


Bonjour Thierry,

C'est cette ligne de code qui en est responsable :
wApp.WindowState = wdWindowStateMinimize

Si tu ne veux rien voir, lorsque tu auras testé ta macro et que tout fonctionnera comme tu souhaites, tu utilises ceci:
La création d'un instance de l'application Word, ne la rend pas visible à moins d'utiliser ceci : WApp.visible = True . Si tu
n'insère pas cette ligne de code, tout sera invisible pour l'usager !
Set wApp = CreateObject("Word.Application")

'Tu enlèves quand tout ira bien
WApp.visible = True 'False


Salutations!



"ThierryP" a écrit dans le message de news: OZF$
Comme d'hab, ...rien à redire et ça marche du premier coup!!!
Comment on fait pour être expert à la place de l'expert ??? :-))))))))

Merci beaucoup

Euh...Juste pour la beauté de la chose, peut-on masquer l'icône dans la
barre des tâches ??

@+ thierryp



Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors

tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance




Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance











Avatar
Thierry
Re-bonjour/soir michdenis,
Si je fais ça chez moi (XP +Excel 2002):
Sub Publipostage()
Dim Fichier As Variant
Dim wApp As Word.Application, wDoc As Word.Document
Set wApp = CreateObject("Word.Application")
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
If Fichier = Faux Then Exit Sub

effectivement, rien n'apparait dans ma barre de tâches...La même chose
au boulot...j'ai le bouton en barre de tâches...
Ben je crois qu'il va falloir que je reprenne tout ça à tête
reposée....3 jours de week-end, 3 jours de déplacement, après on y verra
plus clair !!!
Je reposterais si nécessaire

Merci
@+ thierryp

Eh bien Thierry,

Que vient faire ceci dans ta procédure :

Application.ScreenUpdating = False

Si tu choisis de ne pas afficher l'instance de Word, tout se déroulera en mémoire vive sans que l'usager n'y voit quoi que ce soit !

Je ne sais pas comment tu fais pour afficher l'instance de Word dans la barre des tâches puisque l'instance elle-même est invisible
!

Ceci est vrai pour le bout de code dont il est question sur ce fil.


Salutations!


"Thierry" a écrit dans le message de news:

Pas pu répondre plus tôt...
En fait, le code est celui que j'ai déjà transmis, après il n'y a qu'une
boucle de recopie de cellule dans les signets et deux trois bricoles.
Mais ce n'est pas la première fois que j'ai un petit souci avec les
trucs genre screenupdating (mis à false mais sans effet) ou visible
úlse sans effet également.
Mais là, c'est un long week-end et ja vais tâcher d'oublier un peu tout
çà !!
En tous cas merci pour tout
@+ thierryp


Publie le code que tu utilises ...


Salutations!


"ThierryP" a écrit dans le message de news:
Alors là, je sèche...parce que chez moi, je continue à voir le bouton
Word dans ma barre de tâches. Je suis sous W2K SP4 et Excel 2002. Mais
bon, ce n'est pas bien grave; je voulais juste éviter qu'un utilisateur
très novice s'inquiète de voir arriver des trucs tout seul sur son écran !!
Merci

@+ thierryp



Bonjour Thierry,

C'est cette ligne de code qui en est responsable :
wApp.WindowState = wdWindowStateMinimize

Si tu ne veux rien voir, lorsque tu auras testé ta macro et que tout fonctionnera comme tu souhaites, tu utilises ceci:
La création d'un instance de l'application Word, ne la rend pas visible à moins d'utiliser ceci : WApp.visible = True . Si tu
n'insère pas cette ligne de code, tout sera invisible pour l'usager !
Set wApp = CreateObject("Word.Application")

'Tu enlèves quand tout ira bien
WApp.visible = True 'False


Salutations!



"ThierryP" a écrit dans le message de news: OZF$
Comme d'hab, ...rien à redire et ça marche du premier coup!!!
Comment on fait pour être expert à la place de l'expert ??? :-))))))))

Merci beaucoup

Euh...Juste pour la beauté de la chose, peut-on masquer l'icône dans la
barre des tâches ??

@+ thierryp




Bonjour Thierry,

Dans ta macro d'automation, utilise ceci pour retrouver ton fichier et pour l'ouvrir :
Tu dois avoir recours à ton instance pour ouvrir ton fichier si tu veux demeurer en contrôle de cette dernière.

Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
Set wDoc = wApp.documents.Open(Fichier)

Attention de ne pas mettre des On Error Resume Next lors du développement. Tu vas avoir plus de difficulté à identifier ce qui ne
fonctionne pas. Si tu idenfies à la fin de ton développement, que dans certaines circonstances, il peut y avoir problèmes, Alors

tu peux avoir recours à cette formulation : On error resume next ... il est toujours préférable de savoir pourquoi on l'utilise !

Ta macro débuterait comme ceci :
'---------------------------------
Sub Publipostage()

Dim Fichier as Variant
Dim wApp As Word.Application, wDoc As Word.Document

Set wApp = CreateObject("Word.Application")
WApp.visible = True 'False lorsque tout ira bien
Fichier = Application.GetOpenFilename("Word(*.doc), *.doc")
if Fichier = "Faux Then GoTo Fin
Set wDoc = wApp.documents.Open(mondoc)

wApp.WindowState = wdWindowStateMinimize


Salutations!



"ThierryP" a écrit dans le message de news:
Merci de me répondre michdenis,

Ma proc ressemble fortement à la tienne,... mais ma fenêtre Word reste
apparente :-((((
Voici à quoi elle ressemble :
Sub Publipostage()
Dim wApp As Word.Application, wDoc As Word.Document
On Error Resume Next
Range("D2").Select
Set wApp = CreateObject("Word.Application")
wApp.Dialogs(wdDialogFileOpen).Show ("C:mes Documents")
Fichier = wApp.ActiveDocument.Name
If Fichier = "" Then GoTo Fin
On Error GoTo 0
wApp.Visible = False
wApp.WindowState = wdWindowStateMinimize
wApp.ScreenUpdating = False
Do While Not IsEmpty(ActiveCell)
Set wDoc = wApp.Documents.Open(Fichier)
etc...etc...
J'ai même essayé de la réduire mais rien n'y fait.....Aurais-je droit à
un petit bug personnel pour moi tout seul ???????
Y a-t-il un truc à cocher quelque part ????????

Merci d'avance





Bonjour ThierryP,

Si tu utilises ce type de code, tu ne devrais pas avoir de la difficulté à faire ce que tu veux !
Il est préférable de débuter tes tests en laissant l'application visible.
Lorsque tout est au point, tu peux la rendre invisible

'--------------------------------
Sub test()

Dim Wd As Object
Dim Doc As Object

Set Wd = CreateObject("Word.Application")
Wd.Visible = True ' Or False
Set Doc = Wd.documents.Open("c:Atravail32-64bit_install.doc")

'Tu ajoutes le code ici pour lancer la macro de ton document


'Sauvegarde du document
Doc.Save
'Ferme le document
Doc.Close
'Fermeture de l'instance d'excel
Wd.Quit

End Sub
'--------------------------------


Salutations!


"ThierryP" a écrit dans le message de news:
Bonjour à tou(te)s

Par VBA, je lance une instance Word pour faire un mini mailing. Je
voudrais que la fenêtre soit masquée pendant le déroulement de la macro,
donc je fais un Application.visible = false mais la fenêtre est toujours
affichée....Une petite piste à me donner ????

Merci d'avance














1 2