Hallo, ich stümper hier grad an einem Skript rum, das testen soll, ob in 2 Richtextfeldern was enthalten ist, um dann einen Status in einem anderen Dokument zu ändern. Solang das ein Feld betrifft funktioniert das auch, aber bei 2 Feldern wirft er mir beim 2. Feld immer einen Type mismatch error, obwohl ich doch den gerade im Errorhandling abfange. Warum?
Hier der Auszug aus dem Skript:
Set rtitem2 = curdoc.GetFirstItem( "fdMaterialRT" )
If Not rtItem2 Is Nothing Then
If (rtitem2.Type = RICHTEXT ) Then
On Error 13 Goto LabNoEmbedd2
Forall p In rtitem2.EmbeddedObjects
If ( p.Type = EMBED_ATTACHMENT ) Then
iUsed2 = 1 '* RT ist belegt
Exit Forall
End If
End Forall
LabNoEmbedd2:
Err = 0
End If
If iUsed2 = 0 Then '* Nur prüfen, wenn keine Anhänge
pText2 = rtitem2.GetFormattedText (False, 0)
If Trim (pText2) <> "" Then
iUsed2 = 2
End If
End If
End If
Select Case iUsed2
Case 0 'Kein Konferenzmaterial enthalten
strmaterial = "no"
Case 1
strmaterial = "yes"
Case 2
strmaterial = "yes"
End Select
'#################################################################
'Check auf enthaltenten Tagungsbericht und Bewertung:
Set rtitem = curdoc.GetFirstItem( "fdAnhangRT" )
If Not rtitem Is Nothing Then
If (rtitem.Type = RICHTEXT ) Then
On Error 13 Goto LabNoEmbedd
Forall x In rtitem.EmbeddedObjects 'Hier kommt der Fehler
If ( x.Type = EMBED_ATTACHMENT ) Then
iUsed = 1 '* RT ist belegt
Exit Forall
End If
End Forall
LabNoEmbedd:
Danke & Gruß
Klaus