Exemple de programmation ActiveX Automation (Windows)
Private Sub Form_Load()

'----------------------------------------------
' Exemple de code pour accéder à FileMaker Pro
' à partir de Visual Basic.
'
' "Bibliothèque de types FileMaker Pro 7.0" doit être sélectionnée
' et accessible dans les références disponibles du projet Visual Basic.
'----------------------------------------------
 
'----------------------------------------------
‘ Déclaration des objets et lancement de FileMaker
'----------------------------------------------
 
‘ Déclaration des variables d'objet
Dim FMApp As FMPro70Lib.Application
Dim FMDocs As FMPro70Lib.Documents
Dim FMActiveDoc As FMPro70Lib.Document
‘ Lancement de FileMaker
Set FMApp = CreateObject("FMPRO.Application")
 
‘ Définition de l'objet Documents
Set FMDocs = FMApp.Documents
 
‘ Affichage de FileMaker à l'écran (lors d'un lancement via ActiveX automation,
' FileMaker est masqué par défaut.)
FMApp.Visible = True
 
'----------------------------------------------
' Recherche des documents ouverts
'----------------------------------------------
 
'Vérification du nombre de documents ouverts
If FMDocs.Count = 0 Then
Debug.Print "Aucun document ouvert"
Sinon
Debug.Print "Nombre de documents ouverts :"; FMDocs.Count
Fin de si
 
'--------------------------------------------------
‘ Ouverture d'une base de données FileMaker et lancement d'un script
'--------------------------------------------------
 
‘ Remarque : Un fichier FileMaker "c:\test.fmp12" doit être disponible
' avec un script appelé "Premier script" pour que ce qui suit
' fonctionne.
Dim myOpenFile As Object ' remarque : peut également être déclaré sous la forme
FMPro70Lib.Document
 
Set myOpenFile = FMDocs.Open("c:\test.fmp12", "","")
myOpenFile.DoFMScript ("Premier script")
 
'--------------------------------------------------
' Recherche du document actif
'--------------------------------------------------
 
Set FMActiveDoc = FMDocs.Active
 
' Affichage du nom du document actif
Debug.Print "Le fichier actif est "; FMActiveDoc.FullName
 
'--------------------------------------------------
' Décompte et fermeture des documents
'--------------------------------------------------
 
Dim TempToc As Object
 
If FMDocs.Count > 0 Then
 
For Each TempDoc In FMDocs
Debug.Print "Fermeture prochaine du document : "; TempDoc.FullName
TempDoc.Close
Set TempDoc = Nothing
Next
Fin de si
'----------------------------------------------
' Nettoyage et sortie
'----------------------------------------------
Set FMDocs = Nothing
Set FMActiveDoc = Nothing
Set myOpenFile = Nothing
 
' Ferme FileMaker et libère les variables
' (Remarque : affectez systématiquement Nothing à la variable d'application après sa fermeture.)
FMApp.Quit
Set FMApp = Nothing
End Sub
Rubriques connexes 
Utilisation de FileMaker Pro ActiveX Automation (Windows)
Objets, méthodes et propriétés ActiveX Automation (Windows)