Findwindow Excel

moseg Messages postés 3 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 13 avril 2005 - 13 avril 2005 à 09:32
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 - 14 avril 2005 à 00:39
Bonjour a tous,
Voici mon code pour ouvrir un fichier Excel a partir d'un bouton :

Private Sub Command1_Click()
Resultat = FindWindow(vbNullString, "calcul")
If Resultat <> 0 Then
Rep = ShowWindow(Resultat, 2)
Rep = ShowWindow(Resultat, 1)
Else
Temp = 0
RetValeur = Shell("C:\Program Files\Microsoft Office\Office\excel.exe c:\calcul.xls", 1)
End If
End Sub

Ce que je voudrai c'est ouvrir mon fichier excel et le faire reapparaitre sans le reouvrir en recliquant.
Ca marche pour d'autres applications mais pas Excel car la feuille ne s'appelle pas vraiment Calcul
Quelqu'un peut il m'eclairer ?
A voir également:

3 réponses

moseg Messages postés 3 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 13 avril 2005
13 avril 2005 à 09:33
J'oubliai , voici mon module :
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function ShowWindow Lib "user32" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
Public Resultat As Long

Merci
0
moseg Messages postés 3 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 13 avril 2005
13 avril 2005 à 16:36
Bon,apres avoir passé la journée a galéré ,je suis arrivé a ca :

'Déclaration des variables
Dim Bool As Boolean
Dim appExcel As Excel.Application 'Application Excel
Dim wbExcel As Excel.Workbook 'Classeur Excel


Private Sub Command1_Click()
If Bool = True Then
'Ouverture de l'application
Set appExcel = CreateObject("Excel.Application")
'Ouverture d'un fichier Excel
Set wbExcel = appExcel.Workbooks.Open("c:\calcul.xls")
Bool = False
Else
wbExcel.Close 'Fermeture du classeur Excel
appExcel.Quit 'Fermeture de l'application Excel
'Désallocation mémoire
Set wbExcel = Nothing
Set appExcel = Nothing
Bool = True
End If
End Sub


Private Sub Form_Load()
Bool = True
End Sub

Le probleme c'est je n'arrive pas a ouvrir mon fichier !!!!! pourtant excel se lance bien ( il est dans mes processus) . S'agit t'il d'un bug
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
14 avril 2005 à 00:39
Salut,
Bien sur qu'il est ouvert tu as deux solutions soit tu géres directement Excel par VB
ex:
une fois ouvert
sheets("Feuil1").Range("A1").value = "ça me prends la tête"
ira écrire "ça me prends la tête" sur ta feuille1
tout ceci sans qu'excel soit visible si tu veux le voir ....
appExcel.Visible = true

Mais bon si tu veux y traivailler de suite dedans comme dans un programe normal utilises plutot la fonction ShellExecute qui te lancera excel.

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Rejoignez-nous