$=SetOption("WrapAtEOL","ON")
$adSchemaColumns=4
$adSchemaTables=20
$sWorkbook="D:\TEST.XLS"
$oConn=GetExcelConnection($sWorkbook,"TRUE")
If @ERROR "Cannot open workbook: ["+@ERROR+"] "+@SERROR+@CRLF Exit @ERROR EndIf
$oCmd=CreateObject("ADODB.Command") 
$oCmd.Activeconnection=$oConn 
$oRS=$oConn.OpenSchema($adSchemaColumns)
@CRLF+"Validating workbook (sheet names, range names, column headers)..."+@CRLF
While Not $oRS.EOF
	$sTable = $oRS.Fields("table_name").Value
	$sColumn = $oRS.Fields("column_name").Value
	Chr(9)+"'"+$sColumn+"' is a column in "+IIf(Right($sTable,1)="$$","worksheet","range")+" "+$sTable+@CRLF
	$oRS.MoveNext
Loop
Function GetExcelConnection($sPath, Optional $bHeaders)
	Dim $sConn,$oConn
	$oConn=CreateObject('ADODB.Connection')
	If @ERROR Exit @ERROR EndIf
	$sConn='Provider=Microsoft.Jet.OLEDB.4.0;'
		+ 'Data Source='+$sPath+';'
		+ 'Extended Properties="Excel 8.0;HDR='
		+ IIf($bHeaders, 'Yes', 'No')+'"'
	$oConn.Open($sConn)
	$GetExcelConnection=$oConn
	Exit @ERROR
EndFunction