gdzeek Posted November 28, 2018 Posted November 28, 2018 (edited) Hi everyone I have a teeny bit of experience using Java and c programming, but Im pretty much brand new to using Autoit, been going through tutorials getting myself up to speed At the moment though I am tasked with troubleshooting a code that was written by someone else, it was working just fine until we upgraded our computers from Windows 7 to windows 10, I believe we upgraded to a newer version of Microsoft office as well, we now have Excel 16 installed. I attached the error code window and a screenshot of the code being a trouble maker below Error: Variable must be of type object The program itself is setup up to copy information that was inputted into a spreadsheet and plug it in to another program for the purpose of generating serial numbers, and then output those serial numbers to a notepad file. as far as I can tell Autoit cant detect Microsoft excel or atleast has the wrong commands to utilize it (potential updates with new terminology on excel's side)?), or if it is detecting it the commands are failing to bring it forward and access the workbook tab it needs. any help or input is appreciated <3 Edit: Im currently reading through this: https://www.autoitscript.com/autoit3/docs/functions/ObjCreate.htm Edit2: Solved, The program couldn't access the file location or didn't have read/write priveleges enabled for that server Edited November 28, 2018 by gdzeek progress and typos
mLipok Posted November 28, 2018 Posted November 28, 2018 (edited) Reading HelpFile in example for ObjGet: #include <MsgBoxConstants.au3> ; Example getting an Object using it's class name ; ; Excel must be activated for this example to be successful Example() Func Example() Local $oExcel = ObjGet("", "Excel.Application") ; Get an existing Excel Object If @error Then MsgBox($MB_SYSTEMMODAL, "", "Excel File Test" & @CRLF & "Error Getting an active Excel Object. Error code: " & Hex(@error, 8)) Return False EndIf $oExcel.Visible = 1 ; Let the guy show himself $oExcel.workbooks.add ; Add a new workbook EndFunc ;==>Example there is @error checking. You should do the same. btw. to AutoIt forum. Edited November 28, 2018 by mLipok Signature beginning:* Please remember: "AutoIt"..... * Wondering who uses AutoIt and what it can be used for ? * Forum Rules ** ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Code * for other useful stuff click the following button: Spoiler Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API * ErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 * My contribution to others projects or UDF based on others projects: * _sql.au3 UDF * POP3.au3 UDF * RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF * SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane * Useful links: * Forum Rules * Forum etiquette * Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * Wiki: * Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX IE Related: * How to use IE.au3 UDF with AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskScheduler * IE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related: * How to get reference to PDF object embeded in IE * IE on Windows 11 * I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions * EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *I also encourage you to check awesome @trancexx code: * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuff * OnHungApp handler * Avoid "AutoIt Error" message box in unknown errors * HTML editor * winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/ "Homo sum; humani nil a me alienum puto" - Publius Terentius Afer"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming" , be and \\//_. Anticipating Errors : "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty." Signature last update: 2023-04-24
gdzeek Posted November 28, 2018 Author Posted November 28, 2018 3 minutes ago, mLipok said: Reading HelpFile in example for ObjGet: #include <MsgBoxConstants.au3> ; Example getting an Object using it's class name ; ; Excel must be activated for this example to be successful Example() Func Example() Local $oExcel = ObjGet("", "Excel.Application") ; Get an existing Excel Object If @error Then MsgBox($MB_SYSTEMMODAL, "", "Excel File Test" & @CRLF & "Error Getting an active Excel Object. Error code: " & Hex(@error, 8)) Return False EndIf $oExcel.Visible = 1 ; Let the guy show himself $oExcel.workbooks.add ; Add a new workbook EndFunc ;==>Example there is @error checking. You should do the same. btw. to AutoIt forum. Oh that is true, that will definitely give me more info And thank you!
water Posted November 28, 2018 Posted November 28, 2018 Welcome to AutoIt and the forum! You know that AutoIt provides an Excel UDF? My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki
gdzeek Posted November 28, 2018 Author Posted November 28, 2018 23 minutes ago, water said: Welcome to AutoIt and the forum! You know that AutoIt provides an Excel UDF? Thanks! That would be handy! especially if theres an old version too so I can see if anything changed. how do i access that?
water Posted November 28, 2018 Posted November 28, 2018 (edited) You can find detailed information in the wiki and the help file (and scroll down to _Excel_BookAttach). Edited November 28, 2018 by water My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki
gdzeek Posted November 28, 2018 Author Posted November 28, 2018 (edited) Well it was easier than I thought I moved all the related documents the script needed to find and edit to my desktop temporarily and rerouted the pathway and its working just fine so it must have been some kind of write permission error, or when the software was installed on the new machine it was never given read/write permissions to alter stuff on its own I'll keep learning though, the program doesn't open the spreadsheet on its own so it might be fun to figure out how to do that instead of opening the spreadsheet to fullscreen before running the script. or at very least beef up its ability to report what the error actually is XD Thank you for the help Edited November 28, 2018 by gdzeek
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now