Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Excel
  webseite

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  webseite (925 mal gelesen)
thato
Mitglied



Sehen Sie sich das Profil von thato an!   Senden Sie eine Private Message an thato  Schreiben Sie einen Gästebucheintrag für thato

Beiträge: 66
Registriert: 20.04.2007

erstellt am: 19. Feb. 2009 22:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo,
ich würde gern mit einem makro eine webseite öffnen und bestimmt sachen kopieren und in excel einfügen. geht so etwas?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 20. Feb. 2009 07:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für thato 10 Unities + Antwort hilfreich

Hallo thato,

Dein Vorhaben lässt sich sehr wahrscheinlich per VBA realisisieren. Es sind drei Schritte:
1. Webseite öffnen
2. Sachen kopieren
3. Sachen in xls einfügen

Zum 1. Teil probier mal auf die Schnelle diesen Code:

Code:

Private Sub cmdRegierungsb_Click()
  DestatisAufrufen "http://www.destatis.de/gv/suche_gv2000.htm", "Hamburg"
End Sub

Private Sub DestatisAufrufen(strURL As String, strOrt As String)

'IE als Objekt festlegen, URL aufrufen, Ort vorschlagen
'Quelle: http://www.wer-weiss-was.de/theme156/article1466713.html#1466713
Dim objBrow As Object 'Browser (NUR für IE möglich?!)
   
    Set objBrow = CreateObject("InternetExplorer.Application")
   
    With objBrow
        .Visible = True
        .Navigate (strURL)
   
        Do While .Busy
        Loop
        Do While .Document.ReadyState <> "complete"
        Loop
       
        SendKeys strOrt, True
        SendKeys "{TAB}{TAB}", True
        'Es SOLLTE der gesuchte Ort eingetragen und die Schaltfläche 'Gemeinde suchen'
        'aktiviert sein. Der User bestätigt (hoffentlich!) einfach per [Enter].
    End With

    Set objBrow = Nothing
   
End Sub



Die Sub arbeitet teilweise mit Tastenkürzeln (SendKeys). Vielleicht gibt es hierfür elegantere Methoden... Das Beispiel sucht beim Statistischen Bundesamt Online nach Hamburg (Bestätigung durch Benutzer).

Evtl. lässt sich das markieren / (Teile der) Seite kopieren auch per SendKeys erreichen? Der Dritte Schritt zurück zu Excel und (aus der Zwischenablage) einfügen dürfte keine große Hürde sein.

HTH
Frederik

------------------
DIN1055.de  |  Lastannahmen für Anwender NEU: Foren zu DIN 1055

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

thato
Mitglied



Sehen Sie sich das Profil von thato an!   Senden Sie eine Private Message an thato  Schreiben Sie einen Gästebucheintrag für thato

Beiträge: 66
Registriert: 20.04.2007

erstellt am: 20. Feb. 2009 11:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

erstmal danke für deine hilfe. ich habe mich leider zu unklar ausgedrückt, da mir die tragweite des programms noch nicht bewußt war.
also webseite öffnen geht ja mit dem code, den du mir geschickt hast. aber welcher part kopiert die webseite?
problem zwei ist, dass es nicht nur eine webseite ist sondern ganz viele, die ich möglichst mit einer schleife abarbeiten will.
die webseiten heißen dann blababla=id3245 und die id will ich quasi als variable haben, damit ich mit einer schleife alle webseiten öffnen kann!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 23. Feb. 2009 09:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für thato 10 Unities + Antwort hilfreich

Zitat:
also webseite öffnen geht ja mit dem code, den du mir geschickt hast.
Schön:) - genau so war dieser Ansatz auch gemeint.
Zitat:
aber welcher part kopiert die webseite?
Tja... dieser Teil müsste wohl neu erfunden werden - oder er ist irgendwo in den Tiefen des www zu finden. (Ganz unten im letzten link gibts nen link zu MS-Access --> weiterbuddeln, evtl. ist das auf xls übertragbar.)
Zitat:
problem zwei ist, dass es nicht nur eine webseite ist sondern ganz viele...
Wie Du schon schreibst: Schleife. Zuerst den Code fertig bauen und an einer Seite testen. Wenn das läuft, Schleife um alles herum basteln. Stichworte: For... Next, While... Wend, Do While... Loop und Do... Loop Until (VBA-Hilfe).

Frederik

------------------
DIN1055.de  |  Lastannahmen für Anwender NEU: Foren zu DIN 1055

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

thato
Mitglied



Sehen Sie sich das Profil von thato an!   Senden Sie eine Private Message an thato  Schreiben Sie einen Gästebucheintrag für thato

Beiträge: 66
Registriert: 20.04.2007

erstellt am: 25. Feb. 2009 10:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

Dim objBrow As Object
Dim URL As String

URL = "google"
URL = URL + ".de"
Set objBrow = CreateObject("InternetExplorer.Application")
   
objBrow.navigate URL
objBrow.Visible = True

