Jump to content
Sign in to follow this  

My tweak for _IETableWriteToArray

Recommended Posts


I am learning Internet Automation via Autoit. Last week I needed info on all the tables on a page. I wrote this little UDF based on the help file for _IETableGetCollection. But it would crash sometimes. The problem was "empty" tables on the web page. I stole some code from the INCLUDE file and modified it to check for blanks tables. It now works OK for me. I hope this helps someone.

Jim Rumbaugh

Func _IETableReport( $oIE)
    Local $iIndex = 0
    $colTables = _IETableGetCollection($oIE)
    MsgBox(0, "Table Info", "There are " & @extended & " tables on the page")

    for $oTable In $colTables
        ;===== stolen from IE include _IETableWriteToArray, to find errors
        Local $i_cols = 0, $tds, $i_col
        Local $trs = $oTable.rows
        For $tr In $trs
            $tds = $tr.cells
            $i_col = 0
            For $td In $tds
                $i_col = $i_col + $td.colSpan
            If $i_col > $i_cols Then $i_cols = $i_col
        Local $i_rows = $trs.length
        If $i_cols = 0 Or $i_cols = 0 Then
            MsgBox(1, "Failure to make good array from table", "Column count=" & $i_cols & "  Row count =" & $i_cols )
                ;======== end of , find array problems
            $aTableData = _IETableWriteToArray($oTable)
            _ArrayDisplay($aTableData, "Table #" & $iIndex)
            $iIndex += 1

Share this post

Link to post
Share on other sites

I guess this needs moving to Example Scripts - its a useful mod i guess :(

They call me MrRegExpMan

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  


Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.