OVH Cloud OVH Cloud

Ouverture fichier excel dans un nouveau document

12 réponses
Avatar
FFO
Bonjours à tous
Je cherche vainement à ouvrir un fichier Excel dans un 2° document sachant
que le premier est utilisé par le déroulement de mon code VBA établit comme
suit :

Shell ("EXCEL.EXE E:\Chemin\Fichier exemple.xls")

Le document final à ouvrir étant "Fichier exemple.xls" qui existe
Or VBA interprète dans la commade décrite ci-dessus l'ouverture de 2
documents :
Fichier.xls et exemple.xls qui eux n'existent pas

Comment lui indiquer que le fichier à ouvrir est "Fichier exemple.xls"
Il ne semble pas prendre en compte dans l'appellation Le caractère Espace

Certe je pourrais changer l'Espace par un caractère mais celà met à mal tous
mes programmes qui tourne autour du libellé en l'état
Merci pour toute suggestion sachant qu'il est impératif que l'ouverture se
réalise dans un 2° document Excel

2 réponses

1 2
Avatar
RGI
ou encore

Sub essai3()
Dim oWdApp As Object
'Lancer Word
Set oWdApp = CreateObject("Word.Application")
With oWdApp
'Afficher Word si nécessaire...
.Visible = True
'Ouvrir le document Word
.Documents.Add
'Exécuter la macro
.Run ("macro_coucou")
End With
End Sub


salutations

RGI


Parfait grace à toi je réalise des prouesses
Aurais tu dans ta besace l'équivalent pour les macro Word à éxécuter à
partir de VBA d'excel, ce code semble inadapté

Dans l'attente de te lire



Excel ne connait pas Docmd mais Access oui

pour employer run avec excel regarde du coté de :

Application.Run "'C:test.xls'!toto"

toto étant la macro du fichier test.xls

salutations

RGI


Impeccable pour les 2 derniers code
Mais si cette première étape que tu m'as réalisée brillament me permet donc
d'ouvrir un fichier dans un nouveau document Excel je me heurte toujours à
une difficulté pour la 2° étape qui consiste à éxécuter une Macro de celui-ci
par le code :
DoCmd RunMacro ("Libellé de la macro") avec le message d'Excel suivant :
"Impossible d'éxécuter cette action pour l'instant"
Anomalie que j'avait attribuée à l'ouverture de ce fichier sous le même
document excel avec le conflit des 2 macros : celle en cours et celle à
éxécuter
Sans abuser de ta gentillesse : qu'en penses tu ???, as tu la solution ???

Merci d'avance




Bonjour

comme ceci

Sub lancemoi2()
Application.WindowState = xlMinimized
rep = Shell("""excel.exe"" ""E:fichier exemple.xls""", vbMaximizedFocus)
SendKeys "^a" & "^e"
End Sub





Helas VBA cherche à ouvrir Fichier.xls' et 'exemple.xls et non Fichier
exemple.xls
Merci de ta proposition mais aurais tu une autre idée





Bonjour FFO,

Non testé :
Shell ("EXCEL.EXE 'E:CheminFichier exemple.xls'")


@+
FxM





Bonjours à tous
Je cherche vainement à ouvrir un fichier Excel dans un 2° document sachant
que le premier est utilisé par le déroulement de mon code VBA établit comme
suit :

Shell ("EXCEL.EXE E:CheminFichier exemple.xls")

Le document final à ouvrir étant "Fichier exemple.xls" qui existe
Or VBA interprète dans la commade décrite ci-dessus l'ouverture de 2
documents :
Fichier.xls et exemple.xls qui eux n'existent pas

Comment lui indiquer que le fichier à ouvrir est "Fichier exemple.xls"
Il ne semble pas prendre en compte dans l'appellation Le caractère Espace

Certe je pourrais changer l'Espace par un caractère mais celà met à mal tous
mes programmes qui tourne autour du libellé en l'état
Merci pour toute suggestion sachant qu'il est impératif que l'ouverture se
réalise dans un 2° document Excel

















