首页 > 解决方案 > 在循环中跳过空文本框

问题描述

我有一个有效的代码,需要以我的连续表格将其应用于我的所有记录。

Private Sub Befehl104_Click()

 While Me.CurrentRecord < Me.Recordset.RecordCount

      Me.WreckBreiteDD.Value = Round(WechselnD(Me.WreckBreiteDMS.Value), 7)
     Me.WreckLängeDD.Value = Round(WechselnD(Me.WreckLängeDMS.Value), 7)


DoCmd.GoToRecord Record:=acNext
Wend
End Sub

有时“WreckBreiteDMS”为空,因此代码停止,因为函数“WechselnD”无法执行。

我怎样才能跳过那些空的文本框?

已经在所有可能的地方尝试过“Nz()”,没有任何帮助。

我想我需要做类似的事情:

 If Me.WreckBreiteDD.Value = Round(WechselnD(Me.WreckBreiteDMS.Value), 7) = 0, DoCmd.GoToRecord:=acNext

但是我的snytax有一些问题..

谢谢!

标签: vbams-access

解决方案


示例 where WreckLängeDMS是字符串,并且 WreckBreiteDMS是数字

Private Sub Befehl104_Click()

 While Me.CurrentRecord < Me.Recordset.RecordCount

     if not isnull(Me.WreckBreiteDMS.Value) then
         Me.WreckBreiteDD.Value = Round(WechselnD(Me.WreckBreiteDMS.Value), 7)
     end if
     if nz(Me.WreckLängeDMS.Value,"")<>"" then
         Me.WreckLängeDD.Value = Round(WechselnD(Me.WreckLängeDMS.Value), 7)
     end if


DoCmd.GoToRecord Record:=acNext
Wend
End Sub

推荐阅读