Help

A

Asif

Hello

I have the following code to copy data from one record to
another, the code comes from Allen Browne website and with
some help from Dirk Goldgar (Thank You) i got it to work
in a ADP. My problem now is that the form which I would
like this to work in has a subform datasheet and I would
like that to be copied across too.

When I click on the button to run the copy data code it
copies the data successfully but when I try to click on
the subform to add or adjust orders it comes up with the
following error:

You entered an expression that has an invalid reference to
the property Form/Report

The property may not exist or may not apply to the objsct
you specified.

I have to then Esc out of the error and the data from the
subform disappears.

The code is as follows

Sub CarryOver(frm As Form)
On Error GoTo Err_CarryOver
' Purpose: Carry the values over from the last record to
a new one.
' Usage: In a form's BeforeInsert event procedure, enter:
' Call CarryOver(Me)
' Notes: This example limited to text boxes and combo
boxes.
' Text/combo boxes must have same Name as the
fields they represent.
Dim rst As ADODB.Recordset
Dim ctl As Control
Dim i As Integer

Set rst = frm.RecordsetClone
If rst.RecordCount > 0 Then
rst.MoveLast
For i = 0 To frm.Count - 1
Set ctl = frm(i)
If TypeOf ctl Is TextBox Then
If Not IsNull(rst(ctl.Name)) Then
ctl = rst(ctl.Name)
End If
ElseIf TypeOf ctl Is ComboBox Then
If Not IsNull(rst(ctl.Name)) Then
ctl = rst(ctl.Name)
End If
End If
Next
End If

Exit_CarryOver:
Set rst = Nothing
Exit Sub

Err_CarryOver:
Select Case Err
Case 2448, 30016 'Cannot assign a value
Debug.Print "Value cannot be assigned to " &
ctl.Name
Resume Next
Case 3265 'Name not found in this collection.
Debug.Print "No matching field name found for " &
ctl.Name
Resume Next
Case Else
MsgBox "Carry-over values were not assigned,
from " & ctl.Name & _
". Error #" & Err.Number & ": " &
Err.Description, vbExclamation, "CarryOver()"
Resume Exit_CarryOver
End Select
End Sub

Any help will be much appreciated.

Kindest Regards
Asif
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top