ist mein bisheriger code ^^
problem ist, dass der ie im hintergrund geöffnet ist. wie bekomme ich ihn denn in den vordergrund, also aktiv? denn nur dann funktioniert das mit sendkeys
und wie komme ich wieder vom ie zurück zu excel?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 25. Feb. 2009 12:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für thato 10 Unities + Antwort hilfreich

Zitat:
problem ist, dass der ie im hintergrund geöffnet ist. wie bekomme ich ihn denn in den vordergrund, also aktiv?
Warum nimmste nicht den Code von oben? Ich tippe auf .Visible = True, das fehlt bei Dir.
Zitat:
und wie komme ich wieder vom ie zurück zu excel?
Ähnlich wie zum IE. Vielleicht mit diesem Code aus dieser pdf-Datei auf S. 9:
Code:
Dim appXls As Excel.Application
  Set appXls = Excel.Application
  'und dann an geeigneter Stelle:
  appXls.Visible = True

------------------
DIN1055.de  |  Lastannahmen für Anwender NEU: Foren zu DIN 1055

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

thato
Mitglied



Sehen Sie sich das Profil von thato an!   Senden Sie eine Private Message an thato  Schreiben Sie einen Gästebucheintrag für thato

Beiträge: 66
Registriert: 20.04.2007

erstellt am: 25. Feb. 2009 12:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

objBrow.Visible = True
habe ich doch drinstehen! 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 25. Feb. 2009 13:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für thato 10 Unities + Antwort hilfreich

Hm... das habe ich wohl überlesen , entschuldige.

Also bei mir wird mit .Visible = True das Fenster geladen und auch gleich in den Vordergrund gesetzt.

Vermutung: Wie startet denn Dein IE, wenn Du ihn herkömmlich aufrufst (Doppelklick auf das Symbol o. ä.)? Maximiert/minimiert/normales Fenster?

------------------
DIN1055.de  |  Lastannahmen für Anwender NEU: Foren zu DIN 1055

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

thato
Mitglied



Sehen Sie sich das Profil von thato an!   Senden Sie eine Private Message an thato  Schreiben Sie einen Gästebucheintrag für thato

Beiträge: 66
Registriert: 20.04.2007

erstellt am: 25. Feb. 2009 13:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

der IE startet per doppelklick und dann als normales fenster.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice

erstellt am: 25. Feb. 2009 14:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für thato 10 Unities + Antwort hilfreich

Tja, dann: Suchen >> klick << 

Frage zu konkreten Themen: Ja. Kompletten Code fertig bauen: Nein.

------------------
DIN1055.de  |  Lastannahmen für Anwender NEU: Foren zu DIN 1055

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

thato
Mitglied



Sehen Sie sich das Profil von thato an!   Senden Sie eine Private Message an thato  Schreiben Sie einen Gästebucheintrag für thato

Beiträge: 66
Registriert: 20.04.2007

erstellt am: 01. Mrz. 2009 13:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

danke für deine hilfe. ich konnte es jetzt anders lösen!
mit etwas weniger aufwand...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

runkelruebe
Moderator
Straßen- / Tiefbau




Sehen Sie sich das Profil von runkelruebe an!   Senden Sie eine Private Message an runkelruebe  Schreiben Sie einen Gästebucheintrag für runkelruebe

Beiträge: 8075
Registriert: 09.03.2006

MS-Office 365 ProPlus x86
WIN7(x64)

erstellt am: 01. Mrz. 2009 14:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für thato 10 Unities + Antwort hilfreich

Moin,
schön wäre jetzt die Angabe: wie hast Du es jetzt gelöst?
Vielleicht können Nachleser dann ebenfalls Deinen Weg beschreiten.

Ich nutze übrigens gerne die WebAbfrage (Register Daten -> externe Daten abrufen -> Aus dem web ; Menüablauf für Excel <2007 hab ich grade nicht auswendig)  und kopiere mir die Teile dann selber raus, scheidet hier aber bestimmt aus, da Du ja viele webseiten der Reihe nach durchgehen willst. Aber evtl. könntest Du auch das irgendwie in ein Makro würgen (Rekorder mitlaufen lassen und mal schauen)

Code:
Sub Makro1()
'
' Makro1 Makro
'

'
    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://ww3.cad.de/cgi-bin/ubb/mylastpostsnr.cgi", Destination:=Range( _
        "$A$1"))
        .Name = "mylastpostsnr"
        .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 = "2"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
End Sub



unbereingter Makro-Rekorder-Mitschnitt.

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

System-Info     Excel -Suche    RuA-Suche     FAQ-ACAD     Hilfe zu CAD.de 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

thato
Mitglied



Sehen Sie sich das Profil von thato an!   Senden Sie eine Private Message an thato  Schreiben Sie einen Gästebucheintrag für thato

Beiträge: 66
Registriert: 20.04.2007

erstellt am: 01. Mrz. 2009 14:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

so habe ich es jetzt auch gelöst. vorher hatte ich nur zugriff auf die php-seite. jetzt wurde mir ein anderes format zur verfügung gestellt, dass ich mit der webabfrage arbeiten kann.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz