Wie rufe ich Daten aus dem Web ab, indem ich Zellwerte verwende, um eine URL zusammenzustellen, aus der ich Daten abrufen kann? Daten aus dem Web mithilfe von Zellreferenzen abrufen

Wie rufe ich Daten aus dem Web ab, indem ich Zellwerte verwende, um eine URL zusammenzustellen, aus der ich Daten abrufen kann? Daten aus dem Web mithilfe von Zellreferenzen abrufen

Wie erhalte ich Daten aus dem Internet, indem ich Zellenwerte verwende, um eine URL zusammenzustellen, aus der ich sie abrufen kann?

Wie erhalte ich Daten aus dem Internet, indem ich Zellenwerte verwende, um eine URL zusammenzustellen, aus der ich sie abrufen kann?

Wie verwende ich Zellreferenzen, um eine URL zusammenzustellen, mit der Excel Daten aus dem Internet abrufen kann? Im Grunde versuche ich, Zellwerte zu verwenden, um eine vollständige URL mit Abfragezeichenfolge zusammenzustellen, um das Abfrageergebnis in eine andere Zelle zurückzugeben.

Ich habe ein Arbeitsblatt mit API-URLs in einer Spalte und Abfragezeichenfolgen in der nächsten Spalte. Ich möchte beispielsweise Zelle $B$2 (URL) und Zelle $C$2 (Abfragezeichenfolge) verwenden, um URL-Ergebnisse aus =$B$2&$C$2 zu erhalten.

Die meisten Ergebnisse wären lediglich ein Zahlenwert und müssten nicht interpretiert werden, während andere Ergebnisse JSON-Ergebnissen ähneln und an die richtige Position zum gewünschten Ergebnis navigiert/gebrannt werden müssten.

„Daten aus dem Web abrufen“ in Excel funktioniert hierfür gut, wenn ich die URL nativ eingebe … das Problem besteht jedoch darin, dass ich versuche, diese Funktion in Excel zu verwenden, aber stattdessen die URL einfach aus Zellbezügen zusammenstellen lasse, anstatt die URL nativ in das Formular zum Abrufen von Daten aus dem Web einzugeben.

Irgendwelche Ideen? Danke

Bearbeiten:
Ich habe mich an einen meiner alten Professoren gewandt, der Excel unterrichtete. Er sagte, er sei sich nicht sicher, schlug aber vor, dass ein VBA-Skript eine Option sein könnte.

Antwort1

Soweit ich weiß, müssen Sie für jede Zeile eine Abfragetabelle erstellen, da die Daten-URL für jede Zeile unterschiedlich/eindeutig ist. Alternativ können Sie eine einzelne Abfragetabelle verwenden und alle Zeilen durchlaufen, die Verbindungs-URL der Tabelle bei jeder Iteration aktualisieren und die abgerufenen Daten in die entsprechende Zeile abrufen. Verwenden Sie dazu einen VBA-Ausschnitt wie den folgenden (Haftungsausschluss: nicht getestet):

' assuming your data starts at row 2
i = 2
Do While Not IsEmpty(Sheet1.Cells(i, 2))
    url = "TEXT;" & Sheet1.Cells(i, 2) & Sheet1.Cells(i, 3)
    With Sheet1.QueryTables
        If .Count < 1 Then
            .Add url, Sheet1.Range("Z1")
        Else
            .Item(1).Connection = url
        .Item(1).Refresh
        ' assuming column D would hold the results
        Sheet1.Cells(i, 4) = Sheet1.Range("Z1")
        ' do any further manipulations of the fetched Sheet1
    End With
    i = i + 1
Loop

verwandte Informationen