J'ai réussi à faire à peu près ce que je voulais avec le code suivant:
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
boolstatus = Part.Extension.SelectByID2("Objet de détail166@Feuille1", "REVISIONTABLE", 0.238189661374546, 5.37305690286136E-02, 0, False, 0, Nothing, 0)
Part.EditDelete
Dim currentSheet As Object
Dim myRevisionTable As Object
Set currentSheet = Part.GetCurrentSheet()
Set myRevisionTable = currentSheet.InsertRevisionTable(True, 0.41, 4.01116812853213E-02, 4, "T:\BEM\Solidworks\Modèles\Table révision\Révision TESTELEC - DATE - DESSINATEUR.sldrevtbt")
boolstatus = Part.Extension.SelectByID2("Objet de détail167@Feuille1", "REVISIONTABLE", 0.237457760308212, 4.89732120974398E-02, 0, False, 0, Nothing, 0)
Set currentSheet = Part.GetCurrentSheet()
Set myRevisionTable = currentSheet.RevisionTable
longstatus = myRevisionTable.AddRevision("A")
boolstatus = Part.ActivateView("Vue de mise en plan1")
boolstatus = Part.ActivateSheet("Feuille1")
boolstatus = Part.Extension.SelectByID2("Objet de détail167@Feuille1", "REVISIONTABLE", 0.373957309179585, 4.80583357645217E-02, 0, False, 0, Nothing, 0)
Part.ClearSelection2 True
Dim myTable As Object
Set myTable = myRevisionTable
myTable.Text(0, 2) = "$PRP:""Date ind A"""
Part.ClearSelection2 True
Set myTable = myRevisionTable
myTable.Text(0, 3) = "$PRP:""Dessinateur"""
Part.ClearSelection2 True
Set myTable = myRevisionTable
myTable.Text(0, 1) = "Création"
boolstatus = Part.Extension.SelectByID2("Feuille1", "SHEET", 0.364259620050653, 6.48920602902139E-02, 0, False, 0, Nothing, 0)
'Lancement macro
Dim runMacroError As Long
boolstatus = swApp.RunMacro2("T:\BEM\Solidworks\Modèles\Macros\Recharger fond de plan\changefonddeplans.swp", "ChangeFondDePlanswp1", "main", swRunMacroDefault, runMacroError)
End Sub
Il ne reste qu'à trouver un moyen de sélectionner la table en automatique au début au lieu d'avoir à cliquer dessus....