Expression enumeration fails

EonsTimE

Registered User.
Local time
Today, 21:11
Joined
May 8, 2016
Messages
13
Hi, I have encountered a problem where my expressions for a text box work out just fine on my machine, but fail (mostly) on a friend's machine.
There are two differences between our machines:
1) Friend has German version of Windows and German (I think?) Access2016 runtime
2) Friend has a runtime version of Access 2016 (the free Access 'player' from Microsoft), not a full version, whereas I have full version of Access 2016

Both of us run the same .accde file. See screenshot below how the expressions resolve on my PC and friend's. The only two expressions that don't fail are IIF() and Now(). Oddly enough, Date() fails, even tho Now() resolves.

Anyone able to advise? I know I can do those expressions in VBA, just want to know what's happening.
See screenshots below (can't post direct links yet on the forum):

My machine
Code:
i.imgur.com/ZYhYYDz.png
Friend's machine:
Code:
i.imgur.com/gIGNd1l.png
 
German Regional number format uses the comma as the decimal separator. Try using a semicolon rather then the comma as the parameter delimiter in functions.
 
If you google this sort of problem you keep seeing "Check for a missing reference", but since this fails in a Runtime situation I'm not sure how it might apply. On what type of system was this saved as a .accde file? Are the reference ok on that machine?
 
If you google this sort of problem you keep seeing "Check for a missing reference", but since this fails in a Runtime situation I'm not sure how it might apply. On what type of system was this saved as a .accde file? Are the reference ok on that machine?
Hi, I've saved .accde on the machine used for developing the .accdb
I have Access 2016 and 2010 on this machine and the expressions resolve fine in either version, both as .accdb and .accde

Of two people I've asked to try the .accde (both installed Access 2016 runtime version), who have German PCs, both had the same problem.
Friend from screenshots above does not have any Office installed.
Second friend has Office 2010 and Access2016 runtime installed.

Not sure what references I'd need to set for Date(), Format() etc :/

It's bizarre that IIF() and Now() work, but Date(), Format() etc don't

The expressions are entered directly in textbox 'Control cource' field, so can't set breakpoints to step through. I might try taking these expressions into VBA and check how that goes.
 
German Regional number format uses the comma as the decimal separator. Try using a semicolon rather then the comma as the parameter delimiter in functions.

I've tried changing my regional settings to use comma instead of dot, but that didn't produce the #Name? error.

If trying to use semicolon in the expression, I get a message that the syntax is incorrect, it accepts only the colon for me.
The expressions are entered directly into textbox's 'Control Source' field

Code:
i.imgur.com/Rfvs9BK.png
 
I suggest focusing on the Date function and see if you can figure that out first. How about creating a database with a form that has a button. The code for the button would be:

Code:
Msgbox Date()

Save that as a .accde file send it to them and see what they get when they click the button. If that works you can built things up from there to see what's breaking this.
 
Attached is an accde file that does what I described in my last post. This was created with Access 2013. Maybe you could have them try this one too.
 

Attachments

Attached is an accde file that does what I described in my last post. This was created with Access 2013. Maybe you could have them try this one too.
Thanks fir the file sneuberg.
Long story short, code works if I move the test form with a barebones table into your database.

your form
Code:
i.imgur.com/B1NDtvC.png
my form
Code:
i.imgur.com/WGqdWNd.png
your dependancies
Code:
i.imgur.com/kBuAkRw.png
my dependancies
Code:
i.imgur.com/SgH5Jyt.png
Ugh, this is going to be painful to figure out.
Options->Current Database all settings are the same except for Application Title and Application Icon being set for me.
 
So then it might be one of the references (dependencies) you have that is not in my database. Once you figure out which one I suggest changing the code that uses the reference to late binding.
 
I've renamed one of referenced DLLs (Word) to tempotrarily break refereces on my machine and indeed the control expression enumeration started failing on my machine.
Seems there's some code around that goes through References and even repairs them. At least I sohuld be able to capture another machine's lack of DLLs.
Anyone has experience with repairing references at runtime and SysCmd(504, 16483)? Would it be worth pursuing?
Thanks for the advices, Glaxiom, sneuberg!
 

Users who are viewing this thread

Back
Top Bottom