DLookup as Batch Number?

J

Jaybird

I'm creating an invoice form that has a main form (frmInvoice) based on a
table (Order Entry5). On it I have a subform that groups together records
with the same Order Number. I would like to be able to add the same batch
number to all of these grouped records at one time. Is DLookup the way to
go? The underlying table (Order Entry5) uses [RecordID] as the PK and [Order
Number] refers to the Order each record refers to. There is a field on
"Order Entry5" called [Batch Number] that I can use Dlookup on. I need to be
able to update all grouped records at once. I could use an update query, I
suppose...
 
J

Jaybird

The Invoice Form adds the Batch Number as well as the Invoice Number to those
records and add information to two other tables. However, the Batch Number
and Invoice Number don't exist until I create them. Currently, I am playing
around with an unbound text box that I can update the grouped records with an
update query, but it seems like a DLookup in the form header would be easier.
--
Why are you asking me? I dont know what Im doing!

Jaybird


Roger Carlson said:
If the Order Entry5 table has the Batch Number, then I don't see why you
want to add the Batch Number to all the related records in the subform. You
can get the batch number anytime you want with a query.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L

Jaybird said:
I'm creating an invoice form that has a main form (frmInvoice) based on a
table (Order Entry5). On it I have a subform that groups together records
with the same Order Number. I would like to be able to add the same batch
number to all of these grouped records at one time. Is DLookup the way to
go? The underlying table (Order Entry5) uses [RecordID] as the PK and
[Order
Number] refers to the Order each record refers to. There is a field on
"Order Entry5" called [Batch Number] that I can use Dlookup on. I need to
be
able to update all grouped records at once. I could use an update query,
I
suppose...
 
R

Roger Carlson

Are all of the records in the form and subform coming from the same table?
If so, you've got problems with your data model. The records in the subform
should be in a separate table that is related to the table in the main form
on the primary key of the main form table.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L

Jaybird said:
The Invoice Form adds the Batch Number as well as the Invoice Number to
those
records and add information to two other tables. However, the Batch
Number
and Invoice Number don't exist until I create them. Currently, I am
playing
around with an unbound text box that I can update the grouped records with
an
update query, but it seems like a DLookup in the form header would be
easier.
--
Why are you asking me? I dont know what Im doing!

Jaybird


Roger Carlson said:
If the Order Entry5 table has the Batch Number, then I don't see why you
want to add the Batch Number to all the related records in the subform.
You
can get the batch number anytime you want with a query.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L

Jaybird said:
I'm creating an invoice form that has a main form (frmInvoice) based on
a
table (Order Entry5). On it I have a subform that groups together
records
with the same Order Number. I would like to be able to add the same
batch
number to all of these grouped records at one time. Is DLookup the way
to
go? The underlying table (Order Entry5) uses [RecordID] as the PK and
[Order
Number] refers to the Order each record refers to. There is a field on
"Order Entry5" called [Batch Number] that I can use Dlookup on. I need
to
be
able to update all grouped records at once. I could use an update
query,
I
suppose...
 
J

Jaybird

I've never been quite clear on the problem that this presents... It seems to
me that if the relationship to the main table is one to one, why put it on a
different table? In any case, we may be saying the same thing in two
different languages. I do, in fact, have two additional tables that are
linked to the form and record details about the invoices. These tables are
mandated by corporate and must be in the format that they have specified,
since they are to be exported and uploaded into the corporate system. I
cannot change them. Since they aren't at issue here, I didn't think to
explain their purpose and function. Anyway, they are the reason that I
cannot create a third table and create a subform relationship in the
traditional manner. One uses [Order Number] as the PKand [Invoice Number] as
a FK, and the other uses a multi-field PK, since there is no single unique
identifier for records on this table. The two tables are linked by the FK
[Invoice Number]. In order to make the underlying tables updateable, and
keep the associated subforms in synch with one another as I move from record
to record in the main form, I nested the one subform within the other and
linked that to the main form by [Order Number]. The problem is that [Order
Number] isn't the PK, [RecordID] is. Long story short... Rather than create
a fourth table to record the Invoice Header information and then link it to
the main form by [Order Number], I just added a few fields to the Order Entry
table and created a subform based on those fields. In case you're wondering
why, in God's name, don't I just redesign the Order Entry table and its
related tables and their relationships in a manner that makes more sense,
it's because I can't convince the boss to let me. This table is extremely
important to the operations around here and any screw ups on my part will be
disastrous. Oh and, by the way, he designed it. So I'm working around it.
--
Why are you asking me? I dont know what Im doing!

Jaybird


Roger Carlson said:
Are all of the records in the form and subform coming from the same table?
If so, you've got problems with your data model. The records in the subform
should be in a separate table that is related to the table in the main form
on the primary key of the main form table.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L

Jaybird said:
The Invoice Form adds the Batch Number as well as the Invoice Number to
those
records and add information to two other tables. However, the Batch
Number
and Invoice Number don't exist until I create them. Currently, I am
playing
around with an unbound text box that I can update the grouped records with
an
update query, but it seems like a DLookup in the form header would be
easier.
--
Why are you asking me? I dont know what Im doing!

Jaybird


Roger Carlson said:
If the Order Entry5 table has the Batch Number, then I don't see why you
want to add the Batch Number to all the related records in the subform.
You
can get the batch number anytime you want with a query.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L

"Jaybird" <UMUhtq5013> wrote in message
I'm creating an invoice form that has a main form (frmInvoice) based on
a
table (Order Entry5). On it I have a subform that groups together
records
with the same Order Number. I would like to be able to add the same
batch
number to all of these grouped records at one time. Is DLookup the way
to
go? The underlying table (Order Entry5) uses [RecordID] as the PK and
[Order
Number] refers to the Order each record refers to. There is a field on
"Order Entry5" called [Batch Number] that I can use Dlookup on. I need
to
be
able to update all grouped records at once. I could use an update
query,
I
suppose...
 
R

Roger Carlson

I've never been quite clear on the problem that this presents... It seems
to
me that if the relationship to the main table is one to one, why put it on
a
different table?

If the relationship is one-to-one, then all the records *should* be in one
table (with minor exceptions). However, a Form/Subform is usually used to
represent a one-to-many relationship were the many of the records in the
subform are related to the one record in the main form.
I do, in fact, have two additional tables that are
linked to the form and record details about the invoices. These tables
are
mandated by corporate and must be in the format that they have specified,
since they are to be exported and uploaded into the corporate system. I
cannot change them.

Not entirely true. You could create queries that can be exported in the
format required for your corporate system while keeping your tables in a
properly normalized structure.
This table is extremely
important to the operations around here and any screw ups on my part will
be
disastrous. Oh and, by the way, he designed it. So I'm working around
it.

Well that, at least, I understand. Sometimes you don't have a choice.

I really don't understand your data structure nor your form(s) well enough
to give you a detailed answer. But if it were me, rather than a DLookUp,
I'd use an Update Query to update those records in the base tables. You
could put the code behind a button that would read the key values in the
form(s) to create the Where condition.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L
 
J

Jaybird

Thanks for your response, Roger... Love your site, by the way. I've gotten
DLookup to work acceptably well, but am now working on a way to increment it
in an acceptable format. What they do is take the month (09), the number of
batches so far +1 (01), and the year (07), delimited by "-". I can't
remember how to parse a delimited string. I even downloaded a custom
function for it, but can't remember how to use it!
 
R

Roger Carlson

Oh, and the Left and Right functions as well. If the number is ALWAYS in
exactly this form (09-01-07) then you can do something like this:

Sub test()
Dim x As String
Dim y As String
x = "09-01-07"
y = Left(x, 3)
y = y & Format(Mid(x, 4, 2) + 1, "00")
y = y & Right(x, 3)
Debug.Print y
End Sub

Which will increment to middle digits. However, you are limited to 99 in
the middle section this way, because if it ever goes to 3 digits, it will no
longer parse correctly.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L
 
J

Jaybird

Thanks, Roger. Ugh. Coding is not my strong suit. Allen Browne has a
ParseWord function that is easy enough for dummies like me to understand.
I'll admit though, I had to go back and read the instructions!
 
J

Jaybird

Well, okay, you got me... DLookup has some update problems to the subforms
and is a little slow. I've got an update query that I'm designing to do the
job instead, but my design is not quite right. Can you take a look?

UPDATE [Order Entry5] SET [Order Entry5].BatchNumber = Format("Date","m") &
"-" & ParseWord(DMax("[BatchNumber]","Order Entry5"),2,"-")+"1" & "-" &
Format("Date","yy")
WHERE ((([Order Entry5].[Order Number])=[forms]![frmInvoice]![Order Number]));

I'm using Allen Browne's ParseWord function. I'll post it here so you can
duplicate the results.

Option Compare Database

Option Explicit
Function ParseWord(varPhrase As Variant, ByVal iWordNum As Integer, Optional
strDelimiter As String = " ", _
Optional bRemoveLeadingDelimiters As Boolean, Optional
bIgnoreDoubleDelimiters As Boolean) As Variant
On Error GoTo Err_Handler
'Purpose: Return the iWordNum-th word from a phrase.
'Return: The word, or Null if not found.
'Arguments: varPhrase = the phrase to search.
' iWordNum = 1 for first word, 2 for second, ...
' Negative values for words form the right: -1 = last
word; -2 = second last word, ...
' (Entire phrase returned if iWordNum is zero.)
' strDelimiter = the separator between words. Defaults to a
space.
' bRemoveLeadingDelimiters: If True, leading delimiters are
stripped.
' Otherwise the first word is returned as null.
' bIgnoreDoubleDelimiters: If true, double-spaces are treated
as one space.
' Otherwise the word between spaces is returned as null.
'Author: Allen Browne. http://allenbrowne.com. June 2006.
Dim varArray As Variant 'The phrase is parsed into a variant array.
Dim strPhrase As String 'varPhrase converted to a string.
Dim strResult As String 'The result to be returned.
Dim lngLen As Long 'Length of the string.
Dim lngLenDelimiter As Long 'Length of the delimiter.
Dim bCancel As Boolean 'Flag to cancel this operation.

'*************************************
'Validate the arguments
'*************************************
'Cancel if the phrase (a variant) is error, null, or a zero-length string.
If IsError(varPhrase) Then
bCancel = True
Else
strPhrase = Nz(varPhrase, vbNullString)
If strPhrase = vbNullString Then
bCancel = True
End If
End If
'If word number is zero, return the whole thing and quit processing.
If iWordNum = 0 And Not bCancel Then
strResult = strPhrase
bCancel = True
End If
'Delimiter cannot be zero-length.
If Not bCancel Then
lngLenDelimiter = Len(strDelimiter)
If lngLenDelimiter = 0& Then
bCancel = True
End If
End If

'*************************************
'Process the string
'*************************************
If Not bCancel Then
strPhrase = varPhrase
'Remove leading delimiters?
If bRemoveLeadingDelimiters Then
strPhrase = Nz(varPhrase, vbNullString)
Do While Left$(strPhrase, lngLenDelimiter) = strDelimiter
strPhrase = Mid(strPhrase, lngLenDelimiter + 1&)
Loop
End If
'Ignore doubled-up delimiters?
If bIgnoreDoubleDelimiters Then
Do
lngLen = Len(strPhrase)
strPhrase = Replace(strPhrase, strDelimiter & strDelimiter,
strDelimiter)
Loop Until Len(strPhrase) = lngLen
End If
'Cancel if there's no phrase left to work with
If Len(strPhrase) = 0& Then
bCancel = True
End If
End If

'*************************************
'Parse the word from the string.
'*************************************
If Not bCancel Then
varArray = Split(strPhrase, strDelimiter)
If UBound(varArray) >= 0 Then
If iWordNum > 0 Then 'Positive: count words from the left.
iWordNum = iWordNum - 1 'Adjust for zero-based array.
If iWordNum <= UBound(varArray) Then
strResult = varArray(iWordNum)
End If
Else 'Negative: count words from the right.
iWordNum = UBound(varArray) + iWordNum + 1
If iWordNum >= 0 Then
strResult = varArray(iWordNum)
End If
End If
End If
End If

'*************************************
'Return the result, or a null if it is a zero-length string.
'*************************************
If strResult <> vbNullString Then
ParseWord = strResult
Else
ParseWord = Null
End If

Exit_Handler:
Exit Function

Err_Handler:
On Error Resume Next
Resume Exit_Handler
End Function

I hope I'm not violating netiquette by doing this. Without my table, you
can't really reproduce results anyway. What happens is, I get the Records
from Order Entry5 that I want by making the Order Number textbox in the
header of my form a criteria for the query. You can see the formula I used
for the update. But only the first record from the recordset is changed. I
haven't run into this yet.
 
R

Roger Carlson

Couple of thoughts:

What does:
Select BatchNumber from [Order Entry5]
WHERE [Order Entry5].[Order Number]=[forms]![frmInvoice]![Order Number];
return?

If it only returns one record, there's something wrong with your Where
condition. If it returns all the records, then it might be a record locking
issue. I'm groping in the dark here, but if you have one of the records
open and locked, you won't be able to update it through a separate process.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L


Jaybird said:
Well, okay, you got me... DLookup has some update problems to the
subforms
and is a little slow. I've got an update query that I'm designing to do
the
job instead, but my design is not quite right. Can you take a look?

UPDATE [Order Entry5] SET [Order Entry5].BatchNumber = Format("Date","m")
&
"-" & ParseWord(DMax("[BatchNumber]","Order Entry5"),2,"-")+"1" & "-" &
Format("Date","yy")
WHERE ((([Order Entry5].[Order Number])=[forms]![frmInvoice]![Order
Number]));

I'm using Allen Browne's ParseWord function. I'll post it here so you can
duplicate the results.

Option Compare Database

Option Explicit
Function ParseWord(varPhrase As Variant, ByVal iWordNum As Integer,
Optional
strDelimiter As String = " ", _
Optional bRemoveLeadingDelimiters As Boolean, Optional
bIgnoreDoubleDelimiters As Boolean) As Variant
On Error GoTo Err_Handler
'Purpose: Return the iWordNum-th word from a phrase.
'Return: The word, or Null if not found.
'Arguments: varPhrase = the phrase to search.
' iWordNum = 1 for first word, 2 for second, ...
' Negative values for words form the right: -1 = last
word; -2 = second last word, ...
' (Entire phrase returned if iWordNum is zero.)
' strDelimiter = the separator between words. Defaults to a
space.
' bRemoveLeadingDelimiters: If True, leading delimiters are
stripped.
' Otherwise the first word is returned as null.
' bIgnoreDoubleDelimiters: If true, double-spaces are treated
as one space.
' Otherwise the word between spaces is returned as null.
'Author: Allen Browne. http://allenbrowne.com. June 2006.
Dim varArray As Variant 'The phrase is parsed into a variant array.
Dim strPhrase As String 'varPhrase converted to a string.
Dim strResult As String 'The result to be returned.
Dim lngLen As Long 'Length of the string.
Dim lngLenDelimiter As Long 'Length of the delimiter.
Dim bCancel As Boolean 'Flag to cancel this operation.

'*************************************
'Validate the arguments
'*************************************
'Cancel if the phrase (a variant) is error, null, or a zero-length
string.
If IsError(varPhrase) Then
bCancel = True
Else
strPhrase = Nz(varPhrase, vbNullString)
If strPhrase = vbNullString Then
bCancel = True
End If
End If
'If word number is zero, return the whole thing and quit processing.
If iWordNum = 0 And Not bCancel Then
strResult = strPhrase
bCancel = True
End If
'Delimiter cannot be zero-length.
If Not bCancel Then
lngLenDelimiter = Len(strDelimiter)
If lngLenDelimiter = 0& Then
bCancel = True
End If
End If

'*************************************
'Process the string
'*************************************
If Not bCancel Then
strPhrase = varPhrase
'Remove leading delimiters?
If bRemoveLeadingDelimiters Then
strPhrase = Nz(varPhrase, vbNullString)
Do While Left$(strPhrase, lngLenDelimiter) = strDelimiter
strPhrase = Mid(strPhrase, lngLenDelimiter + 1&)
Loop
End If
'Ignore doubled-up delimiters?
If bIgnoreDoubleDelimiters Then
Do
lngLen = Len(strPhrase)
strPhrase = Replace(strPhrase, strDelimiter & strDelimiter,
strDelimiter)
Loop Until Len(strPhrase) = lngLen
End If
'Cancel if there's no phrase left to work with
If Len(strPhrase) = 0& Then
bCancel = True
End If
End If

'*************************************
'Parse the word from the string.
'*************************************
If Not bCancel Then
varArray = Split(strPhrase, strDelimiter)
If UBound(varArray) >= 0 Then
If iWordNum > 0 Then 'Positive: count words from the
left.
iWordNum = iWordNum - 1 'Adjust for zero-based
array.
If iWordNum <= UBound(varArray) Then
strResult = varArray(iWordNum)
End If
Else 'Negative: count words from the
right.
iWordNum = UBound(varArray) + iWordNum + 1
If iWordNum >= 0 Then
strResult = varArray(iWordNum)
End If
End If
End If
End If

'*************************************
'Return the result, or a null if it is a zero-length string.
'*************************************
If strResult <> vbNullString Then
ParseWord = strResult
Else
ParseWord = Null
End If

Exit_Handler:
Exit Function

Err_Handler:
On Error Resume Next
Resume Exit_Handler
End Function

I hope I'm not violating netiquette by doing this. Without my table, you
can't really reproduce results anyway. What happens is, I get the Records
from Order Entry5 that I want by making the Order Number textbox in the
header of my form a criteria for the query. You can see the formula I
used
for the update. But only the first record from the recordset is changed.
I
haven't run into this yet.
 
J

Jaybird

Hmmm... That statement actually brings up more than one record (depending of
course on the details of that particular Order Number). But only the first
gets updated in my update query. I've never had problems with update queries
in the past... It's probably something simple and obvious.
--
Why are you asking me? I dont know what Im doing!

Jaybird


Roger Carlson said:
Couple of thoughts:

What does:
Select BatchNumber from [Order Entry5]
WHERE [Order Entry5].[Order Number]=[forms]![frmInvoice]![Order Number];
return?

If it only returns one record, there's something wrong with your Where
condition. If it returns all the records, then it might be a record locking
issue. I'm groping in the dark here, but if you have one of the records
open and locked, you won't be able to update it through a separate process.

--
--Roger Carlson
MS Access MVP
Access Database Samples: www.rogersaccesslibrary.com
Want answers to your Access questions in your Email?
Free subscription:
http://peach.ease.lsoft.com/scripts/wa.exe?SUBED1=ACCESS-L


Jaybird said:
Well, okay, you got me... DLookup has some update problems to the
subforms
and is a little slow. I've got an update query that I'm designing to do
the
job instead, but my design is not quite right. Can you take a look?

UPDATE [Order Entry5] SET [Order Entry5].BatchNumber = Format("Date","m")
&
"-" & ParseWord(DMax("[BatchNumber]","Order Entry5"),2,"-")+"1" & "-" &
Format("Date","yy")
WHERE ((([Order Entry5].[Order Number])=[forms]![frmInvoice]![Order
Number]));

I'm using Allen Browne's ParseWord function. I'll post it here so you can
duplicate the results.

Option Compare Database

Option Explicit
Function ParseWord(varPhrase As Variant, ByVal iWordNum As Integer,
Optional
strDelimiter As String = " ", _
Optional bRemoveLeadingDelimiters As Boolean, Optional
bIgnoreDoubleDelimiters As Boolean) As Variant
On Error GoTo Err_Handler
'Purpose: Return the iWordNum-th word from a phrase.
'Return: The word, or Null if not found.
'Arguments: varPhrase = the phrase to search.
' iWordNum = 1 for first word, 2 for second, ...
' Negative values for words form the right: -1 = last
word; -2 = second last word, ...
' (Entire phrase returned if iWordNum is zero.)
' strDelimiter = the separator between words. Defaults to a
space.
' bRemoveLeadingDelimiters: If True, leading delimiters are
stripped.
' Otherwise the first word is returned as null.
' bIgnoreDoubleDelimiters: If true, double-spaces are treated
as one space.
' Otherwise the word between spaces is returned as null.
'Author: Allen Browne. http://allenbrowne.com. June 2006.
Dim varArray As Variant 'The phrase is parsed into a variant array.
Dim strPhrase As String 'varPhrase converted to a string.
Dim strResult As String 'The result to be returned.
Dim lngLen As Long 'Length of the string.
Dim lngLenDelimiter As Long 'Length of the delimiter.
Dim bCancel As Boolean 'Flag to cancel this operation.

'*************************************
'Validate the arguments
'*************************************
'Cancel if the phrase (a variant) is error, null, or a zero-length
string.
If IsError(varPhrase) Then
bCancel = True
Else
strPhrase = Nz(varPhrase, vbNullString)
If strPhrase = vbNullString Then
bCancel = True
End If
End If
'If word number is zero, return the whole thing and quit processing.
If iWordNum = 0 And Not bCancel Then
strResult = strPhrase
bCancel = True
End If
'Delimiter cannot be zero-length.
If Not bCancel Then
lngLenDelimiter = Len(strDelimiter)
If lngLenDelimiter = 0& Then
bCancel = True
End If
End If

'*************************************
'Process the string
'*************************************
If Not bCancel Then
strPhrase = varPhrase
'Remove leading delimiters?
If bRemoveLeadingDelimiters Then
strPhrase = Nz(varPhrase, vbNullString)
Do While Left$(strPhrase, lngLenDelimiter) = strDelimiter
strPhrase = Mid(strPhrase, lngLenDelimiter + 1&)
Loop
End If
'Ignore doubled-up delimiters?
If bIgnoreDoubleDelimiters Then
Do
lngLen = Len(strPhrase)
strPhrase = Replace(strPhrase, strDelimiter & strDelimiter,
strDelimiter)
Loop Until Len(strPhrase) = lngLen
End If
'Cancel if there's no phrase left to work with
If Len(strPhrase) = 0& Then
bCancel = True
End If
End If

'*************************************
'Parse the word from the string.
'*************************************
If Not bCancel Then
varArray = Split(strPhrase, strDelimiter)
If UBound(varArray) >= 0 Then
If iWordNum > 0 Then 'Positive: count words from the
left.
iWordNum = iWordNum - 1 'Adjust for zero-based
array.
If iWordNum <= UBound(varArray) Then
strResult = varArray(iWordNum)
End If
Else 'Negative: count words from the
right.
iWordNum = UBound(varArray) + iWordNum + 1
If iWordNum >= 0 Then
strResult = varArray(iWordNum)
End If
End If
End If
End If

'*************************************
'Return the result, or a null if it is a zero-length string.
'*************************************
If strResult <> vbNullString Then
ParseWord = strResult
Else
ParseWord = Null
End If

Exit_Handler:
Exit Function

Err_Handler:
On Error Resume Next
Resume Exit_Handler
End Function

I hope I'm not violating netiquette by doing this. Without my table, you
can't really reproduce results anyway. What happens is, I get the Records
from Order Entry5 that I want by making the Order Number textbox in the
header of my form a criteria for the query. You can see the formula I
used
for the update. But only the first record from the recordset is changed.
I
haven't run into this yet.
 

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