Hallo liebes Forum,
Ich will ein Makro schreiben welches automatisch an bestimmte Textfelder meiner Zeichnung mit Inhalt füllt.
ich habe allerdings problem geziehlt eine Textfeldinstanz anzusprechen.
'---- Begin resolution script for object : Text.120
Dim drawingDocument1 As DrawingDocument
Set drawingDocument1 = CATIA.ActiveDocument
Dim drawingSheets1 As DrawingSheets
Set drawingSheets1 = drawingDocument1.Sheets
Dim drawingSheet1 As DrawingSheet
Set drawingSheet1 = drawingSheets1.Item("Sheet.1")
Dim drawingViews1 As DrawingViews
Set drawingViews1 = drawingSheet1.Views
Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.Item("Background View")
Dim drawingTexts1 As DrawingTexts
Set drawingTexts1 = drawingView1.Texts
Dim drawingText1 As DrawingText
Set drawingText1 = drawingTexts1.Item("Text.120")
'---- End resolution script
In der letzten Zeile kommt ein Fehler:
run-time error '13'
type mismatch
:-(
Was mach ich denn verkehrt?
Bisher untersuche ich über eine For schleife alle Textfelder und schau ob der Inhalt dem meiner suche entspricht. Das ist aber zum einen keine schöne Lösung und zum anderen funtktioniert es nicht überall so wie ich das will. aber hier noch ein Codebeispiel
Dim j As Integer
Dim oText As DrawingText
Dim ocText As DrawingTexts
Set ocText = oView.Texts
For j = 1 To ocText.Count
Set oText = ocText.Item(j)
If oText.Text = "gesuchter text" Then
oText.Text = "ersatz text"
End If
Also ich bin für jedem Tip dankbar.
Grüße
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP