以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  窗口中如何设置代码项目?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=32652)

--  作者:lyfxybc
--  发布时间:2013/5/6 6:30:00
--  窗口中如何设置代码项目?

窗口中如何设置代码项目?

      为了提高输入速度,我想在窗口输入框中使用代码项目,如何设置?我看过帮助,帮助中是在表中的列中设置。

因为有时输入框紧挨着,而列又距离较远,来回从窗口和表中调换,降低了输入速度,特别是在生产现场应用录取现场数据,不方便。

请问一下如何解决,

例如:从输入框中输入1,对应的表中单元格(列行)显示“王华”,输入2,表中单元格显示“刘红兰”等等。

易表有这个功能。

我又找了一下帮助,下列代码能实现,但是如果“中国"经常改变的,不是固定的,如何从一个表中来调用, 

If e.Value IsNot Nothing Then
    If
e.Value = "cn" Then
        e.Value =
"中国"
    ElseIf
e.Value = "usa" Then
        e.value =
"美国"
    ElseIf
e.Value = "jp" Then
        e.value =
"日本"
    End
If
End
If

 

 

如表有两列,第一列     第二列 

                  1           王华

                  2           刘红兰

                  3           日本

                  4           刘娟                

第二列的内容经常变化,变化后修改表中数据,而不用重新打开项目改上面代码。

 

If e.Value IsNot Nothing Then
    If
e.Value = "1" Then
        e.Value =
"中国"        \'改成调用表中的数据代码
    ElseIf
e.Value = "usa" Then
        e.value =
"美国"
    ElseIf
e.Value = "jp" Then
        e.value =
"日本"
    End
If
End
If

 

 

 

 

 

 

[此贴子已经被作者于2013-5-6 6:48:24编辑过]

--  作者:Bin
--  发布时间:2013/5/6 8:48:00
--  
If e.Value IsNot Nothing Then
  e.Value=datatables("XX").Find("编号=\'" & e.Value & "\'")("存值的列名")
End
 If

--  作者:狐狸爸爸
--  发布时间:2013/5/6 11:10:00
--  

最好还是判断一下是否存在符合条件的行:

 

If e.Value IsNot Nothing Then
  dim dr AS dataRow =datatables("XX").Find("编号=\'" & e.Value & "\'")
  if dr isnot nothing then
     e.value = dr ("存值的列名")
  end if
End If


--  作者:lyfxybc
--  发布时间:2013/5/6 11:46:00
--  
谢谢