• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 3159
  • Last Modified:

Microsoft Access - Increment Number Using Update Query

I need to run an update to increment an ID number, starting at a certain value and adding 1 for each record.

Currently I have a separate table (named fCallID) that contains the starting number in a field called newCallID.  The current value is 131200

I need to update the CallID field in the fCalls table.  The CallID field is blank for all 50000 records. I want to start with the newCallID value of 131200 and add 1 for every CallID in the fCalls table.

I want to run this one time from a query. Note: the primary key of fCalls is mid.

Thanks
0
apollo7
Asked:
apollo7
  • 2
  • 2
1 Solution
 
VTKeganCommented:
From VBA you could do something like this.


You could place this code in a module as a public Sub and run it from the immediate window.
Dim rst as dao.recordset
Dim NextID as Integer
NextID = DLookup("NewCallID","fCallID")

Set rst = CurrentDb.OpenRecordset ("Select * From fCalls")

rst.movefirst
Wile Not rst.eof
     If IsNull(rst!CallID) Then
       rst.edit     
       rst!CallID = NextID
       rst.Update
       rst.MoveNext
       NextID = NextID + 1
     Else
       rst.moveNext
     End If
Wend

Set rst=Nothing

Open in new window

0
 
apollo7Author Commented:
Thanks for the quick response.

Can you explain how to do this (from your post):

<<You could place this code in a module as a public Sub and run it from the immediate window>>.

I am familar with creating a function in a module and calling it from a query but I am not sure what you mean by the above.  Can you give me instructions on how to do this?

Thanks again.
0
 
VTKeganCommented:
Click on the create tab at the top of access.  On the far righ under other there will be a split button that says macro.  Click on the drop down and select module.

This will open up the VBA editor.

Type in the first line of code like this Public Sub [YOURSUBROUTINENAMEHERE] ()

Then paste the code from above.  The editor should automatically include End Sub at the end of the routine after typing in the first line.

Press ctrl + G to open the immediate window.

In that window you can simply type the name of the subroutine you just created and it will run the code.
0
 
MINDSUPERBCommented:
Is your CallID field has an AutoNumber format?

Ed
0
 
apollo7Author Commented:
Thanks very much for the help
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now