Sub Exemple () Dim ExcelAppli As Object, MonFichierXl as object Set ExcelAppli = CreateObject(, "Excel.Application") 'on utilise la session excel déjà ouverte Set MonFichierXl = ExcelAppli.Workbooks.Open("c:\Lefichier.xls") 'ici le code Set MonFichierXl = Nothing Set ExcelAppli = Nothing End sub
Sub Exemple () Dim ExcelAppli As Object, MonFichierXl as object Set ExcelAppli = GetObject(, "Excel.Application") 'on ouvre une nouvelle session excel Set MonFichierXl = ExcelAppli.Workbooks.Open("c:\Lefichier.xls") 'ici le code Set MonFichierXl = Nothing Set ExcelAppli = Nothing End sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je souhaiterais en fait que VB me trouve par lui-même le classeur ouvert pour y appliquer un pilotage.
quand on utilise vba, la méthode ActiveWorksheet me permet d'identifier quel classeur est en cours, alors je me dis pourquoi pas VB6...
Sub Exemple() Dim ExcelAppli As Object, MonFichierXl As Object Set ExcelAppli = GetObject(, "Excel.Application") 'on utilise la session excel déjà ouverte If Not ExcelAppli Is Nothing Then Set MonFichierXl = ExcelAppli.ActiveWorkbook 'on recuppere le fichier actif de la session obtenu MonFichierXl.Range("A1").Value = "Test ok !" 'on ecrit dans une cellule pour l'exemple MonFichierXl.Save 'on sauve le fichier MonFichierXl.Close 'on ferme le fichier Set MonFichierXl = Nothing Set ExcelAppli = Nothing End If End Sub