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
Bonjour,
'Déclaration de 2 variables dans le haut du module standard Public Wd As Object Dc As document
La procédure suivante, utilise une instance de l'application Word pour ouvrir le fichier s'il existe ou crée une nouvelle instance de Word si cette dernière est fermée pour crée ou ouvrir le fichier.
La Variable Dc représente le fichier, tu peux l'utiliser aussi souvent que tu désires dans autant de procédure que tu veux et le fichier va demeurer ouvert aussi longtemps que tu ne passeras pas la ligne de commande : Dc.close ou que tu le fermes manuellement.
'--------------------------------------------- Sub test()
Dim Fichier As String Fichier = "c:LecheminNotes.doc" 'à définir On Error Resume Next Set Wd = GetObject(",Word.Application") If Err <> 0 Then GoTo 0 Set Wd = CreateObject("Word.Application") End If Wd.Visible = True
If Dir(Fichier) <> "" Then Set Dc = Wd.documents.Open(Fichier) Else Set Dc = Wd.documents.Add Dc.SaveAs Fichier End If End Sub '---------------------------------------------
"TILLOUX" a écrit dans le message de groupe de discussion :
Bonsoir,
Je suis dans Excel 2003 et j'ai créé un bouton N qui fait ceci :
- Ouvrir Word 2003 - Ouvrir ou créer si besoin le fichier Notes.doc - Aller dans Word et activer le document Notes (Excel reste ouvert)
Quand je clique sur N, tout va bien. Je me retrouve dans Notes.
Je voudrais faire un bouton dans Word pour :
Enregistrer Notes et le fermer Repasser dans Excel mais sans fermer Word car j'y retourne souvent.
Le problème est là. J'arrive pas à passer de Word à Excel sans fermer Word !!
Merci d'avance pour votre aide.
Tilloux.
Bonjour,
'Déclaration de 2 variables dans le haut du module standard
Public Wd As Object
Dc As document
La procédure suivante, utilise une instance de l'application Word
pour ouvrir le fichier s'il existe ou crée une nouvelle instance de Word
si cette dernière est fermée pour crée ou ouvrir le fichier.
La Variable Dc représente le fichier, tu peux l'utiliser aussi souvent
que tu désires dans autant de procédure que tu veux et le fichier
va demeurer ouvert aussi longtemps que tu ne passeras pas la
ligne de commande : Dc.close ou que tu le fermes manuellement.
'---------------------------------------------
Sub test()
Dim Fichier As String
Fichier = "c:LecheminNotes.doc" 'à définir
On Error Resume Next
Set Wd = GetObject(",Word.Application")
If Err <> 0 Then GoTo 0
Set Wd = CreateObject("Word.Application")
End If
Wd.Visible = True
If Dir(Fichier) <> "" Then
Set Dc = Wd.documents.Open(Fichier)
Else
Set Dc = Wd.documents.Add
Dc.SaveAs Fichier
End If
End Sub
'---------------------------------------------
"TILLOUX" <nospam-tilloux@bluewin.ch> a écrit dans le message de groupe de discussion :
uTYRoODqKHA.5328@TK2MSFTNGP04.phx.gbl...
Bonsoir,
Je suis dans Excel 2003 et j'ai créé un bouton N qui fait ceci :
- Ouvrir Word 2003
- Ouvrir ou créer si besoin le fichier Notes.doc
- Aller dans Word et activer le document Notes (Excel reste ouvert)
Quand je clique sur N, tout va bien. Je me retrouve dans Notes.
Je voudrais faire un bouton dans Word pour :
Enregistrer Notes et le fermer
Repasser dans Excel mais sans fermer Word car j'y retourne souvent.
Le problème est là. J'arrive pas à passer de Word à Excel sans fermer Word
!!
'Déclaration de 2 variables dans le haut du module standard Public Wd As Object Dc As document
La procédure suivante, utilise une instance de l'application Word pour ouvrir le fichier s'il existe ou crée une nouvelle instance de Word si cette dernière est fermée pour crée ou ouvrir le fichier.
La Variable Dc représente le fichier, tu peux l'utiliser aussi souvent que tu désires dans autant de procédure que tu veux et le fichier va demeurer ouvert aussi longtemps que tu ne passeras pas la ligne de commande : Dc.close ou que tu le fermes manuellement.
'--------------------------------------------- Sub test()
Dim Fichier As String Fichier = "c:LecheminNotes.doc" 'à définir On Error Resume Next Set Wd = GetObject(",Word.Application") If Err <> 0 Then GoTo 0 Set Wd = CreateObject("Word.Application") End If Wd.Visible = True
If Dir(Fichier) <> "" Then Set Dc = Wd.documents.Open(Fichier) Else Set Dc = Wd.documents.Add Dc.SaveAs Fichier End If End Sub '---------------------------------------------
"TILLOUX" a écrit dans le message de groupe de discussion :
Bonsoir,
Je suis dans Excel 2003 et j'ai créé un bouton N qui fait ceci :
- Ouvrir Word 2003 - Ouvrir ou créer si besoin le fichier Notes.doc - Aller dans Word et activer le document Notes (Excel reste ouvert)
Quand je clique sur N, tout va bien. Je me retrouve dans Notes.
Je voudrais faire un bouton dans Word pour :
Enregistrer Notes et le fermer Repasser dans Excel mais sans fermer Word car j'y retourne souvent.
Le problème est là. J'arrive pas à passer de Word à Excel sans fermer Word !!
Merci d'avance pour votre aide.
Tilloux.
michdenis
Pour les 2 variables : Public Wd As Object Public Dc As document
Pour les 2 variables :
Public Wd As Object
Public Dc As document
Pour les 2 variables : Public Wd As Object Public Dc As document
TILLOUX
Merci pour ta réponse. J'ai utilisé ton code pour ouvrir un doc. Word depuis Excel et ça marche très bien.
Dans Excel VBA on a l'instruction : Application.ActivateMicrosoftApp xlmicrosoftWord
je l'ai ajoutée et ça fait passer la main à Word. Je me retrouve dans Word avec mon doc. ouvert. Tout est ok.
Par contre je ne trouve pas l'équivalent dans VBA Word pour revenir à Excel.
Créer un objet Excel et l'activer ne rend pas la main à excel. Il faut pratiquement quitter Word (application.quit) pour que Excel revienne actif. Il y a sûrement une façon de rendre la main à Excel sans fermer Word mais comment ?
Merci de ton aide.
Tilloux
"michdenis" a écrit dans le message de news: eC$
Pour les 2 variables : Public Wd As Object Public Dc As document
Merci pour ta réponse. J'ai utilisé ton code pour ouvrir un doc. Word depuis
Excel et ça marche très bien.
Dans Excel VBA on a l'instruction :
Application.ActivateMicrosoftApp xlmicrosoftWord
je l'ai ajoutée et ça fait passer la main à Word. Je me retrouve dans Word
avec mon doc. ouvert. Tout est ok.
Par contre je ne trouve pas l'équivalent dans VBA Word pour revenir à Excel.
Créer un objet Excel et l'activer ne rend pas la main à excel. Il faut
pratiquement quitter Word (application.quit) pour que Excel revienne actif.
Il y a sûrement une façon de rendre la main à Excel sans fermer Word mais
comment ?
Merci de ton aide.
Tilloux
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
eC$zmrDqKHA.1548@TK2MSFTNGP02.phx.gbl...
Pour les 2 variables :
Public Wd As Object
Public Dc As document
Merci pour ta réponse. J'ai utilisé ton code pour ouvrir un doc. Word depuis Excel et ça marche très bien.
Dans Excel VBA on a l'instruction : Application.ActivateMicrosoftApp xlmicrosoftWord
je l'ai ajoutée et ça fait passer la main à Word. Je me retrouve dans Word avec mon doc. ouvert. Tout est ok.
Par contre je ne trouve pas l'équivalent dans VBA Word pour revenir à Excel.
Créer un objet Excel et l'activer ne rend pas la main à excel. Il faut pratiquement quitter Word (application.quit) pour que Excel revienne actif. Il y a sûrement une façon de rendre la main à Excel sans fermer Word mais comment ?
Merci de ton aide.
Tilloux
"michdenis" a écrit dans le message de news: eC$
Pour les 2 variables : Public Wd As Object Public Dc As document
michdenis
A ) Application.ActivateMicrosoftApp xlmicrosoftWord Quand tu es dans Excel, tu as 2 variables que tu peux utiliser pour activer l'application Word.
Wd.Windows(1).Activate Dc.Activate
B ) Lorsque tu es dans Word .... Ta question ne dit pas si c'est pendant l'exécution d'une macro lancée dans Excel ou suite à une manouvre manuelle qui n'a rien à voir avec une macro.
- Par une macro lancée par Excel, Tu peux simplement ajouter une variable déclarée comme ceci : Dans le haut du module dans Excel : Public Xl As Application OU Public Wk As Workbook Dans ce cas, tu ajoutes une ligne dans dans la procédure : Set Wk = ThisWorkbook Si tu veux que la fenêtre soit l'application Excel Xl.Windows(1).Activate Si tu veux que le classeur définit devienne la fenêtre active Wk.Activate
C ) Si à partir d'Excel, tu veux lancer une macro dans le fichier que tu as ouvert à l'aide de la procédure, utilise la variable Wd MaMacro = "'" & dc.name & "'!NomMacro" Wd.Run MaMacro
D ) Si je ne réponds pas à ta question, je t'invite à préciser les manipulations que tu veux faire.
Je publie à nouveau la procédure soumise :
Public Wd As Object Public Dc As Object
'---------------------------------------------------- Sub test()
Dim Fichier As String Fichier = "c:LecheminNotes.doc" 'à définir On Error Resume Next Set Wk = ThisWorkbook
Set Wd = GetObject(",Word.Application") If Err <> 0 Then Application.GoTo 0 Set Wd = CreateObject("Word.Application")
Wd.Visible = True
If Dir(Fichier) <> "" Then Set Dc = Wd.documents.Open(Fichier) Else Set Dc = Wd.documents.Add Dc.SaveAs Fichier End If End Sub '----------------------------------------------------
"TILLOUX" a écrit dans le message de groupe de discussion : #
Merci pour ta réponse. J'ai utilisé ton code pour ouvrir un doc. Word depuis Excel et ça marche très bien.
Dans Excel VBA on a l'instruction : Application.ActivateMicrosoftApp xlmicrosoftWord
je l'ai ajoutée et ça fait passer la main à Word. Je me retrouve dans Word avec mon doc. ouvert. Tout est ok.
Par contre je ne trouve pas l'équivalent dans VBA Word pour revenir à Excel.
Créer un objet Excel et l'activer ne rend pas la main à excel. Il faut pratiquement quitter Word (application.quit) pour que Excel revienne actif. Il y a sûrement une façon de rendre la main à Excel sans fermer Word mais comment ?
Merci de ton aide.
Tilloux
"michdenis" a écrit dans le message de news: eC$
Pour les 2 variables : Public Wd As Object Public Dc As document
A ) Application.ActivateMicrosoftApp xlmicrosoftWord
Quand tu es dans Excel, tu as 2 variables que tu peux utiliser
pour activer l'application Word.
Wd.Windows(1).Activate
Dc.Activate
B ) Lorsque tu es dans Word .... Ta question ne dit pas si c'est
pendant l'exécution d'une macro lancée dans Excel ou suite
à une manouvre manuelle qui n'a rien à voir avec une macro.
- Par une macro lancée par Excel, Tu peux simplement ajouter une
variable déclarée comme ceci :
Dans le haut du module dans Excel :
Public Xl As Application
OU
Public Wk As Workbook
Dans ce cas, tu ajoutes une ligne dans dans la procédure :
Set Wk = ThisWorkbook
Si tu veux que la fenêtre soit l'application Excel
Xl.Windows(1).Activate
Si tu veux que le classeur définit devienne la fenêtre active
Wk.Activate
C ) Si à partir d'Excel, tu veux lancer une macro dans le fichier que
tu as ouvert à l'aide de la procédure, utilise la variable Wd
MaMacro = "'" & dc.name & "'!NomMacro"
Wd.Run MaMacro
D ) Si je ne réponds pas à ta question, je t'invite à préciser les
manipulations
que tu veux faire.
Je publie à nouveau la procédure soumise :
Public Wd As Object
Public Dc As Object
'----------------------------------------------------
Sub test()
Dim Fichier As String
Fichier = "c:LecheminNotes.doc" 'à définir
On Error Resume Next
Set Wk = ThisWorkbook
Set Wd = GetObject(",Word.Application")
If Err <> 0 Then Application.GoTo 0
Set Wd = CreateObject("Word.Application")
Wd.Visible = True
If Dir(Fichier) <> "" Then
Set Dc = Wd.documents.Open(Fichier)
Else
Set Dc = Wd.documents.Add
Dc.SaveAs Fichier
End If
End Sub
'----------------------------------------------------
"TILLOUX" <nospam-tilloux@bluewin.ch> a écrit dans le message de groupe de
discussion : #DW75EXqKHA.4236@TK2MSFTNGP02.phx.gbl...
Merci pour ta réponse. J'ai utilisé ton code pour ouvrir un doc. Word
depuis Excel et ça marche très bien.
Dans Excel VBA on a l'instruction :
Application.ActivateMicrosoftApp xlmicrosoftWord
je l'ai ajoutée et ça fait passer la main à Word. Je me retrouve dans Word
avec mon doc. ouvert. Tout est ok.
Par contre je ne trouve pas l'équivalent dans VBA Word pour revenir à
Excel.
Créer un objet Excel et l'activer ne rend pas la main à excel. Il faut
pratiquement quitter Word (application.quit) pour que Excel revienne
actif. Il y a sûrement une façon de rendre la main à Excel sans fermer
Word mais comment ?
Merci de ton aide.
Tilloux
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
eC$zmrDqKHA.1548@TK2MSFTNGP02.phx.gbl...
Pour les 2 variables :
Public Wd As Object
Public Dc As document
A ) Application.ActivateMicrosoftApp xlmicrosoftWord Quand tu es dans Excel, tu as 2 variables que tu peux utiliser pour activer l'application Word.
Wd.Windows(1).Activate Dc.Activate
B ) Lorsque tu es dans Word .... Ta question ne dit pas si c'est pendant l'exécution d'une macro lancée dans Excel ou suite à une manouvre manuelle qui n'a rien à voir avec une macro.
- Par une macro lancée par Excel, Tu peux simplement ajouter une variable déclarée comme ceci : Dans le haut du module dans Excel : Public Xl As Application OU Public Wk As Workbook Dans ce cas, tu ajoutes une ligne dans dans la procédure : Set Wk = ThisWorkbook Si tu veux que la fenêtre soit l'application Excel Xl.Windows(1).Activate Si tu veux que le classeur définit devienne la fenêtre active Wk.Activate
C ) Si à partir d'Excel, tu veux lancer une macro dans le fichier que tu as ouvert à l'aide de la procédure, utilise la variable Wd MaMacro = "'" & dc.name & "'!NomMacro" Wd.Run MaMacro
D ) Si je ne réponds pas à ta question, je t'invite à préciser les manipulations que tu veux faire.
Je publie à nouveau la procédure soumise :
Public Wd As Object Public Dc As Object
'---------------------------------------------------- Sub test()
Dim Fichier As String Fichier = "c:LecheminNotes.doc" 'à définir On Error Resume Next Set Wk = ThisWorkbook
Set Wd = GetObject(",Word.Application") If Err <> 0 Then Application.GoTo 0 Set Wd = CreateObject("Word.Application")
Wd.Visible = True
If Dir(Fichier) <> "" Then Set Dc = Wd.documents.Open(Fichier) Else Set Dc = Wd.documents.Add Dc.SaveAs Fichier End If End Sub '----------------------------------------------------
"TILLOUX" a écrit dans le message de groupe de discussion : #
Merci pour ta réponse. J'ai utilisé ton code pour ouvrir un doc. Word depuis Excel et ça marche très bien.
Dans Excel VBA on a l'instruction : Application.ActivateMicrosoftApp xlmicrosoftWord
je l'ai ajoutée et ça fait passer la main à Word. Je me retrouve dans Word avec mon doc. ouvert. Tout est ok.
Par contre je ne trouve pas l'équivalent dans VBA Word pour revenir à Excel.
Créer un objet Excel et l'activer ne rend pas la main à excel. Il faut pratiquement quitter Word (application.quit) pour que Excel revienne actif. Il y a sûrement une façon de rendre la main à Excel sans fermer Word mais comment ?
Merci de ton aide.
Tilloux
"michdenis" a écrit dans le message de news: eC$
Pour les 2 variables : Public Wd As Object Public Dc As document