Aller au contenu

Appel d'application MicroStation depuis Excel 2013


Messages recommandés

Posté(e)

Bonjour à tous,

 

Voilà, j'ai un petit soucis. Pour définir l'application AutoCAD depuis une VBA d'Excel 2013, je fais comme çà :

    Dim AcadApp As AcadApplication
   Dim DocAutoCad As Object
   On Error Resume Next
   Set AcadApp = GetObject(, "AutoCAD.Application")
   On Error GoTo 0
   If AcadApp Is Nothing Then
       Set AcadApp = New AutoCAD.AcadApplication
   End If
   Set DocAutoCad = AcadApp.Documents.Add

J'ai fais çà pour MicroStation (V8i) :

Sub MacMicroST(control As IRibbonControl)
   Dim MicroSt As MicroStationDGN.Application
   Dim DocMicroSt As Object
   Set MicroSt = GetObject(, MicroStationDGN.application")
   On Error GoTo 0
   If MicroSt Is Nothing Then
       Set MicroSt = New MicroSt.Application
   End If

End Sub

Mais à la ligne "Set MicroSt = GetObject(, MicroStationDGN.application")" VBA me sort qu'un composant ActiveX ne peut pas créer d'objet...

 

Quelle est la démarche pour MicroStation ? Et surtout, quelle référence utiliser ?

 

Merci,

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Bonjour Gégé,

 

J'ai trouvé effectivement une référence "Bentley Microstation DGN 8.9 Object Library" mais ça n'a pas l'aire de fonctionner.

 

Je n'ai rien trouvé dans le liste de référence qui contient "Bentley", "MicroStation" ou encore "UStation" à part celle que j'essai d'utiliser...

 

Je compte utiliser une liste de "calques" avec divers attributs depuis Excel pour les créer dans MicroStation. Je le fais déjà avec AutoCAD mais je ne sais pas comment m'y prendre avec MicroStation...

 

Merci en tout cas pour la piste...

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Mille merci lfdb... Je testerais ça mardi...

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Bonjour,

 

Voilà, j'ai essayé ça, que j'ai piqué sur le net :

Sub TestDGN()
   Dim oMicroStation As MicroStationDGN.Application
   
   Dim oConnector As MicroStationDGN.ApplicationObjectConnector
   
   If oMicroStation Is Nothing Then
       Set oConnector = New MicroStationDGN.ApplicationObjectConnector
   End If
   oConnector.Application.Visible = True
End Sub

Mais ça ne m'ouvre pas de nouveau fichier DGN...

 

Je continu de chercher sur le net, mais tout se ressemble et en plus, c'est de l'Anglais...

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Bonjour,

 

Voilà, j'ai essayé ça, que j'ai piqué sur le net :

Sub TestDGN()
   Dim oMicroStation As MicroStationDGN.Application
   
   Dim oConnector As MicroStationDGN.ApplicationObjectConnector
   
   If oMicroStation Is Nothing Then
       Set oConnector = New MicroStationDGN.ApplicationObjectConnector
   End If
   oConnector.Application.Visible = True
End Sub

Mais ça ne m'ouvre pas de nouveau fichier DGN...

 

Je continu de chercher sur le net, mais tout se ressemble et en plus, c'est de l'Anglais...

 

Denis...

 

salut,

j'ai fait de petits tests, et il ya des choses que je ne comprends pas, on dirait que ma version de MicroStationDGN connait de petits bugs:

en effet, je n'arrive pas à utiliser SaveAs avec des paramètres ni CopyDesignFile

VBA semble les considérer comme des fonctions alors que ce sont des procédures.

c'est ennuyeux car si le dessin existe, ça plante

 

Sub TestDGN()
   Dim result As Variant
   Dim oMicroStation As MicroStationDGN.Application
   
   Dim oConnector As MicroStationDGN.ApplicationObjectConnector
   
   If oMicroStation Is Nothing Then
       Set oConnector = New MicroStationDGN.ApplicationObjectConnector
   End If
   oConnector.Application.Visible = True
   
   Dim odesign As DesignFile
   Dim newdesign As DesignFile
   
   'ci dessous ne marche pas :
   'oConnector.Application.CopyDesignFile("E:\ustation\dessins\pproto.dgn", "E:\ustation\dessins\monNouveau.dgn", True)
   
   Set odesign = oConnector.Application.OpenDesignFile("E:\ustation\dessins\pproto.dgn", False)
   
  
   'Sub SaveAs(NewFileName As String, [Overwrite As Boolean = Faux], [NewFormat As MsdDesignFileFormat = msdDesignFileFormatCurrent])
   odesign.SaveAs ("E:\ustation\dessins\monNouveau.dgn")
   'ci dessous ne marche pas :
   'Dim NewFormat As MsdDesignFileFormat
   'NewFormat = msdDesignFileFormatV8
   'odesign.SaveAs("E:\ustation\dessins\monNouveau.dgn", False, NewFormat)
   
    MsgBox ("finit")
    
End Sub

----------------------------------------------------------------------

Site: https://www.g-eaux.fr

Blog: http://g-eaux.over-blog.com

Posté(e)

Bonjour,

 

Et pour le japonnais ? on demande à Julian-Nihon ?

 

Je plaisante, merci lrdb, je teste ça cette semaine...

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

En fait, MicroStation ne peut travailler sans avoir de fichier .dgn "ouvert". AutoCAD le peut.

 

Microstation travail en "accès direct" sur des fichier, pas besoin d'enregistrer depuis MicroStation, il le fait tout seul. A condition d'avoir un fichier "ouvert".

 

AutoCAD, lui, travail d'origine avec un fichier qui n'a pas encore de nom, il s'appelle généralement "Dessin1" et c'est lors du premier enregistrement qu'il demande à l'utilisateur un "vrai" nom, avec répertoire et tout...

 

Enfin, c'est tel que je l'ai compris, du coup, j'ai fais ça :

Sub MacMicroST()
   Dim oMicroStation As MicroStationDGN.Application
   Dim oFSO As Scripting.FileSystemObject
   Dim oConnector As MicroStationDGN.ApplicationObjectConnector
   Dim oDesign As DesignFile

   FichierDGN="C:\temp\DesignFile.dgn"
   FichierDGNCible="c:\temp\FichierCible.dgn"
   Set oFSO = New Scripting.FileSystemObject
   oFSO.CopyFile FichierDGN, FichierDGNCible, True

   If oMicroStation Is Nothing Then
       Set oConnector = New MicroStationDGN.ApplicationObjectConnector
   End If
   oConnector.Application.Visible = True

   Set oDesign = oConnector.Application.OpenDesignFile(FichierDGNCible, False)

End Sub

Copier un fichier DGN original et le copier en le renommant, puis, ouvrir ce dernier fichier dans MicroStation...

 

Me reste plus qu'à trouvé la commande qui créé un "niveau" dans MicroStation avec sa couleur, type de ligne...

 

Merci encore à tous...

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Bonsoir,

En fait, MicroStation ne peut travailler sans avoir de fichier .dgn "ouvert". AutoCAD le peut.

Bah non, Espace de travail,Choix, Opération et tu coches "entrer dans dessin sans nom" et le comportement est le même.

Un peu hors sujet mais je ne voulais pas te laisser sur cette fausse impression

write a book about what ??

Posté(e)

Bonsoir lrdb,

 

Lorsque je lance MicroStation, j'ai directement la fenêtre d'ouverture d'un fichier, et je ne trouve pas "Espace de travail".

 

Merci de ne pas me laisser tombé... ;)

 

Denis...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité