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

webabfrage

webabfrage
12.08.2020 09:18:02
Markus
Hallo zusammen,
ich habe mir eine webabfrage gebastelt, die beim Abruf jedoch sehr lange dauert. Das kann zum einen am abzufragenden server liegen oder auch an der Datenmenge.
Vielleicht auch meinem code.
Könntet Ihr mal d'rüber schauen, ob ich etwas verbessern/ beschleunigen kann.
Danke
  • 
    Private Sub CommandButton1_Click()
    For i = 63 To 112
    On Error Resume Next
    strTicker = Worksheets("Tabelle1").Cells(i, 1).Value & ".TG"
    Application.Calculation = xlManual
    Application.ScreenUpdating = False
    With ActiveSheet.QueryTables.Add(Connection:= _
    "URL;https://abfrageserversym=" & strTicker & "", Destination:=Sheets("Tabelle1").Cells(i, 4))
    .Name = strTicker
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = True
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = False
    .RefreshStyle = xlOverwriteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = False
    .RefreshPeriod = 0
    .WebSelectionType = xlSpecifiedTables
    .WebFormatting = xlWebFormattingNone
    .WebTables = "7"
    .WebPreFormattedTextToColumns = True
    .WebConsecutiveDelimitersAsOne = True
    .WebSingleBlockTextImport = True
    .WebDisableDateRecognition = True
    .WebDisableRedirections = False
    .Refresh BackgroundQuery:=False
    End With
    Next i
    Application.Calculation = xlAutomatic
    Application.ScreenUpdating = True
    End Sub
    


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

    Betreff
    Datum
    Anwender
    Anzeige
    AW: webabfrage
    12.08.2020 10:26:19
    Luschi
    Hallo Markus,
    
    ich habe mir eine webabfrage gebastelt
    
    Schon diese Aussage ist falsch, denn durch die For-Schleife sind es 50 Web-Abfragen (112-63+1) bei jedem Klick auf den Button.
    Folgende Fehler/Mängel treten dabei auf:
    - Zielangabe Destination:=Sheets("Tabelle1").Cells(i, 4))
      die Variable 'i' steht hier für die Zeilen- und nicht für die Spalten-Nr
    - d.h.: jede Abfrage läßt nur die 1. Datenzeile der vorherigen Abfrage stehen und überschreibt alles andere!
    - so hast Du ein Datensalat, der in sich nicht stimmig ist
    - da ich glaube, daß diese Web-Abfragen werktäglich passieren, erzeugst Du auch immer 50 neue Abfragen
    - die selbstverständlich von Excel auch verwaltet werden müssen
    - so kann (nein wird es) sein, daß Du Hunderte/Tausende von Abfragen erstellst hast
    - obwohl eine Aktualisierung der existierenden Abfragen sinnvoller ist.
    Gruß von Luschi
    aus klein-Paris
    Anzeige
    AW: webabfrage
    12.08.2020 10:32:15
    Markus
    Hallo Luschi,
    danke für deine schnelle Antwort.
    Ja das stimmt wohl und die ActiveWorkbook.Connections sowie die ActiveSheet.QueryTables lösche ich dann immer wieder mal.
    Das mit den zeilen stimmt schon da von zeile 63 bis 112 abwärts aktualisiert wird.
    Es funktioniert auch.
    wie kann ich denn eine existierende abfrage aktualisieren?
    AW: webabfrage
    12.08.2020 10:45:36
    Luschi
    Hallo Markus,
    
    da von zeile 63 bis 112 abwärts aktualisiert wird
    
    Aber nicht bei diesem Schleifen-Konstrukt:
    For i = 63 To 112
      'Dein Code
    Next i
    Gruß von Luschi
    aus klein-Paris
    Anzeige
    Statt VB-Aufzeichnung, besser POWERQUERY! (owT)
    12.08.2020 11:44:26
    EtoPHG

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige