Search the Community
Showing results for tags 'adox'.
-
A one user ask about Creating XLS file with ADO. This was interesting to me so I use uncle google and find this: https://forums.autodesk.com/t5/visual-basic-customization/ado-connection-create-file-excel/td-p/1675928 EDIT: https://msdn.microsoft.com/en-us/library/ms675849(v=vs.85).aspx How you can read in this mentioned above link, This is not posible with ADO but quite easy with ADOX. Here is AutoIt example: ;~ https://forums.autodesk.com/t5/visual-basic-customization/ado-connection-create-file-excel/td-p/1675928 ;~ https://msdn.microsoft.com/en-us/library/ms675849(v=vs.85).aspx #AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w- 4 -w 5 -w 6 -w 7 Global Const $ADO_adInteger = 3 Global Const $ADO_adVarWChar = 202 #include <Array.au3> #include <MsgBoxConstants.au3> _Example() Func _Example() ; Error monitoring. This will trap all COM errors while alive. ; This particular object is declared as local, meaning after the function returns it will not exist. Local $oErrorHandler = ObjEvent("AutoIt.Error", "_ErrFunc") #forceref $oErrorHandler Local $oConnection = ObjCreate('ADODB.Connection') Local $oCatalog = ObjCreate('ADOX.Catalog') Local $oTable = ObjCreate('ADOX.Table') ; Local $oColumn = ObjCreate('ADOX.Column') $oConnection.open("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & @ScriptDir & '\ADOX_EXAMPLE__MyContacts.xls' & ";Extended Properties=Excel 8.0") $oCatalog.ActiveConnection = $oConnection With $oTable .Name = "MyContacts" .ParentCatalog = $oCatalog ; Create fields and append them to the new Table object. .Columns.Append("ContactId", $ADO_adInteger) .Columns.Append("CustomerID", $ADO_adVarWChar, 16) ; Make the ContactId column and auto incrementing column .Columns("ContactId").Properties("AutoIncrement") = True ; Create fields and append them to the new Table object. .Columns.Append("FirstName", $ADO_adVarWChar, 80) .Columns.Append("LastName", $ADO_adVarWChar, 80) .Columns.Append("Phone", $ADO_adVarWChar, 20) .Columns.Append("Notes", $ADO_adVarWChar) EndWith $oCatalog.Tables.Append($oTable) ;Clean up $oConnection.Close $oConnection = Null ; $oColumn = Null $oTable = Null $oCatalog = Null EndFunc ;==>_Example ; User's COM error function. Will be called if COM error occurs Func _ErrFunc($oError) ; Do anything here. ConsoleWrite(@ScriptName & " (" & $oError.scriptline & ") : ==> COM Error intercepted !" & @CRLF & _ @TAB & "err.number is: " & @TAB & @TAB & "0x" & Hex($oError.number) & @CRLF & _ @TAB & "err.windescription:" & @TAB & $oError.windescription & @CRLF & _ @TAB & "err.description is: " & @TAB & $oError.description & @CRLF & _ @TAB & "err.source is: " & @TAB & @TAB & $oError.source & @CRLF & _ @TAB & "err.helpfile is: " & @TAB & $oError.helpfile & @CRLF & _ @TAB & "err.helpcontext is: " & @TAB & $oError.helpcontext & @CRLF & _ @TAB & "err.lastdllerror is: " & @TAB & $oError.lastdllerror & @CRLF & _ @TAB & "err.scriptline is: " & @TAB & $oError.scriptline & @CRLF & _ @TAB & "err.retcode is: " & @TAB & "0x" & Hex($oError.retcode) & @CRLF & @CRLF) EndFunc ;==>_ErrFunc Have fun, mLipok
-
I found some interesting code here: http://allenbrowne.com/func-adox.html The only one line which I do not know how to convert to AutoIt is: lngNext = Nz(DMax(strAutoNum, strTable), 0) + 1For now I have converted that line in this way: $iNext = Nz(DMax($sAutoNum, $sTable), 0) + 1I do not know what is Nz and DMax. Any help ? mLipok