Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1924to1928
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Exchange rate aus Website in Excel holen

Exchange rate aus Website in Excel holen
13.04.2023 14:14:33
Ritzl Marc

Hallo
Kann mir jemand helfen, ich bekomme eine Fehlermeldung: Object Variable or With Block Variable not set.
Ich möchte mit dem macro den Wechselkurs aus der Website holen. Das VIdeo dazu: https://www.youtube.com/watch?v=IOzHacoP-u4
Vielen Dank.

Sub Button14_Click()
Dim request As Object
Dim response As String
Dim html As New HTMLDocument
Dim website As String
Dim price As Variant



website = "https://finance.yahoo.com/quote/EURUSD%3DX?p=EURUSD%3DX"
'website = "https://finance.yahoo.com/quote/005930.KS?p=005930.Ks&.tsrc=fin-srch"

Set request = CreateObject("MSXML2.XMLHTTP")

request.Open "GET", website, False

request.setRequestHeader "IF-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"

request.send

response = StrConv(request.responseBody, vbUnicode)

Set html = New HTMLDocument

html.body.innerHTML = response

'price = html.getElementsByClassName("e3b14781 e983cf79")(0).innerText

Set price = html.getElementsByClassName("Trsdu(0.3s) Fw(b) Fz(36px) Mb(-4px) D(ib)")(0).innerText

If Not price Is Nothing Then
MsgBox (price(0).innerText)
End If

End Sub


PS: Die libraries habe ich eingebunden (Microsoft XML, v6,0 und MS HTML object library

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Exchange rate aus Website in Excel holen
13.04.2023 15:10:01
Ritzl Marc
Cool, aber damit kenn ich mich leider nicht aus, weiss nicht mal wo die Power Queries zu finden sind in Excel.


AW: Exchange rate aus Website in Excel holen
14.04.2023 10:12:29
RItzl
Herzlichen Dank


Anzeige
AW: Exchange rate aus Website in Excel holen
13.04.2023 15:54:21
Ritzl Marc
und wie würde ich den aktuellen Kurs reinholen? In den Tabllen sind nur die "historischen" Daten


AW: Exchange rate aus Website in Excel holen
13.04.2023 16:28:40
Eifeljoi5
Hallo

Das einfachste über im Menü:
Daten und Alle Aktualisieren und alle aktualisieren klicken.
Oder ein rechts Klick in die zu aktualisierende PQ Tabelle machen und aktualisieren klicken.


AW: Exchange rate aus Website in Excel holen
13.04.2023 14:50:12
peterk
Hallo

Meine Vermutung:


Set price = html.getElementsByClassName("Trsdu(0.3s) Fw(b) Fz(36px) Mb(-4px) D(ib)")(0).innerText
InnerText ist ein String und kein Objekt, damit ist die Set Anweisung falsch.

Peter


Anzeige
AW: Exchange rate aus Website in Excel holen
13.04.2023 15:04:40
Ritzl Marc
Vielen Dank, das hat aber leider nicht geholfen. Hatte ich ursprünglich auch ohne SET - Bing Chat (KI) hat das vorgeschlagen...aber Danke, habs wieder ohne Set, immer noch die gleiche Fehlermeldung.


AW: Exchange rate aus Website in Excel holen
13.04.2023 15:53:42
peterk
Hallo

Dein Element gibts so nicht. Hier mal etwas was funktioniert, ob es der richtige Wert ist kann ich Dir nicht sagen.


Sub WebS()

    Dim request As Object
    Dim response As String
    Dim html As New HTMLDocument
    Dim website As String
    Dim price As Object

website = "https://finance.yahoo.com/quote/EURUSD%3DX?p=EURUSD%3DX"
'website = "https://finance.yahoo.com/quote/005930.KS?p=005930.Ks&.tsrc=fin-srch"

    Set request = CreateObject("MSXML2.XMLHTTP")

    request.Open "GET", website, False

    request.setRequestHeader "IF-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"

    request.send

    response = StrConv(request.responseBody, vbUnicode)
    
    ' Anwort in einen Textfile schreiben (If true ...)
    
    If False Then
        Open "c:\temp\aaaa.txt" For Output As #1
        Print #1, response
        Close #1
    End If


    html.body.innerHTML = response

    Set price = html.getElementsByClassName("Fw(b) Fz(36px) Mb(-4px) D(ib)")

    If price.Length > 0 Then
        MsgBox (price(0).innerText)
    Else
        MsgBox ("Element not found!")
    End If

End Sub

Peter


Anzeige
AW: Exchange rate aus Website in Excel holen
13.04.2023 15:56:39
Ritzl Marc
Genial, bist ein "Gott". Danke vielmals


Schaue dir ebenfalls...
13.04.2023 19:24:04
Yal
https://sdw-wsrest.ecb.europa.eu/help/

weil auf die Stabilität von "getElementsByClassName("Fw(b) Fz(36px) Mb(-4px) D(ib)") " würde ich gross setzen... funktioniert heute, aber morgen womöglich nicht mehr.

VG
Yal


AW: Schaue dir ebenfalls...
14.04.2023 10:11:26
RItzl
Vielen Dank

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige