北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |
Private Sub 追加_Click()
Dim rsE As New ADODB.Recordset
Dim ssql As String
Dim i As Integer, m1 As Integer, m2 As Integer
ssql = "SELECT * FROM 签单及收款进度导入表 AS a WHERE [id] = (select max([id]) from 签单及收款进度导入表 b where a.合同编号=b.合同编号)"
rsE.Open ssql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
m1 = 0: m2 = 0
For i = 1 To rsE.RecordCount
If DCount("合同编号", "签单及收款进度表", "合同编号='" & rsE!合同编号.Value & "'") > 0 Then
' If DLookup("收尾款时间", "签单及收款进度表", "合同编号='" & rsE!合同编号.Value & "'") < rsE!收尾款时间.Value Then
ssql = "update 签单及收款进度表 set 收尾款时间=#" & rsE!收尾款时间.Value & "#,"
ssql = ssql & "首付款=" & rsE!首付款.Value & ","
ssql = ssql & "二期款=" & rsE!二期款.Value
ssql = ssql & " where 合同编号='" & rsE!合同编号.Value & "'"
CurrentDb.Execute ssql
m1 = m1 + 1
' End If
Else
ssql = "insert into 签单及收款进度表 (合同编号,收首期款时间,收二期款时间,收三期款时间,收尾款时间,首付款) "
ssql = ssql & "values ('" & rsE!合同编号.Value & "',#"
ssql = ssql & rsE!收首期款时间.Value & "#,#"
ssql = ssql & rsE!收二期款时间.Value & "#,#"
ssql = ssql & rsE!收三期款时间.Value & "#,#"
ssql = ssql & rsE!收尾款时间.Value & "#,"
ssql = ssql & rsE!首付款.Value & ")"
CurrentDb.Execute ssql
m2 = m2 + 1
End If
rsE.MoveNext
Next
rsE.Close: Set rsE = Nothing
Me.签单及收款进度表.Requery
MsgBox "修改首付款记录数:" & m1 & Chr(13) & Chr(10) & "追加新纪录数:" & m2
End Sub
问题:如果加上“If DLookup("收尾款时间", "签单及收款进度表", "合同编号='" & rsE!合同编号.Value & "'") < rsE!收尾款时间.Value Then。。。endif 能运行,但取消这二行,就提示”运行错误3144 ,update语句的语法错误“,请问问题在哪?