none
Daten von Tabelle aus Webseite einlesen....

    Frage

  • Hallo ihr Fachmänner.

    Ich versuche schon seit einer Woche eine Möglichkeit zu finden, um Daten aus einer html Tabelle in eine Access Tabelle zu importieren. Weil ich die Daten brauche um damit weiter arbeiten zu können.

    Google habe ich schon leer gesaugt. Tausende von Ansätzen gefunden und probiert. Doch es will nicht so recht.

    Mit Excel ist das kein Thema. Innerhalb von Sekunden habe ich eine schöne Tabelle mit den Daten.

    Könnte die Tabelle ja in Access einbinden. Leider hapert es mit der Aktualisierung. Müsste Excel laufen geöffnet halten um die Daten aktuell zu halten.

    Die Tabelle hat 12 Spalten und x Zeilen und der Inhalt ändert sich permanent.

    Ich wollte mir die Daten per Knopfdruck in ein Array (11, x) ziehen und dann das Array in eine Tabelle schreiben.

    Mittlerweile sehe ich den Wald vor Bäumen nicht mehr.

    Kann mich jemand mal in die richtige Richtung schubsen?

    Leider kann ich hier keinen Link oder Quellcode geben, da die Web-Tabelle geschützt ist.

    Fragender Gruß, Klaus Schleicherdt.

    Donnerstag, 21. Januar 2016 16:03

Antworten

  • Ein "kleines" Script ist keine Alternative?

    Damit kann man einiges machen:

    https://social.msdn.microsoft.com/Forums/office/en-US/bfd40853-7ee0-4f4b-a624-9e76d4fa8609/pasting-data-from-html-table-directly-into-access-2010?forum=accessdev

    Ich habe vor einigen Jahren mal was ähnliches als WPF Anwendung gemacht.

    Gruß

    Mittwoch, 3. Februar 2016 10:48
  • Hallo Leute.

    Also unter Access eine Webseite mit Tabelle zu parsen ist doof.

    Habe das aufgegeben.

    Ziehe mir die Daten jetzt in Excel rein und öffne, aktualisiere und schließe die Datei bei Bedarf von Access aus.

    Performance ist zwar bescheiden....aber für meine Fähigkeiten die beste Lösung gewesen.

    Gruß, Klaus.

    Mittwoch, 3. Februar 2016 07:39

Alle Antworten

  • Hallo Klaus,

    stell die Tabelle bitte online als HTML Datei zur Verfügung. Es reicht auch, wenn die Struktur ähnlich/identisch ist, Du die Werte dann aber mit Beispieldaten füllst.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

    Donnerstag, 21. Januar 2016 16:58
  • Hallo Stefan.

    Habe hier mal einen (entschärften) Auszug vom Quelltext body .

    Hoffe, die Informationen reichen, um sich ein Bild zu machen.

    Hier die Kopfzeile und zwei Datensätze von derzeit 217.

    Ich schaff es zwar die Daten in einen String zu ziehen. Doch den kann ich ja nicht einer Tabelle übergeben.

    Ich würde die Daten gerne in ein Array ziehen und dann in eine Tabelle schreiben.

    Eigentlich will ich nur abfragen, welchen Status (Checked In, Unload und Checked Out) der Datensatz hat.

    Danke jedenfalls für Dein Interesse :-)

    Gruß, Klaus.

    <body>


    <div style="float:none;padding:10px;">
    <div id="Header1">Container Yard Management For <strong>KLAUS SCHLEICHERDT</strong></div>
    <div id="HelpLink"><a href="typeb:CAP:Container Yard Management Help:H:7000:W:9000:URL:[SYSURL]AppHelp.asp?PartitionID=32&amp;HelpID=20">Click here to view instructions on using this function</a></div>
    <div id="ContentMain" ondblclick="return ContentMain_ondblclick()">

    <p>


    </p><form action="http://sys.blablabla/Update.asp" id="MainForm" name="MainForm" method="POST"> 

    <table id="MainTable" style="width:97%">
    <tbody><tr class="tabletitle" style="height:30px">
    <td nowrap="">Booked Date / Time</td>
    <td nowrap="">Mode</td>
    <td nowrap="">Trucking<br>Company</td>
    <td nowrap="">Container # /<br>HouseBill</td>
    <td nowrap="">Seal #</td>
    <td nowrap="">Type</td>
    <td nowrap="">Checked In</td>
    <td nowrap="">Checked In<br>Comments</td>
    <td nowrap="">Unloaded</td>
    <td nowrap="">Checked Out</td>
    <td nowrap="">Checked Out<br>Comments</td>
    <td nowrap="">CEVA<br>Comments</td>
    </tr>



    <tr class="d1">
    <td nowrap="">01 Jan 2016 00:00</td>
    <td nowrap="">SEA</td>
    <td nowrap=""></td>
    <td nowrap=""><a href="form:PMB:393648">ACLU1234567</a></td>
    <td nowrap="">F00001</td>
    <td nowrap="">40ft HC</td>
    <td nowrap="">09 Jan 2016 12:25</td>
    <td>SP</td>
    <td nowrap="">11 Jan 2016 14:09</td>
    <td nowrap=""><a href="http://sys.blablabla/CYMSummary.asp" onclick="updateLine(&#39;393648&#39;,&#39;VO&#39;,&#39;True&#39;,&#39;True&#39;);return false;">Confirm</a></td>
    <td></td>
    <td></td>
    </tr>



    <tr class="d0">
    <td nowrap="">18 Jan 2016 00:00</td>
    <td nowrap="">SEA</td>
    <td nowrap=""></td>
    <td nowrap=""><a href="form:PMB:396181">CBHU1234567</a></td>
    <td nowrap="">F00002</td>
    <td nowrap="">40ft</td>
    <td nowrap="">18 Jan 2016 12:46</td>
    <td>SP</td>
    <td nowrap="">18 Jan 2016 20:03</td>
    <td nowrap=""><a href="http://sys.blablabla/CYMSummary.asp" onclick="updateLine(&#39;396181&#39;,&#39;VO&#39;,&#39;True&#39;,&#39;True&#39;);return false;">Confirm</a></td>
    <td></td>
    <td></td>
    </tr>

    </div>


    </div></body></html>

    Donnerstag, 21. Januar 2016 18:12
  • Hallo Leute.

    Also unter Access eine Webseite mit Tabelle zu parsen ist doof.

    Habe das aufgegeben.

    Ziehe mir die Daten jetzt in Excel rein und öffne, aktualisiere und schließe die Datei bei Bedarf von Access aus.

    Performance ist zwar bescheiden....aber für meine Fähigkeiten die beste Lösung gewesen.

    Gruß, Klaus.

    Mittwoch, 3. Februar 2016 07:39
  • Ein "kleines" Script ist keine Alternative?

    Damit kann man einiges machen:

    https://social.msdn.microsoft.com/Forums/office/en-US/bfd40853-7ee0-4f4b-a624-9e76d4fa8609/pasting-data-from-html-table-directly-into-access-2010?forum=accessdev

    Ich habe vor einigen Jahren mal was ähnliches als WPF Anwendung gemacht.

    Gruß

    Mittwoch, 3. Februar 2016 10:48
  • Hallo Stefan.

    Ich danke dir sehr für deinen Link.

    Hat mir sehr geholfen! Mich um Lichtjahre weiter gebracht.

    Dankender Gruß, Klaus.


    Donnerstag, 4. Februar 2016 05:24