Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Aufruf einer Homepage aus Excel heraus
#1
Hallo Fachleute,

ich nutze regelmäßig die Tabellen des Deutschen Wetterdienstes mit den aktuellen Klimafaktoren meines Heimatorts, um den Energiepass auf dem Laufenden zu halten. Um die Prozedur ein wenig zu "automatisieren", wollte ich mit dem Makrobefehl
 
Sub DWD_oeffnen()
Set wshshell = CreateObject("WScript.Shell")
wshshell.Run "https://www.dwd.de/DE/leistungen/klimafaktoren/klimafaktoren.html/"
End Sub

 
die Seite auf den Bildschirm laden, von der aus ich den Download starten kann. Die Seite wird auch ordnungsgemäß aufgerufen, der Download generiert aber eine Tabelle in einem nicht entzifferbaren Format  (siehe Anhang):
 
Rufe ich dagegen die Tabelle nicht aus Excel heraus auf, verschafft mir der Download eine nutzbare Excel-Tabelle.

Kann das jemand erklären ?

Hardbopper


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#2
Benützte deinen Macrorecorder; z.B.

Code:
Sub Macro1()

    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;https://www.dwd.de/DE/leistungen/beobachtung/beobachtung.html", _
        Destination:=Range("$A$1"))
        .Name = "beobachtung"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlAllTables
        .WebFormatting = xlWebFormattingNone
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
End Sub
Antworten Top
#3
Hallo SNB,

ist ja toll, nur werden mit dem Makro Wetterdaten heruntergeladen, die es mir weniger ankommt. Ich habe deshalb die URL auf

"URL;https://www.dwd.de/DE/leistungen/klimafaktoren/klimafaktoren.html",


verändert, aber da tut sich gar nichts.

Zu Deiner Orientierung hätte ich gern die entsprechende Seite beigefügt, aber sie überschreitet die zulässige Größe. Deshalb hier nur ein kleiner Ausschnitt aus http://www.dwd.de/DE/leistungen/klimafak...toren.html , der die Stelle rechts unter der "Wohnhausansicht mit Wärmebildkamera aufgenommen" zeigt  . Man kann dort aber seit neuestem keine Tabelle mehr  aufrufen, sondern nur einen Download anstoßen

Da ich nicht so der große Experte bin, wäre ich für Deine weitere Unterstützung dankbar.

Hardbopper


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#4
Code:
Sub M_snb()
  Workbooks.Open "http://www.dwd.de/DE/leistungen/klimafaktoren/kf_p_die_letzten_12_xls_xls.xls?view=nasPublication&nn=16102"
End Sub

oder
Code:
Sub M_snb()
  ThisWorkbook.FollowHyperlink "http://www.dwd.de/DE/leistungen/klimafaktoren/kf_p_die_letzten_12_xls_xls.xls?view=nasPublication&nn=16102"
End Sub

Es gelingt auch wenn du eine Querytabelle erstellst:

Commandbars / Data / Acces table/ addresse: http://www.dwd.de/DE/leistungen/klimafak...ublication&nn=16102
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • Hardbopper
Antworten Top
#5
Hallo snb,

zunächst Danke ! So kann ich wenigstens wieder die Tabelle öffnen. Ich möchte aber noch einen Schritt weiter gehen und den ganzen Vorgang automatisieren ( Homepage-Seite aufrufen, Tabelle Klimafaktoren öffnen und in einer Excel-Arbeitsmappe speichern ). Da sich das Ganze weitgehend außerhalb von Office abspielt, kann ich kein Office-Makro aufzeichnen, müsste also nach meinen laienhaften Vorstellungen einen Windows-Makrorecorder einsetzen. Kannst Du ein Produkt empfehlen ?

Gruß Hardbopper
Antworten Top
#6
Die 2 Macros die ich angeboten hab sind doch völlig 'inside Office' ???

Man braucht dazu doch nichts ausser Excel ??
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • Hardbopper
Antworten Top
#7
Das ist schon richtig, ich möchte nur mit Hilfe des Makros gleich die Tabelle "Klimafaktoren" geöffnet haben (siehe den Reiter "Klimafaktoren" rechts neben "Deckblatt") . Wenn Dir das noch gelänge, wäre alles perfekt.

Gruß Hardbopper
Antworten Top
#8
Hi,

ich habe es ebensowenig verstanden, warum Du der Meinung bist, daß Excel-VBA nicht ausreichen soll.
Aber des Menschen Wille ist eben sein Himmelreich. Vielleicht versuchst Du es dann mal mit der Mutter
von VBA mit Namen VB.
VB ist nicht Bestandteil eines Office-Paketes und kostet einige Euronen :05:
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#9
Ganz einfach, Käpt'n Blaubär,

ich bin nicht so der VBA-Experte und nutze am liebsten den Office-Makrorecorder, der aber nicht über Office hinaus nutzbar ist. Deshalb musste ich mir z. B für Zugriffsmöglichkeiten auf Verzeichnisse außerhalb des Office-Bereichs mühsam Lösungen zusammenklauben oder Expertenhilfe in Anspruch nehmen. 

Hardbopper
Antworten Top
#10
(23.10.2015, 22:55)Hardbopper schrieb: den Office-Makrorecorder,
Die gibt's nicht

(23.10.2015, 22:55)Hardbopper schrieb: der aber nicht über Office hinaus nutzbar ist
Das stimmt nicht.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste