Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1764to1768
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

Daten ziehen funktioniert nicht mehr

Daten ziehen funktioniert nicht mehr
08.06.2020 17:35:33
Markus
Hallo zusammen,
ich krieg es leider nicht hin und hoffe ihr könnt mir helfen. Wenn ich im Schrittmodus durchgehe zieht er mir alles, wie er es soll. Wenn ich es laufen lasse bricht er immer wieder nach ein paar Durchgängen ab. Ich weiß nicht wieso. Habe die ganzen Abbrüche jetzt mit rein gebracht, nützt aber auch nichts. Und seit dem We hat er gar nichts mehr gezogen :'(
Sub alledatenkurz()
' Dieses Makro dient dazu alle Daten aus den börse.de daten auszulesen und in  _
20200327_Aktienautomatik in die ISin Liste zu schreiben--------------------------------'
Workbooks("20200327_Aktienautomatik").Activate
Sheets("ISIN_Liste").Activate
Dim aktie As String
Dim zelleindex As Range
Dim bereichindex As Range
Dim letztezeile As Integer
Dim ws As Worksheet
Dim i As Integer
Dim letztezeileVA As Integer
Dim isin As String
Dim letztezeilezus As Integer
Dim aktieunterstrich As String
Dim zelle1 As Range
Dim bereich1 As Range
Dim n As Integer
Dim letztespalte As Integer
Dim letztespaltezus As Integer
Dim zähler As Integer
Dim beschriftung As Boolean
Dim speicher As Integer
Dim letztezeileisin As Integer
Dim aktuellesjahr As Integer
Dim letztesjahr As Integer
aktuellesjahr = Year(Date)
letztesjahr = aktuellesjahr - 1
zähler = 1
speicher = 0
Application.ScreenUpdating = True 'Bildschirmaktualisierung ausschalten
letztezeile = Worksheets("ISIN_Liste").Cells(Rows.Count, 1).End(xlUp).Row
Application.DisplayAlerts = False
'Alle Blätter löschen, die nicht zu den Stammblättern gehören ---------------------------------- _
For Each ws In ThisWorkbook.Worksheets
If ws.Name  "ISIN_Liste" Then
ws.Delete
End If
Next ws
Worksheets("ISIN_Liste").Activate
letztezeile = ActiveSheet.UsedRange.Rows.Count
letztespalte = ActiveSheet.UsedRange.Columns.Count
'Range(Cells(1, 6), Cells(letztezeile, letztespalte)).Clear
Set bereichindex = Worksheets("ISIN_Liste").Range(Cells(77, 1), Cells(letztezeile, 1))
'Abfrage starten für jede Zeile aus Spalte A und die Werte ab Zelle F eintragen ---------------- _
beschriftung = True
For Each zelle In bereichindex
aktie = zelle.Offset(0, 3).Value
isin = zelle.Offset(0, 2).Value
aktieunterstrich = zelle.Offset(0, 4).Value
Debug.Print aktie
Debug.Print isin
Debug.Print aktie & isin
Workbooks.Add
'Speichern des WB in Temp mit Überprüfung ------------------------------------------------------ _
ChDir "C:\Temp"
If Dir("C:\Temp\ISIN_DATEN.xlsx")  "" Then
Kill "C:\Temp\ISIN_DATEN.xlsx"
ActiveWorkbook.SaveAs Filename:="C:\Temp\ISIN_DATEN.xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
Else
ActiveWorkbook.SaveAs Filename:="C:\Temp\ISIN_DATEN.xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False
End If
Sheets("Tabelle1").Activate
Cells(1, 1).Select
'Alle Daten abrufen ---------------------------------------------------------------------------- _
On Error Resume Next
Application.CutCopyMode = False
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;https://www.boerse.de/fundamental-analyse/" & aktie & "/" & isin & "", _
Destination:=Range("$A$1"))
'.CommandType = 0
'.Name = "Fundamentaldaten"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
ActiveSheet.Name = "Fundamentaldaten"
'Abfrage ob Tabellenblatt leer ist----------------------'
Sheets("Fundamentaldaten").Cells(1, 1).Select
i = 1
Do Until i = 10
If ActiveCell.Value = "" Then
i = i + 1
ActiveCell.Offset(1, 0).Select
Else
Exit Do
End If
Loop
If i = 10 Then
GoTo nächste
End If
'Das folgende Blatt beinhaltet nur die Anzahl an Aktien und die Marktkapitalisierung ------- _
Sheets.Add After:=ActiveSheet
Application.CutCopyMode = False
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;https://www.boerse.de/aktien/" & aktie & "/" & isin & "", Destination:= _
Range("$A$1"))
'.CommandType = 0
'.Name = "Marktkapitalisierung"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = False
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingRTF
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = True
.Refresh BackgroundQuery:=False
End With
ActiveSheet.Name = "Marktkapitalisierung"
'Abfrage ob Tabellenblatt leer ist----------------------'
Sheets("Marktkapitalisierung").Cells(1, 1).Select
i = 1
Do Until i = 10
If ActiveCell.Value = "" Then
i = i + 1
ActiveCell.Offset(1, 0).Select
Else
Exit Do
End If
Loop
If i = 10 Then
GoTo nächste
End If
Sheets.Add After:=ActiveSheet
ActiveSheet.Name = "Zusammenfassung"
'Alle Werte aus dem Blatt Fundamentaldaten ziehen und in Zusammenfassung eintragen ------------- _
Sheets("Fundamentaldaten").Activate
letztezeileisin = ActiveSheet.UsedRange.Rows.Count
Dim aktuellerkurs As String
Dim posumsatz As Integer 'für position umsatzzelle
Dim nummer As Integer
Cells(1, 1).Select
posumsatz = 0
nummer = 0
Do Until nummer = letztezeileisin
If ActiveCell.Value  "aktueller Kurs:" Then
ActiveCell.Offset(1, 0).Select
Else
aktuellerkurs = ActiveCell.Offset(0, 1).Value
Exit Do
End If
Loop
If nummer = letztezeileisin Then
GoTo nächste
End If
Cells(1, 1).Select
nummer = 0
Do Until nummer = letztezeileisin
If ActiveCell.Value  "Umsatz" Then
posumsatz = posumsatz + 1
ActiveCell.Offset(1, 0).Select
Else
Exit Do
End If
Loop
If nummer = letztezeileisin Then
GoTo nächste
End If
posumsatz = posumsatz + 1
Debug.Print "posumsatz= " & posumsatz
'Jahreszahlen in Zusammenfassung eintragen ----------------------------------------------------- _
Cells(posumsatz - 1, 1).Value = "Jahreszahlen"
Cells(posumsatz - 1, 1).Select
Dim aj As Integer 'für Anzahl Jahreszahlen
aj = 0
Do Until ActiveCell.Value = ""
ActiveCell.Offset(0, 1).Select
aj = aj + 1
Loop
aj = aj - 1
If Cells(posumsatz - 1, 1 + aj).Value  letztesjahr Then
GoTo nächste
End If
Debug.Print "AJ= " & aj
Range(Cells(posumsatz - 1, 2), Cells(posumsatz - 1, aj + 1)).Select
Selection.Copy
Sheets("Zusammenfassung").Activate
Cells(1, 2).PasteSpecial Paste:=xlPasteAll
Cells(1, 1).Value = "Jahreszahlen"
'Umsatz in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Range(Cells(posumsatz, 1), Cells(posumsatz, aj + 1)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Ebit in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz, 1).Select
nummer = 0
Do Until ActiveCell.Value = "Operatives Ergebnis (EBIT)"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Eigenkapital in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz, 1).Select
nummer = 0
Do Until ActiveCell.Value = "Eigenkapital"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Jahresüberschuss in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz, 1).Select
nummer = 0
Do Until ActiveCell.Value = "Jahresüberschuss"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Eigenkapitalquote in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz + 20, 1).Select
Do Until ActiveCell.Value = "Eigenkapitalquote"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Gesamtverbindlichkeiten in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz + 15, 1).Select
nummer = 0
Do Until ActiveCell.Value = "Gesamtverbindlichkeiten"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Gewinn je Aktie in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz + 25, 1).Select
nummer = 0
Do Until ActiveCell.Value = "Gewinn je Aktie (unverwässert)"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Eigenkapitalrendite in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz + 47, 1).Select
nummer = 0
Do Until ActiveCell.Value = "Eigenkapitalrendite"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'KGVs in Zusammenfassung kopieren ------------------------------'
Sheets("Fundamentaldaten").Activate
Cells(posumsatz + 38, 1).Select
nummer = 0
Do Until ActiveCell.Value = "KGV (Kurs-Gewinn-Verhältnis)"
ActiveCell.Offset(1, 0).Select
nummer = nummer + 1
If nummer = 50 Then
GoTo nächste
End If
Loop
Range(ActiveCell, ActiveCell.Offset(0, aj)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 1, 1).PasteSpecial Paste:=xlPasteAll
'Marktkapitalisierung und Anzahlaktien in zus eintragen-------------'
Dim anzak As Integer 'anzahlaktien
anzak = 0
letztezeileisin = ActiveSheet.UsedRange.Rows.Count
Sheets("Marktkapitalisierung").Activate
Cells(1, 1).Select
Do Until nummer = letztezeileisin
If ActiveCell.Value  "Anzahl der Aktien" Then
anzak = anzak + 1
ActiveCell.Offset(1, 0).Select
Else
Exit Do
End If
Loop
If nummer = letztezeileisin Then
GoTo nächste
End If
anzak = anzak + 1
Debug.Print "anzak = " & anzak
Cells(anzak - 1, 1).Value = "Jahreszahlen"
aj = 0
Cells(anzak - 1, 1).Select
Do Until ActiveCell.Value = ""
ActiveCell.Offset(0, 1).Select
aj = aj + 1
Loop
aj = aj - 1
Debug.Print "AJ2 = " & aj
Range(Cells(anzak - 1, 1), Cells(anzak + 1, aj + 1)).Copy
Sheets("Zusammenfassung").Activate
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
Cells(letztezeilezus + 4, 1).PasteSpecial Paste:=xlPasteAll
letztespaltezus = ActiveSheet.UsedRange.Columns.Count
'Zeilen aus Spalte A transformieren und mit Überschriften verbinden -------------'
Rows(1).Insert shift:=xlUp
Rows(1).Insert shift:=xlUp
Set bereich1 = Range(Cells(4, 1), Cells(10 + 2, 1))
n = 1
i = 1
For Each zelle1 In bereich1
Do Until i = n * (letztespaltezus - 1) + 1
Cells(1, 1 + i).Value = zelle1.Value
i = i + 1
Loop
n = n + 1
Next zelle1
For i = 1 To 10 - 2
Range(Cells(3, 2), Cells(3, letztespaltezus)).Copy
Cells(2, 2 + i * (letztespaltezus - 1)).Select
Selection.PasteSpecial xlPasteValues
Next i
Range(Cells(3, 2), Cells(3, letztespaltezus)).Copy
Cells(2, 2).Select
Selection.PasteSpecial xlPasteValues
' Zahlenwerte transformieren ---------------------------------------------
Range(Cells(4, 2), Cells(4, letztespaltezus)).Copy
Cells(3, 2).Select
Selection.PasteSpecial xlPasteAll
Cells(4, 1).EntireRow.Delete
For i = 1 To 10 - 2
Range(Cells(4, 2), Cells(4, letztespaltezus)).Copy
Cells(3, 2 + i * (letztespaltezus - 1)).Select
Selection.PasteSpecial xlPasteAll
Cells(4, 1).EntireRow.Delete
Next i
letztespaltezus = ActiveSheet.UsedRange.Columns.Count
Set bereich1 = Range(Cells(2, 2), Cells(2, letztespaltezus))
For Each zelle1 In bereich1
zelle1.Value = zelle1.Offset(-1, 0).Value & " " & zelle1.Value
Next zelle1
Cells(1, 1).EntireRow.Delete
'Zeilen aus Spalte A transformieren und mit Überschriften verbinden -------------'
Set bereich1 = Range(Cells(7, 1), Cells(8, 1))
n = 1
i = 1
For Each zelle1 In bereich1
Do Until i = n * (aj - 1) + 2
Cells(5, i + 1).Value = zelle1.Value
i = i + 1
Loop
n = n + 1
Next zelle1
Cells(5, 1 + 2 * aj).Value = Cells(8, 1).Value
Range(Cells(6, 2), Cells(6, aj + 1)).Copy
Cells(4, 2 + (aj)).Select
Selection.PasteSpecial xlPasteValues
Range(Cells(6, 2), Cells(6, aj + 1)).Copy
Cells(4, 2).Select
Selection.PasteSpecial xlPasteValues
' Zahlenwerte transformieren ---------------------------------------------
Range(Cells(7, 2), Cells(7, aj + 1)).Copy
Cells(6, 2).Select
Selection.PasteSpecial xlPasteAll
Cells(7, 1).EntireRow.Delete
Range(Cells(7, 2), Cells(7, aj + 1)).Copy
Cells(6, aj + 2).Select
Selection.PasteSpecial xlPasteAll
Cells(7, 1).EntireRow.Delete
Set bereich1 = Range(Cells(4, 2), Cells(4, 2 * aj + 1))
For Each zelle1 In bereich1
zelle1.Value = zelle1.Offset(1, 0).Value & " " & zelle1.Value
Next zelle1
Cells(5, 1).EntireRow.Delete
letztespaltezus = ActiveSheet.UsedRange.Columns.Count
Range(Cells(4, 2), Cells(5, 2 * aj + 2)).Copy
Cells(1, letztespaltezus + 1).PasteSpecial Paste:=xlAll
letztespaltezus = ActiveSheet.UsedRange.Columns.Count
Cells(1, letztespaltezus + 1).Value = "Aktueller Kurs"
Cells(2, letztespaltezus + 1).Value = aktuellerkurs
'Werte aus Zusammenfassung eintragen ----------------------------------------------------------- _
letztezeilezus = ActiveSheet.UsedRange.Rows.Count
letztespaltezus = ActiveSheet.UsedRange.Columns.Count
If beschriftung = False Then
ActiveSheet.Range(Cells(1, 2), Cells(2, letztespaltezus)).Copy
Workbooks("20200327_Aktienautomatik").Sheets("ISIN_Liste").Activate
zelle.Offset(-1, 5).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False,  _
Transpose:=False
beschriftung = True
Else
ActiveSheet.Range(Cells(2, 2), Cells(2, letztespaltezus)).Copy
Workbooks("20200327_Aktienautomatik").Sheets("ISIN_Liste").Activate
zelle.Offset(0, 5).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False,  _
Transpose:=False
End If
'Neu erstelltes WB wieder schließen und löschen ------------------------------------------------ _
nächste:
Workbooks("ISIN_DATEN").Activate
Workbooks("ISIN_DATEN").Close savechanges:=False
Kill "C:\Temp\ISIN_DATEN.xlsx"
Application.DisplayStatusBar = True
zähler = zähler + 1
Application.StatusBar = "Es läuft Nr. " & zähler & " von " & letztezeile & " => " & 100 /  _
letztezeile * zähler & "%"
'Application.Wait (Now + TimeValue("0:00:5"))
'speicher = speicher + 1
'Debug.Print "Speicher = " & speicher
'If speicher = 30 Then
Workbooks("20200327_Aktienautomatik").Save
'    speicher = 0
'End If
Next zelle
Workbooks("20200327_Aktienautomatik").Save
'Formatierung zur besseren Lesbarkeit ---------------------------------------------------------- _
Workbooks("20200327_Aktienautomatik").Sheets("ISIN_Liste").Activate
ActiveSheet.UsedRange.Columns.AutoFit
letztezeile = ActiveSheet.UsedRange.Rows.Count
letztespalte = ActiveSheet.UsedRange.Columns.Count
Range(Cells(1, 1), Cells(1, letztespalte)).Font.Bold = True
Range(Cells(1, 1), Cells(1, letztespalte)).Interior.ColorIndex = 16
Set bereich = Range(Cells(2, 1), Cells(letztezeile, letztespalte))
For Each zelle In bereich
zelle.Interior.ColorIndex = 0
Next zelle
Set bereich = Range(Cells(2, 1), Cells(letztezeile, 1))
zähler = 1
For Each zelle In bereich
zähler = zähler + 1
Select Case zelle.Value
Case "TecDAX"
Range(Cells(zähler, 1), Cells(zähler, letztespalte)).Interior.ColorIndex = 33
Case "Mdax"
Range(Cells(zähler, 1), Cells(zähler, letztespalte)).Interior.ColorIndex = 33
Case "S&P500"
Range(Cells(zähler, 1), Cells(zähler, letztespalte)).Interior.ColorIndex = 33
Case "Eurostoxx"
Range(Cells(zähler, 1), Cells(zähler, letztespalte)).Interior.ColorIndex = 33
Case "ATX"
Range(Cells(zähler, 1), Cells(zähler, letztespalte)).Interior.ColorIndex = 33
Case "Nikkei 225"
Range(Cells(zähler, 1), Cells(zähler, letztespalte)).Interior.ColorIndex = 33
End Select
Next zelle
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Cells(1, letztespalte + 1).Value = "Ende"
Cells(1, letztespalte + 1).Interior.ColorIndex = 3
'Call aktuelledatenziehenkurz
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten ziehen funktioniert nicht mehr
08.06.2020 19:03:03
ralf_b
dann setz doch zwischen jeden durchgang mal ein timeout. zum testen.
AW: Daten ziehen funktioniert nicht mehr
08.06.2020 21:19:10
Markus
Wie meinst du das?
AW: Daten ziehen funktioniert nicht mehr
09.06.2020 08:11:02
Luschi
Hallo Markus,
und wenn Du diese Anfrage noch mehrmals neu stellst, wenn Dein Fazit immer so lautet:

