Liebe ExpertInnen,
wie stelle ich fest, ob eine Property überhaupt existiert? Mit
For Each prop In ActiveDocument.CustomDocumentProperties
If prop.Name = propname Then vorhanden = True
Next prop
If vorhanden Then Tuwatt()
geht es natürlich, nur den Weg
If ActiveDocument.CustomDocumentProperties(propname) Then Tuwatt()
wäre mir viel lieber, schließlich kann ich existierende Properties ja auch per Name ansprechen. Ist aber kein Boolean, ist kein NULL, ist weiß der Geier was. Wer weiß was?
Gruß Ralf
Hallo, Ralf!
Ich lese den Namen der Property einfach aus. Wenn’s die Property nicht gibt, kommt ein Fehler 5. Den fange ich ab… Also ungefähr so:
Function ExistCustDocProp(pstrName As String) As Boolean
Const cstrProcName = "ExistCustDocProp" 'ErrorHandler:blush:$N=FindFiles
Dim strName As String
Dim bExist As Boolean
'--------------------
On Error GoTo ErrorHandler
bExist = True
strName = ActiveDocument.CustomDocumentProperties(pstrName).Name
' Fehlerbehandlungsblock hinzugefügt vom Fehlerbehandlungsroutinen-Add-In. Bearbeiten Sie diesen Codeabschnitt NICHT.
'--------------------
ErrorHandler:
Select Case Err.Number
Case 0
ExistCustDocProp = bExist
Case 5
bExist = False
Resume ErrorHandler
Case Else
MsgBox "Fehler: " & vbTab & Err.Number & "-" & Err.Description & vbCrLf \_
& "Funktion:" & vbTab & cstrProcName, vbExclamation + vbOKOnly, "Fehler!"
Resume ErrorHandler
End Select
' Ende des Fehlerbehandlungsblocks.
End Function
Gruß, Manfred
Moin, Manfred,
Ich lese den Namen der Property einfach aus. Wenn’s die
Property nicht gibt, kommt ein Fehler 5. Den fange ich ab…
heißt das, der Fehler muss provoziert werden, wenn die Properties nicht durchgenudelt werden sollen? Da ist dann wohl ein Loch in VBA.
Nebenbei: Der Errorhandler kommt mir so bekannt vor - den hast Du mir wohl schon mal gezeigt
))
Gruß Ralf
Moin, Ralf!
Ich lese den Namen der Property einfach aus. Wenn’s die
Property nicht gibt, kommt ein Fehler 5. Den fange ich ab…
heißt das, der Fehler muss provoziert werden, wenn die
Properties nicht durchgenudelt werden sollen?
Ich meine ja.
Da ist dann wohl ein Loch in VBA.
It’s not a bug, it’s a feature.
Nebenbei: Der Errorhandler kommt mir so bekannt vor - den hast
Du mir wohl schon mal gezeigt
))
Die Wahrscheinlichkeit ist recht hoch:wink:
Gruß, Manfred