Thema Datum  Von Nutzer Rating
Antwort
Rot Word - Website auslesen
02.07.2019 13:30:32 Bahar
NotSolved
02.07.2019 13:31:57 Gast49743
NotSolved
02.07.2019 14:18:58 X-Post
NotSolved
02.07.2019 17:57:14 Zwenn
NotSolved

Ansicht des Beitrags:
Von:
Bahar
Datum:
02.07.2019 13:30:32
Views:
747
Rating: Antwort:
  Ja
Thema:
Word - Website auslesen
Hallo Leute! Ich bin absoluter Anfänger in VBA. Auf meiner Arbeit bin ich aber die einzige Person die sich für so etwas interessiert, und habe mich daher der Pflege von unseren Makros angenommen. Ein Makro übersteigt mein Wissen aber um Weiten. Daher brauche ich eure Hilfe. Es geht um das Ermitteln des zuständigen Finanzamts und automatische Einfügung der Adresse in das Adressfeld unserer Schreiben. Die Website wurde allerdings umgestaltet und nun passt unser Makro nicht mehr. Ich habe es versucht anzupassen, scheiter aber ab einem gewissen Punkt. Aktuell sieht das Makro so aus: Public Function html_auslesen(PLZ) On Error GoTo FEHLER 'Per VBA eine IE-Applikation erzeugen Dim IEApp As Object Dim IE_Document As Object Dim strSuche, strSuche2, SuchePLZ, FA_ANSCHRIFT As String Dim FA_POSITION, FA_POSITION_ENDE As Integer Dim a_Strasse As String Dim a_PLZundORT As String Dim a_ORT As String strSuche = "http://www.bzst.de/DE/Service/Behoerdenwegweiser/Finanzamtsuche/GemFa/ _ finanzamtsuche_Formular.html?nn=95918&resourceId=95914&input_=95918&pageLocale=de&suche=" strSuche2 = "&suchePrefix=&submit.x=0&submit.y=0" SuchePLZ = PLZ strSuche = strSuche & SuchePLZ & strSuche2 'Neues Browser-Objekt erzeugen Set IEApp = CreateObject("InternetExplorer.Application") 'Browser versteckt ausführen (höhere Geschwindigkeit) IEApp.Visible = True ' HTML-Datei aufrufen IEApp.navigate strSuche 'Seite wieder in eine Variable holen Do Call warte(2) Loop Until IEApp.Busy = False Set IEDocument = IEApp.Document 'Quellcode in als String einlesen Dim Sourcecode As String Sourcecode = IEDocument.body.innerHTML 'Sourcecode aufsplitten nach Dim SplitArrayOrt As Variant SplitArrayOrt = Split(Sourcecode, "") Dim a_BEGINN As Integer a_BEGINN = InStr(1, SplitArrayOrt(1), "") a_ORT = Mid(SplitArrayOrt(7), a_BEGINN + 1, Len(SplitArrayOrt(7)) - a_BEGINN + 1) 'Fund aufsplitten und Anschrift auslesen Dim SplitArray As Variant ' leitet in HTML eine Table-Row ein.. Also eine Tabellenzeile! SplitArray = Split(SplitArrayOrt(7), "") 'MsgBox Len(SplitArray(0)) a_Strasse = Mid(SplitArray(1), 1, Len(SplitArray(1)) - 200) a_PLZundORT = Mid(SplitArray(1), 51, Len(SplitArray(1)) - 210) 'Ausgabe der vollen Anschrift html_auslesen = a_ORT & vbCrLf & _ a_Strasse & vbCrLf & _ a_PLZundORT 'IE schließen IEApp.Quit Set IEApp = Nothing Exit Function 'Fehler: FEHLER: MsgBox "Es konnte kein Finanzamt zu der angegebenen PLZ " & PLZ & " ermittelt werden." 'IE schließen IEApp.Quit Set IEApp = Nothing End Function ____________________________________________________ Den Quellcode der Website findet ihr hier: http://www.bzst.de/DE/Service/Behoerdenwegweiser/Finanzamtsuche/GemFa/finanzamtsuche_Formular.html?nn=95918&resourceId=95914&input_=95918&pageLocale=de&suche=81675&suchePrefix=&submit.x=12&submit.y=16 Die Adresse, die ich haben will befindet sich in den Zeilen 348, 349. __________________________________________________________________ Im Word-Dokument erscheint bei manchen Finanzämtern dann gar keine Adresse (wurde wohl nicht gefunden) oder der Quelltext (am Beispiel des o.g. Finanzamts) von Zeile 347 bis 362. Könnt ihr mir helfen? Ich habe an allen möglichen Variablen herumgeschraubt um zu sehen was sich verändert. Aber ich weiß wirklich nicht mehr weiter, was ich noch tun könnte. Danke!

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Word - Website auslesen
02.07.2019 13:30:32 Bahar
NotSolved
02.07.2019 13:31:57 Gast49743
NotSolved
02.07.2019 14:18:58 X-Post
NotSolved
02.07.2019 17:57:14 Zwenn
NotSolved