Je cherche comment prendre contrôle sur un processus.
Disons que j'ai un excel ouvert, et que je lance mon application vb6 et que par son processId ou autre moyen je veuille prendre le contrôle de ce processus.
L'idéal serait que je puisse l'utiliser dans un objet.
En bref je cherche un équivalent à :
Dim xlApp as Excel.Application
Set xlApp = CreateObject("Excel.Application")
Ne me dite pas que je n'ai pas chercher parce que j'ai bel et bien chercher mais tout les threads que je trouve me disent comment terminer un processus, ce n'est pas ce que je cherche....
En espérant que quelqu'un puisse éclairer ma lanterne.
Bonne journée!
---------------------------------------------------------
Julien B.
Copy_Err_Handler:
Dim tempXL As Object
Set tempXL = GetObject(tempFile) ', "Excel.Application")
If tempXL.Application.Visible = False Then
tempXL.Application.Quit
End If
Err.Clear
GoTo copy
Merci de m'avoir mis sur la piste bigfish
---------------------------------------------------------
Julien B.
Bon ca y etais presque... mais disons que j'ai trois fichier Excel d'ouvert par defaut il va me chercher le premier ouvert enfin je crois ... y a-t-il un moyen de prendre un autre fichier... ?
---------------------------------------------------------
Julien B.
Bon selon ce que j'ai compris, si je met dans le premier paramètre le chemain d'accès au fichier Excel que je cherche... c'est supposer fonctionner tel que je désir le faire, cependant quand je le fais... il ne trouve pas l'objet.
Voici mon code
Copy_Err_Handler:
Dim tempXL As Excel.Application
Dim founded As Boolean
Set tempXL = GetObject(tempFile)
If tempXL.Workbooks(1).FullName = tempFile Then
tempXL.Visible = True
founded = True
'tempXL.Quit
End If
GoTo copy
Est-ce que je suis dans le champs, ou est-ce que cette fonction accepte les repertoires réseau du genre \\server\files\temp\myXL.xls
Bon je continue à chercher...
---------------------------------------------------------
Julien B.
oula oulaaaaaaaa ! Attention c'est l'application que tu recupperes via GetObject pas le les fichiers ouverts dans cette application !
donc :
Copy_Err_Handler:
Dim tempXL As Excel.Application
Dim founded As Boolean
Set tempXL = GetObject(,"Excel.Application") '<--- pour excel tu ne peux pas faire autrement
'pour savoir si tempfile est ouvert cette appli XL tu peux faire comme ceci
On local Error Resume Next
tempXL.tempfile.Ativate 'ici on tente d'activer le fichier
If err = 0 Then 'si pas d'erreur c'est que le fichier est bien la
tempXL.Visible = True
founded = True
'tempXL.Quit
Else
MsgBox "le fichier " & tempfile & " n'est pas ouvert ! ", vbexclamation
End If