Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA

Forumthread: VBA

VBA
14.06.2007 12:03:52
pritt
Hallo zusammen,
ich habe gerade mal versucht, eine Webabfrage zu bearbeiten ... Also aufgezeichent mit Makrorekorder.
Diese müsste noch etwas verändert werden, das heisst da fehlt noch ne Schleife, die noch reingebastelt werden muss. Hier benötige ich mal die Hilfe von Euch !
Der erste Durchlauf wird MIT Feldnamen ausgeführt, der Rest OHNE ! Die Variable "site" ist der Zähler, der ab dem zweiten (dritten) Durchlauf um 1 erhöht wird bis Maximal Wert: 548 (Die Schleife läuft also 548 mal bis Schluss ist und alle Daten eingesammelt sind) "place" steht als variable für die Destination (Range) die bei jedem Durchlauf um 50 ansteigen muss. der erste Durchlauf beginnt in Zeile 1 mit Feldnamen, der zweite Durchlauf demnach ab Zeile 51 ohne Feldnamen. auch dieser Zähler läuft 548 mal
Wer kann mir mit der Schleife bzw. den Zählern mal helfen ? Schon möglich das dies noch weitaus effektiver geht, aber das würde mir schon helfen. Vielen Dank im Voraus
Gruss Pritt
Dim site As Integer
Dim place As Integer
site = 1
place = 50
'
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;xxxx, _
Destination:=Range("A1"))
.Name = "main.php4?page=bar50&UIN=1a2b3c4d5e6f7g8h9i1j2_2"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "10"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
Beginn Schleifendurchlauf
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;xxxx", _
Destination:=Range("A52")) ---> Startzeile für den ersten Schleifendurchlauf
erste Schleife mit Zähler für die Destination
Destination:=Range("A52"))
zweite Schleife mit Zähler für die Seite
.Name = "main.php4?page=bar5548&UIN=1a2b3c4d5e6f7g8h9i1j2&platz=" & site & "
.FieldNames = False
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "10"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA
14.06.2007 14:06:20
ingUR
Hallo, Pritt,
folgende Vorschlag hätte ich anzubieten, wobei die Ausführung, wie auch die Verkettung von strURL und strName zu gültigen Bezeichnungen nicht geprüft wurde.

Dim site As Integer
Dim place As Integer
Dim strURL as string, strName as string, bFiledName as boolean
place = 50
'Setze Werte für den "0".Durchlauf
strURL="URL;xxxx  "
strName="main.php4?page=bar50&UIN=1a2b3c4d5e6f7g8h9i1j2_2"
bFieldNames=True
For site=0 to 548
With ActiveSheet.QueryTables.Add(Connection:= strURL, Destination:=Range("A1").offset( _
place*site,0)
.Name = strName
.FieldNames = bFieldName
end with
bFieldNames=False
strURL="URL;xxxx  " 'ggf Änderung für den zweiten Durchlauf ensprechend Namensveränderung,  _
ansonsten könnte Zeile entfallen
strName="main.php4?page=bar5548&UIN=1a2b3c4d5e6f7g8h9i1j2&platz=" & site+1 & "
next site


Gruß,
Uwe

Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige