Jump to content

Recommended Posts

Posted (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

 

line201error.jpg

autoit_error_code.PNG

Edited by gdzeek
progress and typos
Posted (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.

:welcome:to AutoIt forum.

 

Edited 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 Codefor 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 APIErrorLog.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 TaskSchedulerIE 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 stuffOnHungApp handlerAvoid "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"
:naughty:  :ranting:, 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

Posted
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.

:welcome:to AutoIt forum.

 

Oh that is true, that will definitely give me more info
 

And thank you!

Posted

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

 

Posted
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?

Posted (edited)

You can find detailed information in the wiki and the help file (and scroll down to _Excel_BookAttach).

Edited 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

 

Posted (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 by gdzeek

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...