The D1 field in the table is formatted as currency, with decimal places on Auto.
Again, formatting only affects how the data looks, not how the data is stored. I do not bother setting the format of fields in tables. Actually, I think setting a format in a table field is a waste if time. No user will (should) ever see a table, so it doesn't matter what the data looks like.
I do the formatting in the controls on the form.
I'm going to guess that the data type of the fields D1 - D15 are Number/Single????
--------------------------
I have a question. You have 15 unbound list boxes on a form. Somewhere you have code that look like this:
Code:
If Me.D1 = 0 Or IsNull(Me.D1) Then
CurrentDb.Execute "UPDATE tblPO SET tblPO.D1 = " & Me.Cost & " WHERE [PONo] = '" & Me.PONo & "'"
Me.D1.Requery
ElseIf Me.D2 = 0 Or IsNull(Me.D2) Then
CurrentDb.Execute "UPDATE tblPO SET tblPO.D2 = " & Me.Cost & " WHERE [PONo] = '" & Me.PONo & "'"
Me.D2.Requery
.
.
.
ElseIf Me.D15 = 0 Or IsNull(Me.D15) Then
CurrentDb.Execute "UPDATE tblPO SET tblPO.D15 = " & Me.Cost & " WHERE [PONo] = '" & Me.PONo & "'"
Me.D15.Requery
End If
Lets say "Cost" = $10.50 and list box D4 = 0 and D8 = 0.
When the above code is executed, D4 is updated from $0 to $10.5. Then the code exits and list box D8 is left at $0.
Is this correct?
--------------------
Formatting in a list box/combo box......
Is listbox "DTot" displaying only the TOTAL of all of the fields? Or does "DTot" display fields D1 - D15 and the total?
Create a new list box next to "DTot" and paste in the following for the Row Source
Code:
SELECT qryPOInfo.PONo, Format(Sum(Nz([D1])+Nz([D2])+Nz([D3])+Nz([D4])+Nz([D5])+Nz([D6])+Nz([D7])+Nz([D8])+Nz([D9])+Nz([D10])+Nz([D11])+Nz([D12])+Nz([D13])+Nz([D14])+Nz([D15])),"currency") AS DTtl
FROM qryPOInfo
GROUP BY qryPOInfo.PONo
HAVING (((qryPOInfo.PONo)=[forms]![Del].[PONo]));
Set the column count to 2
The total should be the same as "DTot", but formatted as currency.
--------------------
Thank you for keeping me digging instead of dropping the whole thing.
Not a problem. You are learning how to debug! 
--------------------
(From your post #9)
Is there an advantage to using a textbox on a form with a Control Source from a query or table, over a listbox
A text box and a list box are two different animals.
If a text box is bound, it is bound to a field in the form record source. It cannot be bound to a separate table or query.
If a text box is un-bound, you can set the control source to a function that will return a value that is not necessarily part of the form record source. The function can be a built in one (like DLOOKUP()) or a UDF (User Defined Function - a custom function you wrote).
A list box is kind of like a text box on steroids. A list box also has a control source and can be bound or un-bound, but it also has another property that the text box does not have: a Row Source. The row source allows you to have a fixed list ("Value List") or a query to provide a list of values to pick from.
So, is there an advantage of using a text box over a list box? It depends on what you are trying to do.
Clear as mud??