473,769 Members | 6,404 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Help with duplicate record, with changed field

14 New Member
Working in Access 2003.
I have managed to duplicate a record using a button on a form with code:
Private Sub Command16_Click ()
On Error GoTo Err_Command16_C lick


DoCmd.DoMenuIte m acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuIte m acFormBar, acEditMenu, 2, , acMenuVer70
DoCmd.DoMenuIte m acFormBar, acEditMenu, 5, , acMenuVer70 'Paste Append

Exit_Command16_ Click:
Exit Sub

Err_Command16_C lick:
MsgBox Err.Description
Resume Exit_Command16_ Click

End Sub

But this just creates a duplicate of the fields on the form, which is fine, but i would also like to +1 to one of the fields on the new record.

Is this possible? If so how would i do it.



Also.....
If this is possible,
would it also be possible to have a drop down menu in which to select say (n)1-9 and that is how many duplicates it will make with field +(n).
so the first duplicate will be the same but a field will have +1, and the next +2, etc.
for the selected number of fields
Mar 16 '07 #1
12 2140
fauxanadu
60 New Member
Let's Assume that there is a table tblStuff with fields txtName, txtAddress, and numID. Let's also assume that you wanted to increment numID and you are copying the last record made.

Expand|Select|Wrap|Line Numbers
  1. Private Sub Command16_Click()
  2.     On Error GoTo errCommand16Click
  3.  
  4.     Dim strName as String
  5.     Dim strAddress as String
  6.     Dim intIDNo as Integer
  7.     Dim rstStuff as ADODB.Recordset
  8.  
  9.     With rstStuff
  10.         'Open tblStuff to read and write
  11.         .Open "tblStuff", CurrentProject.Connection, adOpenDynamic, adLockOptimistic
  12.         'Moves to the last record, and then copies its values to temporary variables
  13.         .MoveLast
  14.         strName = rstStuff![txtAddress]
  15.         strAddress = rstStuff![txtAddress]
  16.         intIDNo = rstStuff![numID] + 1 'Adds one to the ID number
  17.         'Add a new record to tblStuff and give it the values pulled from the last record in the table
  18.         .AddNew
  19.         ![txtName] = strName
  20.         ![txtAddress] = strAddress
  21.         ![numID] = intIDNo
  22.         .Update
  23.         .Close
  24.     End With
  25.  
  26.     Set rstStuff = Nothing
  27.  
  28.     Exit Sub
  29.  
  30. errCommand16Click:
  31.     MsgBox Err.Description
  32.  
  33. End Sub
  34.  
In order to make several copies, grab the value from the sub-menu and store it in a variable (such as i) and then use For i = 1 to X just before the With rstStuff and End For just after Set rstStuff = Nothing
Mar 16 '07 #2
Denburt
1,356 Recognized Expert Top Contributor
After the new duplicate record is created then simply refer to the control in question and add 1

Me!YOURTEXTBOX = Me!YOURTEXTBOX+ 1



To break it down it would simply look like so:


Private Sub Command16_Click ()
On Error GoTo Err_Command16_C lick
Dim i as integer, cnt as integer

cnt = Me!COUNTTEXTBOX NAME

For i = 0 to cnt
DoCmd.DoMenuIte m acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuIte m acFormBar, acEditMenu, 2, , acMenuVer70
DoCmd.DoMenuIte m acFormBar, acEditMenu, 5, , acMenuVer70 'Paste Append

Me!YOURTEXTBOX = Me!YOURTEXTBOX+ 1

next

Exit_Command16_ Click:
Exit Sub

Err_Command16_C lick:
MsgBox Err.Description
Resume Exit_Command16_ Click

End Sub
Mar 16 '07 #3
Denburt
1,356 Recognized Expert Top Contributor
As a side note I didnt check to see what you were doing with the menubar commands those commands can be troublesome at times (not function correctly) I would suggest doing this in code it would be much more reliable..


Check out the following article:
http://support.microsoft.com/kb/210236
Mar 16 '07 #4
capdownlondon
14 New Member
thanks i will give that a try, will that only work for the last record? or will it work for whatever record is currently selected in the form?
Mar 16 '07 #5
capdownlondon
14 New Member
what i have already duplicates just the name, date index, and target 1, target 2, target 3 fields, and the autonumber already increases as it should, but i want to +1 to the date index field.
Mar 16 '07 #6
Denburt
1,356 Recognized Expert Top Contributor
If your adding one day to a date it would look more like:

Me!YOURTEXTBOX = DateAdd("d",1,M e!YOURTEXTBOX)


if you want to copy a particular record not just the last one it just needs a few adjustments.

Remove this:

If Not F.NewRecord Then Exit Function


Adjust the following lines to read:


Set RS = F.RecordsetClon e
'This line can be removed RS.MoveLast

rs.Bookmark=Me. Bookmark
docmd.GoToRecor d ,,acNewRec

I think that should work for you let me know.
Good Luck
Mar 16 '07 #7
capdownlondon
14 New Member
its a date index, that refers to a date in another table. just need to +1.
Mar 16 '07 #8
capdownlondon
14 New Member
one last thing, i think. I've managed to get the form to do what i want using:

Private Sub Command16_Click ()
On Error GoTo Err_Command16_C lick
Dim i As Integer, cnt As Integer

cnt = Me!Combo17

For i = 0 To cnt
DoCmd.DoMenuIte m acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuIte m acFormBar, acEditMenu, 2, , acMenuVer70
DoCmd.DoMenuIte m acFormBar, acEditMenu, 5, , acMenuVer70 'Paste Append

Me!Text22 = Me!Text22 + 1

Next

Exit_Command16_ Click:
Exit Sub

Err_Command16_C lick:
MsgBox Err.Description
Resume Exit_Command16_ Click

End Sub



Now when the records have been added it automatically takes me to the last record added. Is it possible to add the duplicates and stay with the current record on the form?
Mar 16 '07 #9
Denburt
1,356 Recognized Expert Top Contributor
At the beggining of the code mark your location theen at the end return to your original location.

Dim varBk As Integer
varBk = Me.Bookmark






Me.Bookmark = varBk

That should work.
Mar 16 '07 #10

Sign in to post your reply or Sign up for a free account.

Similar topics

7
9012
by: Bill Kellaway | last post by:
Hi there - this should be fairly simple for someone. Basically I can't figure out how to pass the parameters from ASP to a Stored Procedure on SQL. Here's my code: I just need to help in learning how to pass these varibables from ASP to the SP.
0
1286
by: Rob Knowles | last post by:
I have created a script that runs once a week and copies data from one table (phpbb_users is the actual table name) in a database called users I have a table called users. There are two tables in this database. The table names are: phpbb_users phpbb_users_backup
8
3306
by: Mark | last post by:
When my form goes to a new record, I have a procedure that copies the last record added to the form's underlying table into the form. The intent is that a series of new records may have the same data in many of the fields so I paste in the same values of the previous record and then edit what needs edited in the new record saving much retyping of the same data. Doing this however creates the definite possibility of creating a duplicate...
8
3221
by: Steph | last post by:
Hi. I'm very new to MS Access and have been presented with an Access database of contacts by my employer. I am trying to redesign the main form of the database so that a button entitled 'search' may be clicked on by the user and the user can then search all records by postcode. I want to do this to prevent duplicate data entry.
3
1520
by: accesstribe | last post by:
Hello, I have DB located on network, and network cable was cut off accidently few days ago... now its fixed, but I can't add new records to the DB with forms... The error I get is this (when trying to add new record): "The changes you requested to the table were not successful because they would create duplicate values in the index primary key or relationship. Change the data in the field or fields that contation duplicate data, remove...
8
1978
by: DP | last post by:
hi, i've got a price of code, which checks to see if a film is on rent, or available. but how can i actualyl make the cancel button do somthing? because, the cursor gets stuck on the filmID field. this is wat i've got so far; Private Sub FilmID_BeforeUpdate(Cancel As Integer) If DCount("*", "tblFilmRental", "FilmID=" & Me!) > 0 Then Cancel = True
15
2581
by: Jay | last post by:
I have a multi threaded VB.NET application (4 threads) that I use to send text messages to many, many employees via system.timer at a 5 second interval. Basically, I look in a SQL table (queue) to determine who needs to receive the text message then send the message to the address. Only problem is, the employee may receive up to 4 of the same messages because each thread gets the recors then sends the message. I need somehow to prevent...
9
11232
by: Tom_F | last post by:
To comp.databases.ms-access -- I just discovered, to my more than mild dismay, that some tables in my Microsoft Access 2003 database have duplicate numbers in the "AutoNumber" field. (Field Size is set to "Long Integer", and New Values is set to "Increment".) I know that an old version of the Jet database engine can cause this problem, but my version of msjet40.dll is 4.0.8618.0, which is supposedly bug-free in this respect. I am...
4
2069
theaybaras
by: theaybaras | last post by:
Hi All... I've read both of the requery discussions I could find... Refresh ComboBox After Adding New Values via a Seperate Form and refresh a form but am not quite able to get this to apply to my database. I have a table/form called Author_Info where information about authors is entered. The fields of interest here are: Author_Last Author_First
0
9587
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9423
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10211
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10045
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
9863
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8870
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
5298
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5447
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3958
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.