Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
           & " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & Text3 & " ," & trim(text4.text)  &",'" & Check2 & "')"其中:功率控制类型(字符型),允许负载功率最低(长整型),允许负载功率最高(长整型),允许负载控制启用(字符型),禁用负载功率最低(长整型),禁用负载功率最高(长整型),禁用负载控制启动(字符型)现在的问题是:    当TEXT3和TEXT4没有内容,即为空时,如何保证SQL的正常执行。

解决方案 »

  1.   

    Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
      & " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & iif(Text3.text = "", 0, text3.text) & " ," & iif(Text4.text = "", 0, trim(text4.text)) & ",'" & Check2 & "')"
      

  2.   

    如楼上,用IIF函数判断一下就可以了。
    把你原语句中的 text3 替换如下
    IIF(ISNULL(TEXT3) or TEXT3="","null",TEXT3)
      

  3.   

    Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
      & " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & iif(Text3.text = "", "0", "" & text3.text &"") & " ," & iif(Text4.text = "", "0", "" & text4.text & "") & ",'" & Check2 & "')"
      

  4.   

    Sql = "Insert into glkz (功率控制类型,允许负载功率最低,允许负载功率最高,允许负载控制启用,禁用负载功率最低,禁用负载功率最高,禁用负载控制启动)" _
      & " values ('" & Trim(Text8) & "', " & Trim(Text1)& "," & trim(Text2.text) & ", '" & Check1 & "'," & val(Text3.text) & " ," & val(text4.text) &",'" & Check2 & "')"
      

  5.   

    如果已经做过输入检查,保证 Text3、Text4 中没有小数,按照 4楼的方法用 Val() 函数。
    否则用 CLng() 强制转换为整数
    ... & CLng("0" & Trim(Text3)) & "," & CLng("0" & Trim(Text4)) & ...