Ouvrir Excel

jctgt
Messages postés
56
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
28 avril 2022
- Modifié le 27 mars 2018 à 21:54
jordane45
Messages postés
35771
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2022
- 31 mars 2018 à 01:06
Bonjour,
Je travaille sur excel avec VB6, Windows 10, portable Assus

je voudrais pouvoir travailler sur un fichier excel déjà ouvert quand je lance vb6, sans en ouvrir un autre.

J’ai le code suivant qui ouvre bien mon fichier excel (MaListe) s’il n’est pas déjà ouvert :
'Ouvrir Excel
Set XLApp = New Excel.Application
Set XLBook = XLApp.Workbooks.Open("C:\Desktop\Excel.xlsm")
XLApp.Visible = True
XLBook.Activate
XLApp.WindowState = xlMinimized
Set XLSheet = XLApp.ActiveWorkbook.Sheets("Ma Liste ")
Liste = Val(XLSheet.Cells(2, 2).Value)

Ici la valeur de Liste est comme il se doit.

Si j’ajoute ceci :
‘Déja ouvert ou non
Dim intFile As Integer
intFile = FreeFile(0)
On Error Resume Next
Open "example.txt" For Input Lock Read Write As #intFile
If Err Then
Set XLApp = New Excel.Application
XLBook.WindowState = xlMinimized
Set XLApp = New Excel.Application
GoTo ouvert
Else
Set XLApp = New Excel.Application
Set XLBook = XLApp.Workbooks.Open("C:\Desktop\Excel.xlsm")
XLApp.Visible = True
XLBook.Activate
XLApp.WindowState = xlMinimized
Set XLSheet = XLApp.ActiveWorkbook.Sheets("Ma Liste ")
Liste = Val(XLSheet.Cells(2, 2).Value)
End If

Comme cela :
'Ouvre Excel
'Déja ouvert ou non
Dim intFile As Integer
intFile = FreeFile(0)
On Error Resume Next
Open "example.txt" For Input Lock Read Write As #intFile
If Err Then
Set XLApp = New Excel.Application
XLBook.WindowState = xlMinimized
Set XLApp = New Excel.Application
GoTo ouvert
Else

Set XLApp = New Excel.Application
Set XLBook = XLApp.Workbooks.Open("C:\Users\Jean-Claude\Desktop\DOOLYS 10\Jeu des vies.xlsm")
End If
ouvert:
XLApp.Visible = True
XLBook.Activate
XLApp.WindowState = xlMinimized
Set XLSheet = XLApp.ActiveWorkbook.Sheets("Liste des Joueurs")
Liste = Val(XLSheet.Cells(2, 2).Value)

Que le fichier excel soit déjà ouvert ou non, Liste est toujours zéro (0)

Quelqu’un saurait-il POURQUOI?

Merci de bien vouloir m’aider

JCTGT



--

1 réponse

jordane45
Messages postés
35771
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2022
358
31 mars 2018 à 01:06
Bonjour,

Déjà... l'espace à la fin de "Ma Liste " est voulu ??
("Ma Liste ")


Ensuite, en mode pas à pas (il me semble que ça existe en vb6) , ça donne quoi ?
0