Wenn ich im Schrittmodus durchgehe zieht er mir alles,
und ansonsten stolpert der Vba-Code, dann hat Excel in Zusammenarbeit mit Windows ein Zeitproblem:
- eines der Zauberworte zur Lösung lauet: DoEvents (aber bitte nicht inflationär benutzen,
- diese Einstellung: .BackgroundQuery = True in einer Schleife ist eine Katastrophe!
  die Daten werden noch gezogen
  aber der Vba-Code rumpelt schon weiter
- die vielen 'Select'-Befehle müssen raus und durch Benutzung von Objektvariablen ersetzt werden
- solche Schleifen

Do Until nummer = letztezeileisin
If ActiveCell.Value  "aktueller Kurs:" Then
ActiveCell.Offset(1, 0).Select
Else
aktuellerkurs = ActiveCell.Offset(0, 1).Value
Exit Do
End If
Loop
  tun der Vba-Seele weh, zum Suchen gibt es den 'Find'- oder 'Match'-Befehl
- bei solchen Datei-Löschbefehlen: Kill "C:\Temp\ISIN_DATEN.xlsx"
  muß man anschließend in einer Schleife per 'Dir'-Befehl prüfen
  ob Windows diesen Auftrag schon ausgeführt hat, ansonsten in der Schleife warten!
- Teilaufgaben, die immer wieder ähnlich auftreten, sollten in Unterprogramme ausgelagert werden
So, erstmal genug der Manöverkritik, mein Rat: Winke mit einem nicht zu kleinen Scheinchen und laß Dich per Skype, TeamViewer oder AnyDesk persönlich beraten - ansonsten geht der ungute Programmierstil in die nächste Runde.
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Daten ziehen funktioniert nicht mehr
08.06.2020 21:44:13
ralf_b
also erstmal ist der code mir viel zu lang um mich da rein zu denken.
du hast am code nichts geändert und plötzlich geht was nicht mehr.
du sagst das im schrittmodus alles funktioniert. könnte also heissen das es an der geschwindigkeit liegt. um auszuprobieren ob dein script zu viele abfragen auf einen server abschiesst und deshalb evtl keine Antworten von dort bekommt, kann man die abfragen verlangsamen. baue ein application.wait(irgendeinezeit) ein und schaue was passiert.
du sagst es wird seit dem we gar nichts mehr gezogen. könnte ja heissen der anbieter hat was an den Links geändert, die du abfragst.
alternativ kannst du ja deine fehlerbehandlungsmethoden auskommentieren dann siehst du eher wo es klemmt.
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige