Solved

Update Access field from a button on a second form

Posted on 2012-03-21
12
250 Views
Last Modified: 2012-03-26
I have two forms.  In one form, I am pulling Full names and users names.  The other form is used for data entry.  I want to see if I can (after data is retrieved on form 1) add a button on form one that will take the username and populate it in one of the text fields on form 2.  

Trying to make this easy for my end users.

As a note, both of my tables are ODBC SQL tables.  This should not matter but wanted to be sure it was stated.
0
Comment
Question by:HMSImage
12 Comments
 
LVL 16

Expert Comment

by:DcpKing
ID: 37749063
Open the second form and then tell it to requery with the user name.  Something like this
docmd.openForm B
form_B.filter="UserName='" & me.txtUserName & "'" '

You could also have a method on form B that sets it to show the details for a particular user that it gets from a parameter, and invoke that method with the selected username from the code in the button on Form A. IMHO that's the cleanest, best, and most elegant technique.
0
 

Author Comment

by:HMSImage
ID: 37749094
The original form would already be open.  It is an entry form, however the user will have to lookup some values that they would not know.  The second form allows them to search for this info.  

Instead of me depending on them to type the data correctly, I want the button to auto-populate the field on the entry form.  Does this make sense?

Not sure your solution will work for this.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 37749537
The way you phrased your question originally, DcpKing's solution should work.
Remember he stated: "Something like this"

So on the button on the "second" form, try something like this:
me.YourControl=Forms!Form1!txtUserName

Just note that you did not post any details on the design of these forms, so guesses is all we can provide...


Jeffcoachman
0
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 
LVL 29

Expert Comment

by:IrogSinta
ID: 37749633
boag200's answer will work if your button is on your 2nd form.  I believe you mentioned that you wanted the button on form 1 so you would modify boag200's answer as follows:

Sub button1_click()
     Forms!NameOfForm1!txtUserName = me.YourControl
End sub


Or if you decide to have your form2 as a subform of form1, you would use this:

Sub button1_click()
     me.NameOfsubform.form!txtUserName = me.YourControl
End sub
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 37749706
IrogSinta,

LOL
Yeah, I was a bit confused to as to where this "button" was to...

No sweat here, ...if your syntax is what they wanted, I don't need any points...

;-)

Jeff
0
 

Author Comment

by:HMSImage
ID: 37753539
So, now I am getting an error message from the code.  I am attaching screen prints that should help.  I have two independent forms.  One is an entry and the other is used for data lookup to fill in the entry.

Following the above suggestions, I am receiving the following error: Invalid use of property.  Thoughts?

Please ask question if I am unclear.
ScreenHunter-02-Mar.-22-11.29.gif
ScreenHunter-03-Mar.-22-11.29.gif
0
 

Author Comment

by:HMSImage
ID: 37753636
Sorry, included another screen shot showing the above syntax.
ScreenHunter-04-Mar.-22-11.49.gif
0
 
LVL 74

Accepted Solution

by:
Jeffrey Coachman earned 500 total points
ID: 37753987
Where are you getting that syntax from?

The correct syntax should be something like this:
SomeControlOnTheCurrentForm=Forms![Some Other Form Name]![Some Control Name]

Or

Forms![SomeFormName]![SomeOtherControlName]=SomeControlOnTheCurrentForm

This is why it is always best to simply post a sample of the DB...

JeffCoachman
0
 

Author Comment

by:HMSImage
ID: 37754243
Right, understand.  Let me try that.  There are limitations (from an employer point of view) about what I can post and not.  Trust me, if I could I would have first thing.

So my syntax would be:

Forms!'Matrix Form Entry'!Approver1=USR_NAME

Correct?

If Matrix Form Entry = [SomeFormName] and
If Approver1=[SomeOtherControlName] and
If USR_NAME=[SomeControlOnTheCurrentForm]
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 37754381
Correct, but again, it is still not clear which "Direction" this is being done from, so you may have to reverse the syntax...
0
 

Author Closing Comment

by:HMSImage
ID: 37767383
Worked once I used the brackets.  Guess I figured I did not need the actual brackets.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 37767974
The brackets should only be needed if you have spaces in your object names...

This is why spaces in object names is frowned upon.

Try to adopt a standard Naming convention like:
http://www.xoc.net/standards/rvbanc.asp
or:
http://en.wikipedia.org/wiki/Leszynski_naming_convention

;-)

JeffCoachman
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

This article explains how to reset the password of the sa account on a Microsoft SQL Server.  The steps in this article work in SQL 2005, 2008, 2008 R2, 2012, 2014 and 2016.
Describes a method of obtaining an object variable to an already running instance of Microsoft Access so that it can be controlled via automation.
What’s inside an Access Desktop Database. Will look at the basic interface, Navigation Pane (Database Container), Tables, Queries, Forms, Report, Macro’s, and VBA code.
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.

830 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question