|  
                                             Hallo zusammen, ich hoffe ihr könnt mir helfen, ich komme nicht weiter, auch nicht bard oder ChatGPT. 
In meiner Excel habe ich in Spalte C eine Liste mit lokalen Dateienpfaden zu .html Dateien. Diese html Dateien enthalten mehrere Einträge wie  
<meta itemProp="sku" content="12345abc"/> 
Die sku / Artikelnummer im content ist logischerweise dynamisch. Ich möchte nun in Spalte D eine Liste mit allen gefunden sku's haben, getrennt durch ein komma. Mein Code funktioniert auch schon recht gut, allerdings werden nur die ersten 8 gefunden, dann kommt Fehler 6, Überlauf. 
Kann mir bitte jemand helfen? 
  
Sub DurchsucheMehrereHTMLDateienNachSKU() 
    Dim ws As Worksheet 
    Dim objFSO As Object 
    Dim objFile As Object 
    Dim htmlContent As String 
    Dim startIdx As Integer 
    Dim endIdx As Integer 
    Dim sku As String 
    Dim i As Integer 
    Dim j As Integer 
    Dim skuCount As Integer 
     
    ' Arbeitsblatt "Sheet1" referenzieren 
    Set ws = ThisWorkbook.Sheets("Sheet1") 
     
    ' Objekt für Dateisystemzugriff erstellen 
    Set objFSO = CreateObject("Scripting.FileSystemObject") 
     
    ' Durchsuche die Dateien von Zeile 2 bis Zeile 5 in Spalte C 
    For j = 2 To 5 
        ' Pfad aus aktueller Zeile, Spalte C lesen 
        Dim filePath As String 
        filePath = ws.Cells(j, 3).Value 
         
        ' Überprüfen, ob es sich um eine .html Datei handelt 
        If objFSO.FileExists(filePath) And LCase(Right(filePath, 5)) = ".html" Then 
            ' HTML-Datei öffnen und nach SKU durchsuchen 
            Set objFile = objFSO.OpenTextFile(filePath) 
            htmlContent = objFile.ReadAll 
            objFile.Close 
             
            ' SKU in der HTML-Datei finden und in aufeinanderfolgende Spalten eintragen 
            startIdx = InStr(htmlContent, "<meta itemProp=""sku"" content=""") 
            i = 4 ' Beginne in Spalte D 
            skuCount = 0 ' Anzahl gefundener SKUs zurücksetzen 
            Do While startIdx > 0 
                startIdx = startIdx + Len("<meta itemProp=""sku"" content=""") 
                endIdx = InStr(startIdx, htmlContent, """") 
                sku = Mid(htmlContent, startIdx, endIdx - startIdx) 
                 
                ' SKU in nächster freier Spalte eintragen 
                ws.Cells(j, i).Value = sku 
                i = i + 1 
                skuCount = skuCount + 1 
                 
                ' Prüfen, ob das Ende der Datei erreicht wurde 
                If startIdx >= Len(htmlContent) Then Exit Do 
                 
                ' Weitere SKU suchen 
                startIdx = InStr(startIdx, htmlContent, "<meta itemProp=""sku"" content=""") 
            Loop 
             
            MsgBox "Es wurden " & skuCount & " SKUs in der Datei " & filePath & " gefunden und in aufeinanderfolgende Spalten eingetragen." 
        Else 
            MsgBox "Der angegebene Pfad in Zeile " & j & ", Spalte C ist ungültig oder es handelt sich nicht um eine .html Datei." 
        End If 
    Next j 
     
    ' Aufräumen 
    Set ws = Nothing 
    Set objFSO = Nothing 
    Set objFile = Nothing 
End Sub 
     |