Foxtable(狐表)用户栏目专家坐堂 → [求助]如何实现:在单元格中录入数据时自动弹出下拉窗口,并根据所录入的内容自动模糊查询


  共有22369人关注过本帖树形打印复制链接

主题:[求助]如何实现:在单元格中录入数据时自动弹出下拉窗口,并根据所录入的内容自动模糊查询

帅哥哟,离线,有人找我吗?
coolbbs
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:54 积分:809 威望:0 精华:0 注册:2009/2/6 9:08:00
  发帖心情 Post By:2012/1/6 19:31:00 [只看该作者]

想问下楼主,你楼顶的想法能实现了吗?能的话可否给个文件参考学习一下。

 回到顶部
帅哥哟,离线,有人找我吗?
明丰
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
  发帖心情 Post By:2012/1/7 14:08:00 [只看该作者]

'表事件-编辑-KeyDownEdit
If Forms("窗口1").Opened Then
    If e.Col.Name = "第一列"  Then
        Dim t As Table = Tables("窗口1_Table1")
        If e.keycode = keys.Down
            t.position = t.Position +1
            e.Cancel = True
        ElseIf e.keycode = keys.up
            t.position = t.Position -1
            e.Cancel = True
        ElseIf e.Keycode = keys.Enter 'And t.Current IsNot Nothing
            e.Text = t.Current("省市")
            e.Row("第二列") = t.Current("县市")
            e.Row("第三列") = t.Current("区号")
            e.Row("第四列") = t.Current("邮编")
            Forms("窗口1").close()
        End If
    End If
End If

 

 


图片点击可在新窗口打开查看此主题相关图片如下:3.gif
图片点击可在新窗口打开查看

 

根据上面设置,选择行时只能用箭头键操作,当使用鼠标左键选择"窗口1_Table1"中的行按Enter时出错,请问如何设置?


 回到顶部
帅哥哟,离线,有人找我吗?
明丰
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
  发帖心情 Post By:2012/1/7 23:05:00 [只看该作者]

整理了一下,测试基本通过.(原来打开的窗口位置不理想,重新调整)
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数据表作为列表.table

[此贴子已经被作者于2012-1-7 23:06:22编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
小猪鑫鑫
  14楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:832 积分:5867 威望:0 精华:6 注册:2011/5/27 11:41:00
  发帖心情 Post By:2012/1/7 23:18:00 [只看该作者]

值得学习与收藏,谢谢楼主


 回到顶部
帅哥哟,离线,有人找我吗?
7032175
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2012/1/8 8:06:00 [只看该作者]

上面的所有方法只适合在表中运行,如建立一个窗体,在窗体中加入一个如上的表,在运行的时候,在自行设计的窗体里面输入数据的时候就不管用了, 这是为什么呢?

 


 回到顶部
帅哥哟,离线,有人找我吗?
明丰
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
  发帖心情 Post By:2012/1/8 8:24:00 [只看该作者]

是这样子吗?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数据表作为列表.table


 回到顶部
帅哥哟,离线,有人找我吗?
7032175
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2012/1/8 8:46:00 [只看该作者]

16楼的做法是很对,但是只能针对主窗口模式,如果换成模式之类的窗口就不管用了,要是换成模式之数的窗口如何更该。


 回到顶部
帅哥哟,离线,有人找我吗?
明丰
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:558 积分:4352 威望:0 精华:2 注册:2011/4/18 8:27:00
  发帖心情 Post By:2012/1/8 9:21:00 [只看该作者]

清除StartEdit事件的代码,ChangeEdit重新设置:

 

'表事件-编辑-ChangeEdit
If e.Col.Name = "第一列" Then
If Forms("窗口1").Opened = False Then
        Forms("窗口1").Open()
Tables("表A"). StartEditing ()
End If
End If

If Forms("窗口1").Opened Then
    Dim txt As String = e.Text
    Dim tbl As Table = Tables("窗口1_Table1")
    If txt = "" Then
        tbl.Filter = ""
    Else
        If txt.contains("*")
           
            txt =  "'*" & txt.replace("*","[*]") & "*'"    '
           
        Else
            txt = "'*" & txt & "*'"
        End If
        tbl.Filter = "省市 Like " & txt & " Or 县市 Like " & txt & ""
       
    End If
End If

[此贴子已经被作者于2012-1-8 9:55:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
coolbbs
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:54 积分:809 威望:0 精华:0 注册:2009/2/6 9:08:00
  发帖心情 Post By:2012/1/8 10:38:00 [只看该作者]

弹出窗口位置能随点选的单格变动不?比如窗口出现在点选单元格的下方或上方,这样就不用档住当前和的录入内容了。

 回到顶部
帅哥哟,离线,有人找我吗?
7032175
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2012/1/8 12:57:00 [只看该作者]

换了代码,用模式窗口打开还是老样子,问题没有解决

 


 回到顶部
总数 27 上一页 1 2 3 下一页