Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

vba代码无法正常运行 if下逻辑判定无法正常运行

偶是一颗菠菜  发表于:2015-09-16 10:22:53  
复制

上半段的IF i不为空的时候出来的结果都没问题,但我销控表里i为空的时候也就是执行else那段代码的时候 无法正常的隐藏显示窗体的控件 请问是怎么回事

Private Sub cmd定金_Click()

DoCmd.Close acForm, "定金签约", acSaveNo
DoCmd.OpenForm "定金签约"
Dim i As String '定金ID
i = DLookup("定金ID", "销控表", "销控ID=" & "'" & SalesID & "'")
If Not IsNull(i) Then
Forms!定金签约!客户ID = DLookup("客户ID", "销控表", "销控ID=" & "'" & SalesID & "'")
Forms!定金签约!业务员ID = DLookup("业务员ID", "销控表", "销控ID=" & "'" & SalesID & "'")
Forms!定金签约!认购日期 = DLookup("认购日期", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!签约日期 = DLookup("签约日期", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!定金 = DLookup("定金", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!备注 = DLookup("备注", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约.CmdConfirm.Visible = False
Forms!定金签约.CmdEdit.Visible = True
Forms!定金签约.CmdDrop.Visible = True
ElseIf i = Null Then
Forms!定金签约.CmdConfirm.Visible = True
Forms!定金签约.CmdEdit.Visible = False
Forms!定金签约.CmdDrop.Visible = False
End If


End Sub

 

Top
丘山 发表于:2015-09-16 12:26:03

ElseIf i=null then

换成

else

或者 elseif isnull(i) then



偶是一颗菠菜 发表于:2015-09-16 13:22:30

我这个 也试过了  但还是不行




chinasa 发表于:2015-09-16 13:57:13

If IsNull(DLookup("定金ID", "销控表", "销控ID=" & "'" & SalesID & "'")) = 0 Then

msgbox "找到记录"

............

end if

 

 

If IsNull(DLookup("定金ID", "销控表", "销控ID=" & "'" & SalesID & "'")) = -1 Then

msgbox "未找到记录。通过是否会跳出此信息可以判断问题出在哪个环节。"

............

end if

 



菜鸟先飞 发表于:2015-09-16 17:30:24
DoCmd.Close acForm, "定金签约", acSaveNo
DoCmd.OpenForm "定金签约"
If Not IsNull(DLookup("定金ID", "销控表", "销控ID=" & "'" & SalesID & "'")) Then
Forms!定金签约!客户ID = DLookup("客户ID", "销控表", "销控ID=" & "'" & SalesID & "'")
Forms!定金签约!业务员ID = DLookup("业务员ID", "销控表", "销控ID=" & "'" & SalesID & "'")
Forms!定金签约!认购日期 = DLookup("认购日期", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!签约日期 = DLookup("签约日期", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!定金 = DLookup("定金", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!备注 = DLookup("备注", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约.CmdConfirm.Visible = False
Forms!定金签约.CmdEdit.Visible = True
Forms!定金签约.CmdDrop.Visible = True
Else
Forms!定金签约.CmdConfirm.Visible = True
Forms!定金签约.CmdEdit.Visible = False
Forms!定金签约.CmdDrop.Visible = False
End If


丘山 发表于:2015-09-16 23:15:47

要不你就不要用if了

把if段直接如下:


Forms!定金签约!客户ID = DLookup("客户ID", "销控表", "销控ID=" & "'" & SalesID & "'")
Forms!定金签约!业务员ID = DLookup("业务员ID", "销控表", "销控ID=" & "'" & SalesID & "'")
Forms!定金签约!认购日期 = DLookup("认购日期", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!签约日期 = DLookup("签约日期", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!定金 = DLookup("定金", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约!备注 = DLookup("备注", "定金明细表", "定金编号=" & "'" & i & "'")
Forms!定金签约.CmdConfirm.Visible = IsNull(i) 
Forms!定金签约.CmdEdit.Visible = Not IsNull(i)
Forms!定金签约.CmdDrop.Visible =Not IsNull(i)



cspa 发表于:2015-09-17 08:22:01
ElseIf nz(i,"") = "" Then

杜超 发表于:2015-09-30 13:09:16
用ADO方式

总记录:7篇  页次:1/1 9 1 :