Liest den Inhalt einer Tabelle in ein Array ein
#include <IE.au3>
_IETableWriteToArray ( ByRef $oObject [, $bTranspose = False] )
$oObject | Objektvariable einer InternetExplorer.Application, Table-Objekt |
$bTranspose | [optional] Bool'scher Wert, der festlegt, ob die Zeilen und Spalten im Ausgabearray vertauscht werden sollen. |
Erfolg: | ein 2D Array mit dem Inhalt der Tabelle |
Fehler: | Setzt das @error Flag auf ungleich null |
@error: | 2 ($_IEStatus_COMError) - COM Fehler in der Objektreferenz 3 ($_IEStatus_InvalidDataType) - Ungültiger Datentyp 4 ($_IEStatus_InvalidObjectType) - Ungültiger Objekttyp |
@extended: | Beinhaltet Nummer des ungültigen Parameters |
Wenn Tabellenzellen über mehrere Spalten oder Zeilen gehen, dann werden leere Elemente in das Array eingefügt, sodass die Zuordnung stimmt.
Die eigentlichen Daten werden in der obersten bzw. am weitesten links liegenden Position abgelegt.
Tabellen sind in HTML-Dokumenten oft verschachtelt.
Wenn alle Daten in einem Element landen, dann sollte man überlegen, ob man eine "tiefer" gelegene Tabelle an diese Funktion übergibt.
; Öffnet den Browser mit der Beispieltabelle, erhält einen Bezug zur zweiten Tabelle auf der Seite(Index 1) und liest deren Intalt in ein 2D Array
#include <Array.au3>
#include <IE.au3>
Local $oIE = _IE_Example("table")
Local $oTable = _IETableGetCollection($oIE, 1)
Local $aTableData = _IETableWriteToArray($oTable)
_ArrayDisplay($aTableData)
_IEQuit($oIE)
;Gleiches Beispiel wie oben, außer dass die Zeilen und Spalten im Ausgabearray vertauscht sind und das Ergebnis mit _ArrayDisplay() dargestellt wird
#include <Array.au3>
#include <IE.au3>
Local $oIE = _IE_Example("table")
Local $oTable = _IETableGetCollection($oIE, 1)
Local $aTableData = _IETableWriteToArray($oTable, True)
_ArrayDisplay($aTableData)
_IEQuit($oIE)