Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1028to1032
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

internetseite vollständig geladen

internetseite vollständig geladen
07.12.2008 21:35:58
heiko
hallo zusammen,
wie kann ich durch vba feststellen ob eine Internetseite vollständig geladen ist?
Browser: Firefox
danke im schon mal
heiko

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

Betreff
Datum
Anwender
Anzeige
AW: internetseite vollständig geladen
08.12.2008 20:38:00
heiko
Hallo Thorsten,
danke für die Mühe.
Das gleiche modul habe ich auch schon in google gefunden.
Aber eigentlich such ich das gleiche für meinen firefox Browser und da find ich nix.
Gruß
heiko
AW: internetseite vollständig geladen
08.12.2008 22:21:29
Oberschlumpf
Hi Heiko
"Das gleiche modul habe ich auch schon in google gefunden."
Hmm...und von den anderen ca. 170 Treffern is nix dabei? :)
Verrat doch mal bitte, wofür du das brauchst.
Ich selbst nutze als Webbrowser auch Firefox.
Aber dieses VBA-Module (link oben) nutze ich trotz Firefox - in Excel.
Und zwar prüfe ich in unregelmäßigen Abständen mit diesem VBA-Code, ob all die Links in meinen Favoriten noch erreichbar sind.
Excel arbeitet intern auch dann mit dem MS IE, auch wenn du einen anderen Webbrowser nutzt.
Bin neugierig, wofür du das brauchst.
Ciao
Thorsten
Anzeige
AW: internetseite vollständig geladen
08.12.2008 22:52:00
heiko
Hallo Thorsten,
noch mal vielen dank für die mühe.
Ich benötige das Modul um bestimmte seiten nacheinander zu laden
http://www.geodaten.bayern.de/BayernViewer/index.cgi?rw=4460720&hw=5333720&layer=TK&step=1
Wenn die seite geladen ist, wird ein screenshort erzeugt und als bmp datei abgespeichert.
Ich arbeiete zur zeit mit einer Pause von 10 sec zwischen laden und speicher der seite bzw. datei.
machmal ist die seite nach 3 sec geladen und gelegentlich dauert es halt länger wie 10 sec , dann kommt halt mist raus, weil das bmp leer ist.
wenn ich z.B. 100 seiten nacheinander lade, währe es halt wesentlich effektiver bzw. schneller.
ich hoffe du hast das soweit verstanden ?
gruß
heiko
heiko
Anzeige
AW: internetseite vollständig geladen
08.12.2008 23:29:00
Oberschlumpf
Hi Heiko
Dein Ziel habe ich verstanden.
Was ich aber noch nicht verstanden habe, wie Firefox da ins Spiel kommt.
Bisher sieht deine Beschreibung so aus, als ob du alles aus Excel heraus machst (Seite laden, Screenshot erstellen)
Oder schaffst du das alles so, dass du - wenn auch zur Zeit noch mit Einschrenkungen - Firefox aus Excel heraus "fernbedienst"?
Wenn letzteres der Fall ist, kann ich leider nicht helfen, da ich noch nicht mal DAS weiß, wie du bisher Firefox "fernbedienst".
Ciao
Thorsten
AW: internetseite vollständig geladen
09.12.2008 22:29:00
heiko
Hallo Thorsten,
ich glaube letzteres ist der fall.
ich lade und starte die url über ein vba modus bzw. parameter aus excel, wodurch firefox gestartet und geschlossen wir.
die url wird aus verschiedenen Parametern aus excel zusammengesetzt.
Mein problem ist nur, den Moment x zu erwischen, bei dem das firefox fenster vollständig geladen ist.
Meine bisherige lösung ist:
laden des fensters, 10 sec Pause, speichern.
alles klar ?
gruß
heiko
Anzeige
AW: internetseite vollständig geladen
09.12.2008 23:10:00
Oberschlumpf
Hi heiko
Jo...nun is alles klar :)
Wenn du vielleicht ne klitzekleine Bsp-Datei zur Verfügung stellst, in der per Makro eben Firefox mit ner beliebigen Internetseite gestartet wird, dann kann ich ja vielleicht doch weiter versuchen, zu helfen.
Nur für m ich von Interesse ist noch der Code, wie du Screenshots erstellst - wäre nett, wenn du den auch mit in die Datei packst.
Ciao
Thorsten
AW: internetseite vollständig geladen
10.12.2008 22:49:00
heiko
Hallo Thorsten,
Zum downloaden einer internetseite kannst du diesen code verwenden.
für die Url verwende ich werte die in verschiedenen Cellen die im Excelsheet stehen.
z.B Cells(1, 3) & Celle(i, 8) usw.
Option Explicit
'Subject: Excel/VBA-Beispiel: Download und Öffnen einer Arbeitsmappe
'Problem: Eine Excel-Arbeitsmappe soll aus dem Internet downgeladen und danach
'(nicht im Browser) geöffnet werden.
'Lösung: Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen
'Sie ihn einer Schaltfläche zu.
Private Declare

Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" ( _
ByVal pCaller As Long, _
ByVal szURL$, _
ByVal szFileName$, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long


