Bonjour,
je suis un technicien BEO qui début en VB donc merci d’être indulgent
j'ai crée une macro qui m'instancie autant de fois que je clic un "drawing text" dans une "active view"
le problème c'est que je peux avoir à mettre ce "drawing text" dans d'autre "view" ou dans une "view" qui est dans un autre "sheet" ou encore l'associer à une cote.
Pour l'instant ,je le fais manuellement en stoppant la macro,en activant l'autre view et en relançant la macro .
je pense qu'un "selectelement2" me permettrai de passer d'une view à l'autre, de sélectionner une cote pour pouvoir l'associer sans avoir à arrêter ma macro mais je ne sais pas comment taper ce code.
merci de m'aiguiller.
voici mon code:
Sub CATMain()
'********************************************************************************************************************
'declare le document actif
Dim Adoc 'As DrawingDocument est commanté parceque indicat2d ne fonctionne pas avec
Set Adoc = CATIA.ActiveDocument
'declare la vue active
Dim MyView As DrawingView
Set MyView = Adoc.Sheets.ActiveSheet.Views.ActiveView
'********************************************************************************************************************
'********************************************************************************************************************
'déclare une chaine de caractere
Dim Rse As String
Rse = InputBox("Quel est le numéro d'indice ?", "Ajouter indices" )
Dim Maj As String
Maj = UCase(Rse) 'permet de mettre la chaine de caractere en majuscule
'********************************************************************************************************************
LA:
'********************************************************************************************************************
Dim DrawingWindowLocation(1) 'declare un tableau de 2 ligne
Status = Adoc.Indicate2D("select a location into the drawing window", DrawingWindowLocation) 'recupere les coordonnées au moment du clic
If (Status = "Cancel" ) Then Exit Sub 'sort si autre action que clic
Dim MyText As DrawingText 'declare un texte
Set MyText = MyView.Texts.Add(Maj, DrawingWindowLocation(0), DrawingWindowLocation(1)) 'recupere le texte en majuscule _
et le positionne à l'endroit du clic
'********************************************************************************************************************
'********************************************************************************************************************
'propriété du texte:font,couleur etc
Dim TP As DrawingTextProperties
Set TP = MyText.TextProperties
TP.FrameType = catCircle
TP.FONTSIZE = 2.5
TP.Justification = catCenter
MyText.Name = "REV|" & Maj
Sel.Clear
Sel.Add MyText
Sel.VisProperties.SetRealColor 255, 0, 254, 1
Sel.Clear
'********************************************************************************************************************
TP.Update
GoTo LA
End Sub