By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
464,767 Members | 1,034 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 464,767 IT Pros & Developers. It's quick & easy.

Copy a fields Value

P: n/a
When entering a record in a form, I would like a value in a field of
the previous record to be entered automatically into a different field
of the current record. Which way should I go? Is it also possible to
do this based on criteria from the previous record?
Nov 12 '05 #1
Share this Question
Share on Google+
4 Replies

P: n/a
First, let me point out that the terms "next" and "previous" can be
misleading in relational database. By definition, records in a relational
table are unordered, and you cause them to be ordered by specifying sort
fields in a query (which is the same as an ORDER BY clause in SQL).

That said, assuming that you are specifying an order during data entry that
will be the order you obtain by sorting on output, then it is relatively
easy, in VBA code, to define form-level variables into which you save the
values of the Form's Controls in the AfterUpdate event of the Form. You can
then put VBA code in the OnCurrent event of a new record to use those
variables both to set Controls in the new Record and as criteria in
conditional VBA statements such as IF ... THEN ....

Even if the records are not being entered in order, but you can identify
what the "previous" record should be (by a field value, such as an Order
Number, Customer Number, or a combination of field values), you can write
VBA code to read the previous record from the table, and obtain its values.

For a "semi-automatic" approach, you can simply use Ctrl plus the
single-quote, which will fill the Control with the value from the
previously-entered Record.

Larry Linson
Microsoft Access MVP

"Gene" <hr*****@yahoo.com> wrote in message
news:47**************************@posting.google.c om...
When entering a record in a form, I would like a value in a field of
the previous record to be entered automatically into a different field
of the current record. Which way should I go? Is it also possible to
do this based on criteria from the previous record?

Nov 12 '05 #2

P: n/a
Tym
On Mon, 29 Dec 2003 18:10:01 GMT, "Larry Linson"
<bo*****@localhost.not> wrote:
For a "semi-automatic" approach, you can simply use Ctrl plus the
single-quote, which will fill the Control with the value from the
previously-entered Record.


....and this keyboard shortcut is documented *where* ? :-)
Nov 12 '05 #3

P: n/a
"Tym" <no*****@ictis.net> wrote in message
news:3f**************@169.100.100.5...
On Mon, 29 Dec 2003 18:10:01 GMT, "Larry Linson"
<bo*****@localhost.not> wrote:
For a "semi-automatic" approach, you can simply use Ctrl plus the
single-quote, which will fill the Control with the value from the
previously-entered Record.


...and this keyboard shortcut is documented *where* ? :-)


Microsoft Access Help -> Keyboard Shortcuts
Nov 12 '05 #4

P: n/a
Gene,
In addition to Larry's remarks an approach that I learned from postings here:

You can use ANY field and code in the the field's afterupdate-event something like:
Me!Field1.DefaultValue = Me!Field1
Me!Field2.DefaultValue = Me!Field2
This results in ANY new entered value 'carried-on' to the next record.

I use this for quick data-entry in one of my apps for different UserID's and WorkID's
UserID and WorkID are 'carried on' and don't need to be entered for new records.
After any new input for UserID or WorkID the new ID is 'carried-on'.

--
Hope this helps
Arno R

"Larry Linson" <bo*****@localhost.not> schreef in bericht
news:Z5****************@nwrddc01.gnilink.net...
First, let me point out that the terms "next" and "previous" can be
misleading in relational database. By definition, records in a relational
table are unordered, and you cause them to be ordered by specifying sort
fields in a query (which is the same as an ORDER BY clause in SQL).

That said, assuming that you are specifying an order during data entry that
will be the order you obtain by sorting on output, then it is relatively
easy, in VBA code, to define form-level variables into which you save the
values of the Form's Controls in the AfterUpdate event of the Form. You can
then put VBA code in the OnCurrent event of a new record to use those
variables both to set Controls in the new Record and as criteria in
conditional VBA statements such as IF ... THEN ....

Even if the records are not being entered in order, but you can identify
what the "previous" record should be (by a field value, such as an Order
Number, Customer Number, or a combination of field values), you can write
VBA code to read the previous record from the table, and obtain its values.

For a "semi-automatic" approach, you can simply use Ctrl plus the
single-quote, which will fill the Control with the value from the
previously-entered Record.

Larry Linson
Microsoft Access MVP

"Gene" <hr*****@yahoo.com> wrote in message
news:47**************************@posting.google.c om...
When entering a record in a form, I would like a value in a field of
the previous record to be entered automatically into a different field
of the current record. Which way should I go? Is it also possible to
do this based on criteria from the previous record?


Nov 12 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.