CATIA V5 | 3DEXPERIENCE
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
-25%
Le deal à ne pas rater :
PC Portable Gamer 16,1” HP Victus 16 – 16 Go /512 Go
749.99 € 999.99 €
Voir le deal

macro pour désigner un endroit dans le drawing et créer un texte à l'endroit désigné

2 participants

Aller en bas

R?solu macro pour désigner un endroit dans le drawing et créer un texte à l'endroit désigné

Message par xorman Lun 15 Fév 2016 - 14:55

bonjour
j'ai un bout de code récupérer sur V5Automation.chm ,mais je ne voit pas pourquoi ca ne fonctionne pas

Code:
Public document        As document
Public DrwDocument     As DrawingDocument
Public selection      As selection
Public DrawingSheets       As DrawingSheets
Public DrawingSheet         As DrawingSheet
Public DrawingViews        As DrawingViews
Public DrawingView          As DrawingView
Public DrawingTexts        As DrawingTexts
Public Mytext          As DrawingText


Sub CATmain()

Set document = CATIA.ActiveDocument
Set selection = document.selection
Set DrawingSheets = document.Sheets
Set DrawingSheet = DrawingSheets.ActiveSheet
Set DrawingViews = DrawingSheet.Views
Set DrawingView = DrawingViews.ActiveView
Set DrawingTexts = DrawingView.Texts

 'We propose to the user that he specify a location in the drawing window
 Dim DrawingWindowLocation(1)
 Status = document.Indicate2D("select a location into the drawing window", DrawingWindowLocation)
 If (Status = "Cancel") Then Exit Sub
 Set DrawingText = DrawingTexts.Add("Hello world", DrawingWindowLocation(0), DrawingWindowLocation(1))
End Sub
ci joint le message d'erreur
blocage sur la ligne  Status = document.Indicate2D
macro pour désigner un endroit dans le drawing et créer un texte à l'endroit désigné <a href=macro pour désigner un endroit dans le drawing et créer un texte à l'endroit désigné Captur10" />
xorman
xorman
actif
actif

Messages : 99
Date d'inscription : 05/09/2008
Age : 48
Localisation : Cherbourg

http://www.myimpression3d.com

Revenir en haut Aller en bas

R?solu Re: macro pour désigner un endroit dans le drawing et créer un texte à l'endroit désigné

Message par xorman Lun 15 Fév 2016 - 16:59

bon j'ai trouvé cela provenait d'une mauvaise déclaration de la variable document...pff
public documents As Objet et non document
ci joint le code
Code:
'**************************************************************************************************************************
'OBJECTIF : demander à l'utilisateur de désigner un endroit dans un drawing puis créer un texte à l'endroit désigné
'**************************************************************************************************************************

Option Explicit

'déclaration des variables
Public document       As Object
Public DrwDocument    As DrawingDocument
Public selection      As selection
Public DrawingSheets  As DrawingSheets
Public DrawingSheet   As DrawingSheet
Public DrawingViews   As DrawingViews
Public DrawingView    As DrawingView
Public DrawingTexts   As DrawingTexts
Public Mytext         As DrawingText
Public status         As Variant


Sub CATmain()

Dim DrawingWindowLocation(1)

'Initialisation et création des objets principaux
Set document = CATIA.ActiveDocument
Set DrawingSheets = document.Sheets
Set DrawingSheet = DrawingSheets.ActiveSheet
Set DrawingViews = DrawingSheet.Views
Set DrawingView = DrawingViews.ActiveView
Set DrawingTexts = DrawingView.Texts


 'on propose a l'utilisateur de désignaer un endroit dans le drawing
MsgBox "Veuillez indiquer l'endroit ou le texte sera créé"
 ' on récupère l'endroit sélectionné
status = document.Indicate2D("select a location into the drawing window", DrawingWindowLocation)
If (status = "Cancel") Then Exit Sub
 ' on créer le texte
Set Mytext = DrawingTexts.Add("création d'un texte à l'endroit désigné par l'utilisateur", DrawingWindowLocation(0), DrawingWindowLocation(1))

End Sub
xorman
xorman
actif
actif

Messages : 99
Date d'inscription : 05/09/2008
Age : 48
Localisation : Cherbourg

http://www.myimpression3d.com

Revenir en haut Aller en bas

R?solu Re: macro pour désigner un endroit dans le drawing et créer un texte à l'endroit désigné

Message par Guss_ Ven 19 Fév 2016 - 17:25

En fait c'est une histoire de "Early and Late Binding" https://msdn.microsoft.com/en-us/library/0tcf61s1.aspx

Ici c'est bien expliqué pourquoi on à cette erreur alors qu'on veux faire du Early binding en VBA catia
https://v5vb.wordpress.com/2010/07/29/restricted-interfaces/

Guss_
Admin
Admin

Messages : 530
Date d'inscription : 08/01/2010

Revenir en haut Aller en bas

R?solu Re: macro pour désigner un endroit dans le drawing et créer un texte à l'endroit désigné

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum