Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender Navigationstipps
Inhaltsverzeichnis

Hilfe - Aktienkurse aus Yahoo in Excel

Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 13:44:10
Christian T.
Hallo,

ich möchte gerne Aktienkurse und andere Kenndaten von Yahoo Finanzseiten in Excel formatieren. Habe das unten genannte Programm geschrieben allerdings bekomme ich diese Fehlermeldung...

"Code kann im Haltemodus nicht ausgeführt werden"

Was ahbe ich falsch gemacht. Gibt es vielleicht nützliche Links im www zu diesem Thema (Aktienkurse und Kennwerte aus www in Excel integrieren???

Schöne Grüsse und vielen Dank,

Christian T.


Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.CommandBars("Data").Controls("Yahoo").Delete
On Error GoTo 0
End Sub



Private Sub Workbook_Open()
Dim oBtn As CommandBarButton
With Application.CommandBars("Data")
On Error Resume Next
.Controls("Yahoo").Delete
On Error GoTo 0
Set oBtn = .Controls.Add
End With
With oBtn
.Caption = "Yahoo"
.FaceId = 610
.BeginGroup = True
.OnAction = "Abruf"
End With
End Sub


StandardModule: Modul1

Sub Abruf()
Dim wks As Worksheet
Dim var As Variant
Dim sWkn As String, sQuery As String
Application.ScreenUpdating = False
Set wks = ActiveSheet
Set wks = InputBox( _
prompt:="WKN-Nr.:", _
Title:="Web-Abfrage", _
Default:="840400")
If sWkn = "" Then Exit Sub
sQuery = "http://de.finance.yahoo.com/q?m=*&s=" & sWkn & "&d=v1"
Worksheets.Add after:=Worksheets(Worksheets.Count)
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;" & sQuery, _
Destination:=Range("A1"))
.Refresh BackgroundQuery:=False
End With
var = Application.Match(sWkn & "*", Columns(1), 0)
wks.Range("A2").Value = Cells(var, 2).Value
wks.Range("B2").Value = Cells(var, 1).Value
wks.Range("C2").Value = Cells(var, 3).Value
wks.Range("D2").Value = Cells(var, 5).Value
wks.Range("E2").Value = Cells(var, 6).Value
wks.Range("F2").Value = Cells(var, 7).Value
wks.Range("G2").Value = Cells(var, 8).Value
wks.Range("H2").Value = Now
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
Worksheets("Daten").Select
Range("A1").Select
Columns("A:G").AutoFit
Application.ScreenUpdating = True
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 14:45:02
BerndE
Hallo Christian,

die Meldung bedeutet, dass vorher eine Fehlermeldung aufgetaucht ist, die Dein Makro gestoppt hat (=Haltemodus ; Fehlerzeile gelb markiert). Diesen musst Du zurücksetzen, bevor das Makro erneut ausgeführt werden kann (Rechteck-Symbol = Beenden).

Finde Deine Lösung für eine Abfrage aus dem Internet übrigens sehr interessant und habe Sie daher getestet. Nachdem ich 'Set wks = InputBox...' durch 'sWkn=InputBox...' ersetzt habe, hat sie auch funktioniert. Gute Idee !!!

Gruß
Bernd

www.bernds.page.de.vu
AW: Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 14:57:52
Christian T.
Hallo Bernd,

vielen Dank für die Hilfe. Ich habe vor verschiedene Kenndaten wie P/E Ratio, Marktkapitalisierung, 52 Wochenhoch usw. von 20000 US Aktien abzurufen und nach verschiedenen Kenndaten zu "SCREENEN"

Schöne Grüsse,

Christian T.
Anzeige
AW: Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 15:04:26
Christian T.
Hallo Bernd,

ich habe den Fehler wie Du Ihn beschrieben hast abgeändert. Es funktioniert aber immer noch nicht. Könntest Du mal bitte das komplette Programm hier herien stellen?

Wo schreibst du die WKN hin ???

Grüsse,

Christian T.
AW: Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 15:55:30
BerndE
Hier bitte...

Dim wks As Worksheet
Dim var As Variant
Dim sWkn As String, sQuery As String
Application.ScreenUpdating = False
Set wks = ActiveSheet
sWkn = InputBox( _
prompt:="WKN-Nr.:", _
Title:="Web-Abfrage", _
Default:="840400")
If sWkn = "" Then Exit Sub
sQuery = "http://de.finance.yahoo.com/q?m=*&s=" & sWkn & "&d=v1"
Worksheets.Add after:=Worksheets(Worksheets.Count)
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;" & sQuery, _
Destination:=Range("A1"))
.Refresh BackgroundQuery:=False
End With
var = Application.Match(sWkn & "*", Columns(1), 0)
wks.Range("A2").Value = Cells(var, 2).Value
wks.Range("B2").Value = Cells(var, 1).Value
wks.Range("C2").Value = Cells(var, 3).Value
wks.Range("D2").Value = Cells(var, 5).Value
wks.Range("E2").Value = Cells(var, 6).Value
wks.Range("F2").Value = Cells(var, 7).Value
wks.Range("G2").Value = Cells(var, 8).Value
wks.Range("H2").Value = Now
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
Worksheets("Daten").Select
Range("A1").Select
Columns("A:G").AutoFit
Application.ScreenUpdating = True

Gruß
Bernd

www.bernds.page.de.vu
Anzeige
AW: Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 16:05:45
Christian T.
Hallo Bernd,

ich bekomme es leider immer noch nicht hin.

Habe Deinen Teil des Programms ersetzt.
Danach habe ich die Zelle A1 markiert in der eine WKN steht. Danach auf den Button gedrückt.

Aber wieder die gleiche Fehlermeldung :(

"Code kann im Haltemodus nicht ausgeführt werden"
und die folgende Zeile ist gelb unterlegt!!!

"Sub Abruf()"

was mach ich nur falsch ???

Grüsse,

Christian
AW: Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 16:08:28
Christian T.
Hallo Bernd,

ich bekomme es leider immer noch nicht hin.

Habe Deinen Teil des Programms ersetzt.
Danach habe ich die Zelle A1 markiert in der eine WKN steht. Danach auf den Button gedrückt.

Aber wieder die gleiche Fehlermeldung :(

"Code kann im Haltemodus nicht ausgeführt werden"
und die folgende Zeile ist gelb unterlegt!!!

"Sub Abruf()"

was mach ich nur falsch ???

Grüsse,

Christian
Anzeige
AW: Hilfe - Aktienkurse aus Yahoo in Excel
25.09.2003 16:30:06
BerndE
siehe meine 1. Antwort (Haltemodus beenden !!!)

Ich muss jetzt leider weg. Wenn Du es nicht schaffst, helfe ich Dir gerne morgen früh weiter...

Gruß
Bernd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige