Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Access ne ferme pas excel

3 réponses
Avatar
bruno.lindis
Bonjour,

Un module access ouvre un classeur excel et le traitement se déroule
sans problème jusqu'à la fin.

Le problème est que le processus excel lui continue malgré un "
xlApp.Quit". Si je relance le module il plante tant que je n'ai pas
killé excel sous le gestionnaire de tâche ...

Comment faire pour que le module arrête bien la session excel qu'il a
lancé ?

Merci
A+

--
-- Otez le second point pour me contacter

3 réponses

Avatar
Michel_D
Bonjour,

Bonjour,

Un module access ouvre un classeur excel et le traitement se déroule
sans problème jusqu'à la fin.

Le problème est que le processus excel lui continue malgré un "
xlApp.Quit". Si je relance le module il plante tant que je n'ai pas
killé excel sous le gestionnaire de tâche ...

Comment faire pour que le module arrête bien la session excel qu'il a
lancé ?


Montre le code que tu as utilisé.

Normalement il faut utiliser GetObject(,"Excel.Application") si une
instance d'Excel existe sinon on utilise
CreateObject("Excel.Application") et ensuite tu ouvre ton Workbook
Workbooks.Open(...) quand tu as fini tu ferme ton Workbook (Close)
et tu quitte l'appli Excel (Quit), je l'utilise de cette manière
dans un script VBS sans aucun problème.

Avatar
bruno.lindis
Bonjour,

Bonjour,

Un module access ouvre un classeur excel et le traitement se déroule
sans problème jusqu'à la fin.

Le problème est que le processus excel lui continue malgré un "
xlApp.Quit". Si je relance le module il plante tant que je n'ai pas
killé excel sous le gestionnaire de tâche ...

Comment faire pour que le module arrête bien la session excel qu'il a
lancé ?


Montre le code que tu as utilisé.

Normalement il faut utiliser GetObject(,"Excel.Application") si une
instance d'Excel existe sinon on utilise
CreateObject("Excel.Application") et ensuite tu ouvre ton Workbook
Workbooks.Open(...) quand tu as fini tu ferme ton Workbook (Close)
et tu quitte l'appli Excel (Quit), je l'utilise de cette manière
dans un script VBS sans aucun problème.


Le source allégé de quelques ligne mais la structure est là :

Set rec = CurrentDb.OpenRecordset("R_PRU_test", dbOpenSnapshot)
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add


nomFichierExcel = "..."
Set xlSheet = xlBook.Worksheets.Add(,
xlBook.Worksheets(xlBook.Worksheets.Count))
xlSheet.Name = entiteCourant & processusCourant
[remplissage titre feuille]
Do While Not rec.EOF
xlBook.SaveAs nomFichierExcel
xlBook.Close
nomFichierExcel = "..."
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets.Add(,
xlBook.Worksheets(xlBook.Worksheets.Count))
xlSheet.Name = entiteCourant & processusCourant
[remplissage titre feuille]
If [nouvelle feuille] Then
Set xlSheet = xlBook.Worksheets.Add(,
xlBook.Worksheets(xlBook.Worksheets.Count))
xlSheet.Name = entiteCourant & processusCourant
[remplissage titre feuille]
End If

For J = 1 To 6
[Ecriture des champs de la requête]
Next J
rec.MoveNext
Loop
xlBook.SaveAs nomFichierExcel
xlBook.Close
xlApp.Quit
rec.Close
Set rec = Nothing
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing

End Function
___________________________________

Je me demande si je ne crée pas 2 occurences de excel (par moment il y
en a 2 en cours) c'est pas sur.

--
-- Otez le second point pour me contacter


Avatar
bruno.lindis
Bonjour,

Bonjour,

Un module access ouvre un classeur excel et le traitement se déroule
sans problème jusqu'à la fin.

Le problème est que le processus excel lui continue malgré un "
xlApp.Quit". Si je relance le module il plante tant que je n'ai pas
killé excel sous le gestionnaire de tâche ...

Comment faire pour que le module arrête bien la session excel qu'il a
lancé ?


Montre le code que tu as utilisé.

Normalement il faut utiliser GetObject(,"Excel.Application") si une
instance d'Excel existe sinon on utilise
CreateObject("Excel.Application") et ensuite tu ouvre ton Workbook
Workbooks.Open(...) quand tu as fini tu ferme ton Workbook (Close)
et tu quitte l'appli Excel (Quit), je l'utilise de cette manière
dans un script VBS sans aucun problème.


Bizarre j'ai fermé access puis relancé et maintenant c'est OK ???
J'espère que cela ne reviendra pas ;-)



--
-- Otez le second point pour me contacter