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

Ouvrir une base par automation en mode invisible

2 réponses
Avatar
Fabien
Bonjour,
Le code suivant
"
Function Etats(Source As String) As String
Dim AppAccess As Access.Application
Set AppAccess = New Access.Application
AppAccess.Visible = False
AppAccess.OpenCurrentDatabase Source
On Error Resume Next
Etats = ""
For Each Objao In AppAccess.CurrentProject.AllReports
Etats = Etats & Objao.Name & ";" & "Etat" & ";"
Next Objao
AppAccess.Quit
Set AppAccess = Nothing
End Function "
(extrait et adapté d'un code de Raymond la science)

m'ouvre la base source pour en extraire une liste des états.
Lors de l'exécution je vois apparaitre à l'écran brièvement le
formulaire menu appelé au démarrage de cette base source.
Comment faire pour éviter ce 'splash screen' ?
Merci.

PS : la commande "AppAccess.Visible = False" avant ou aprés
"AppAccess.OpenCurrentDatabase Source" ne change rien : le 'splash
screen' apparait toujours

2 réponses

Avatar
Raymond [mvp]
Bonjour.

Quand on travaille en automation access<-->access, il ne faut pas qu'il y
ait de formulaire chargé en ouverture et si possible que la macro autoexec
soit absente.
en général c'est ce qu'il se passe. si tu ne peux pas enlever ce formulaire
de départ il faut lancer un AppAccess.docmd.close pour pas qu'il reste
affiché.

--
@+
Raymond Access MVP http://OfficeSystemAccess.seneque.net/
http://officesystem.access.over-blog.com/
http://access2007.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/


"Fabien" a écrit dans le message de news:
47a973ab$0$881$
| Bonjour,
| Le code suivant
| "
| Function Etats(Source As String) As String
| Dim AppAccess As Access.Application
| Set AppAccess = New Access.Application
| AppAccess.Visible = False
| AppAccess.OpenCurrentDatabase Source
| On Error Resume Next
| Etats = ""
| For Each Objao In AppAccess.CurrentProject.AllReports
| Etats = Etats & Objao.Name & ";" & "Etat" & ";"
| Next Objao
| AppAccess.Quit
| Set AppAccess = Nothing
| End Function "
| (extrait et adapté d'un code de Raymond la science)
|
| m'ouvre la base source pour en extraire une liste des états.
| Lors de l'exécution je vois apparaitre à l'écran brièvement le
| formulaire menu appelé au démarrage de cette base source.
| Comment faire pour éviter ce 'splash screen' ?
| Merci.
|
| PS : la commande "AppAccess.Visible = False" avant ou aprés
| "AppAccess.OpenCurrentDatabase Source" ne change rien : le 'splash
| screen' apparait toujours
Avatar
Fabien
Bonjour.

Quand on travaille en automation access<-->access, il ne faut pas qu'il y
ait de formulaire chargé en ouverture et si possible que la macro autoexec
soit absente.
en général c'est ce qu'il se passe. si tu ne peux pas enlever ce formulaire
de départ il faut lancer un AppAccess.docmd.close pour pas qu'il reste
affiché.

Merci

en fait il ne reste pas affiché (il fait splash !) du fait du
AppAccess.visibleúlse je pense.
C'est pas très esthétique mais tan pis. Mon programme ne servant qu'a
faire des mises à jour d'une base vers une autre, il n'est utilisé
qu'une fois de temps à autres. On fera avec.
@+