Avatar
FFO
Bingo !!!!
Le tour est joué avec pour ta dernière sugestion concernant les macros Word
le rajout de quelques intructions pour un bon fonctionnement :

Dim oWdApp As Object
'Lancer Word
Set oWdApp = CreateObject("Word.Application")
With oWdApp
'Afficher Word si nécessaire...
. Visible = True
'Ouvrir le document Word
. Documents.Add ("E:CheminFichier.doc") "l'adresse du fichier à ouvrir"
'Exécuter la macro
Run ("libellé")
.Documents.Close SaveChanges:úlse/True "pour fermer le document et
l'application"
.Visible = False
End With

Eventuellement ton appréciation sur cette construction définitive qui
fonctionne admirablement bien et en tout état de cause un grand merci pour
ton aide efficace

Au plaisir de te lire


ou encore

Sub essai3()
Dim oWdApp As Object
'Lancer Word
Set oWdApp = CreateObject("Word.Application")
With oWdApp
'Afficher Word si nécessaire...
.Visible = True
'Ouvrir le document Word
.Documents.Add
'Exécuter la macro
.Run ("macro_coucou")
End With
End Sub


salutations

RGI


Parfait grace à toi je réalise des prouesses
Aurais tu dans ta besace l'équivalent pour les macro Word à éxécuter à
partir de VBA d'excel, ce code semble inadapté

Dans l'attente de te lire



Excel ne connait pas Docmd mais Access oui

pour employer run avec excel regarde du coté de :

Application.Run "'C:test.xls'!toto"

toto étant la macro du fichier test.xls

salutations

RGI


Impeccable pour les 2 derniers code
Mais si cette première étape que tu m'as réalisée brillament me permet donc
d'ouvrir un fichier dans un nouveau document Excel je me heurte toujours à
une difficulté pour la 2° étape qui consiste à éxécuter une Macro de celui-ci
par le code :
DoCmd RunMacro ("Libellé de la macro") avec le message d'Excel suivant :
"Impossible d'éxécuter cette action pour l'instant"
Anomalie que j'avait attribuée à l'ouverture de ce fichier sous le même
document excel avec le conflit des 2 macros : celle en cours et celle à
éxécuter
Sans abuser de ta gentillesse : qu'en penses tu ???, as tu la solution ???

Merci d'avance




Bonjour

comme ceci

Sub lancemoi2()
Application.WindowState = xlMinimized
rep = Shell("""excel.exe"" ""E:fichier exemple.xls""", vbMaximizedFocus)
SendKeys "^a" & "^e"
End Sub





Helas VBA cherche à ouvrir Fichier.xls' et 'exemple.xls et non Fichier
exemple.xls
Merci de ta proposition mais aurais tu une autre idée





Bonjour FFO,

Non testé :
Shell ("EXCEL.EXE 'E:CheminFichier exemple.xls'")


@+
FxM





Bonjours à tous
Je cherche vainement à ouvrir un fichier Excel dans un 2° document sachant
que le premier est utilisé par le déroulement de mon code VBA établit comme
suit :

Shell ("EXCEL.EXE E:CheminFichier exemple.xls")

Le document final à ouvrir étant "Fichier exemple.xls" qui existe
Or VBA interprète dans la commade décrite ci-dessus l'ouverture de 2
documents :
Fichier.xls et exemple.xls qui eux n'existent pas

Comment lui indiquer que le fichier à ouvrir est "Fichier exemple.xls"
Il ne semble pas prendre en compte dans l'appellation Le caractère Espace

Certe je pourrais changer l'Espace par un caractère mais celà met à mal tous
mes programmes qui tourne autour du libellé en l'état
Merci pour toute suggestion sachant qu'il est impératif que l'ouverture se
réalise dans un 2° document Excel




















1 2