Sub Downl_1()
'das Orginal
Dim lResult As Long
Dim sURL$, sLocalFile$
sURL = "http:// _
www.activevb-archiv.de/downloadstore/tipps/vb6/tipp0015.zip"
sLocalFile = Application.DefaultFilePath & "\tipp0015.zip"
lResult = URLDownloadToFile(0, sURL, sLocalFile, 0, 0)
'Workbooks.Open Application.DefaultFilePath & "\tipp0009.zip"
End Sub


Der Link für die bmp:
http://www.office-loesung.de/ftopic208796_0_0_asc.php
Gruß heiko

Anzeige
AW: internetseite vollständig geladen
11.12.2008 09:39:10
Oberschlumpf
Moin Heiko
Vielen Dank erstmal für den Code.
Aber dieser Code ruft leider keine Seite im Firefox auf, sondern speichert nur eine Datei aus dem Internet, ohne, dass man diese Seite selbst im Webbrowser aufrufen muss.
Ich las eben noch mal den ganzen Thread durch - in der Hoffnung, dass ich vielleicht etwas vergessen/übersehen hatte, was dann mein Verständnis zu deinem geposteten Code im Zusammenhang mit deiner Frage wieder verbessert - aber leider vergebens :)
Ich hab aber vielleicht noch diese Idee für dich.
Was hältst du davon, wenn du...
...zuerst mit "deinem" Code, die Seite im Firefox aufrufst
...DANN startest du den Code, den ich für dich "fand" und den du auch schon kennst
...und erst dann wird mit deinem BMP-Speicher-Code ein Screenshot erstellt
Vorteil:
Durch den Code aus meiner ersten Antwort wird definitiv erst dann dein weiterer Code ausgeführt, wenn der IE nicht mehr busy ist - das kann nach 2 oder eben auch erst nach 10 Sekunden der Fall sein
Nachteil:
mit meiner Idee wird jede Seite immer 2x geladen (1. dein gewollter Aufruf im Firefox, 2. die Kontrolle im IE, ob vollständig geladen oder nicht)
Aber insgesamt sparst du vielleicht doch etwas Zeit, weil mit meiner Idee nicht mehr zwingend eine Pause von z Bsp 10 Sekunden nach JEDEM Ladeversuch eingelegt wird, wie du es ja nach deinen Worten bisher versuchst, zu lösen.
Hilft das?
Ciao
Thorsten
Anzeige
AW: internetseite vollständig geladen
11.12.2008 20:23:40
heiko
Hallo Thorsten,
war leider der flsche Code, sorry.
habe zur zeit eine rotznase und bin nicht ganz fit.
hier der richtige Code:
das ist aber nur die Basisvariante
Private Declare

Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long


Sub laden()
URL = "http://www.kicker. _
de/news/fussball/bundesliga/startseite/"
res = ShellExecute(0&, "open", URL, vbNullString, vbNullString, vbNormalFocus)
' an dieses Stelle kommt die Pause von 10 sec.
' und der Screenshort wird über den Befehl call ... gestartet
' das ganz läuft noch über eine schleife
' usw.
End Sub


Gruß
heiko

Anzeige
AW: internetseite vollständig geladen
11.12.2008 21:36:15
Oberschlumpf
Hi :-)
Jo, das is der richtige Code :-)
Hab jetzt selbst noch mal ca. 30 Min nach ner Lösung auf google gesucht - weil keine weitere eigene Idee - aber leider nix gefunden.
Was hältst du denn nun von meiner zuletzt erwähnten Idee?
Ciao & gute Besserung!
Thorsten
AW: internetseite vollständig geladen
11.12.2008 22:26:11
heiko
Hallo Thorsten,
habe deine idee mal ausprobiert,
aber leider funktioniert deine lösung nicht.
Ich muß halt so weiter wurschteln.
gruß
heiko

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige