版友sbsfhgl 同志有两表其一为材料价格其二为配料核算,其配料表中的配料字段存放用一个加号连接的字符串表示配料方案,欲按各个配料方案计算其配料的单位价格。此问题有点意思,便做此实例以解其惑。
点击下载此附件
Private Sub 计算_Click()
Dim frm As Form
Dim ctls As Controls
Dim A
Dim i As Long, j As Long
'Dim s As Single
Set frm = Me.配料子窗体.Form
Set ctls = frm.Controls
For i = 1 To frm.RecordsetClone.RecordCount
frm.SelTop = i
A = Split(ctls("配料").Value, "+")
ctls("单价").Value = 0
For j = 0 To UBound(A, 1)
If Nz(DLookup("单价", "材料单价", "材料名='" & A(j) & "'"), 0) <> 0 Then
ctls("单价").Value = ctls("单价").Value + DLookup("单价", "材料单价", "材料名='" & A(j) & "'")
Else
MsgBox "核算失败,缺少" & A(j) & "材料单价"
ctls("单价").Value = Null
Exit For
End If
Next
Next
End Sub