Ich bin nicht sehr fest in VBA und ich habe versucht, eine Funktion unter Word zu verwenden, die ich vor einiger Zeit in Excel geschrieben habe. (Wo es funktioniert einwandfrei!)VBA Word 2013: Scripting.FileSystemObject: Laufzeitfehler 424 - Objekt erforderlich
Die Funktion geht durch eine Textdatei und gibt Strings nach einem bestimmten (gesucht) anderen string:
Function keySearch(ByVal sSearch As String) As String
Dim fso As New FileSystemObject
Dim FileNum
Dim DataLine As String
Dim posOf_A As Integer
Dim filepath As String
keySearch = ""
'Create filesystem object
Set fso = CreateObject("Scripting.FileSystemObject")
'filepath to textfile
filepath = ActiveWorkbook.Path & "\temp.txt"
Set FileNum = fso.OpenTextFile(filepath, 1) '<--- This is where the error occurs!
Do While Not FileNum.AtEndOfStream
DataLine = FileNum.ReadLine
posOf_A = InStr(1, DataLine, sSearch, vbTextCompare)
If posOf_A = 1 Then
keySearch = Right(DataLine, Len(DataLine) - Len(sSearch))
End If
Loop
FileNum.Close
End Function
Der Fehler in der Leitung auftritt, wo die Textdatei soll geöffnet sein. Fehlermeldung: Laufzeitfehler 424: Objekt erforderlich.
Ich habe geteilt bereits die Linie so weit wie möglich nach unten verengenden die Suche von dieser ursprünglichen Codezeile aus der unter Excel einwandfrei arbeitet Funktion:
FileNum = CreateObject("Scripting.FileSystemObject").OpenTextFile(ActiveWorkbook.Path & "\temp.txt", 1)
Aber ich einfach nicht scheinen zu sein Ich habe mehrere Beispiele im Internet gesehen, die genau das tun (scheinbar) genau so, wie ich es mache ...
PS: Microsoft Scripting Runtime ist aktiviert.
Vielen Dank im Voraus für jede Art von Hilfe, die wirklich geschätzt wird!
Das war's! Vielen Dank! – budekatude
Kein Problem. Herzlich willkommen! – Quint