ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 5362|回复: 19

[求助] 请教:如何实现我这种单元格输入逐步提示??

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-1-15 15:17 | 显示全部楼层 |阅读模式
{:soso_e100:}大家好,有个问题想请教一下,麻烦哪位大虾帮帮忙!
想实现的功能:

1.在sheet1 中W2,W3,W4,W5…的每个单元格输入内容时,实现逐步提示内容,sheet2中B6-B93是提示内容的所有源数据。

2.在sheet1 中Y2,Y3,Y4,Y5…的每个单元格输入内容时,实现逐步提示内容,sheet2中D6-D11是提示内容的所有源数据。

3.在sheet1 中AA2,AA3,AA4,AA5…的每个单元格输入内容时,实现逐步提示内容,sheet2中F6-F11是提示内容的所有源数据。

4.在sheet1 每个单元格中,只要输入一个或者两个连续的英文词,如can't、cant detect等,就可以从sheet2 中对应的源数据中自动检索相关的内容逐步提示,输入的内容匹配性越高,供选择的内容就越精确。

5.sheet1 & sheet2中请不要增加列,不改动原始内容!谢谢!
1.jpeg
规范模板.rar (24.37 KB, 下载次数: 68)


TA的精华主题

TA的得分主题

 楼主| 发表于 2013-1-15 15:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
{:soso_e121:}各位哥哥姐姐帮帮忙哦,非常感谢哈~

TA的精华主题

TA的得分主题

发表于 2013-1-16 17:51 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
蓝桥玄霜 发表于 2013-1-16 10:34

正好需要,学习收藏了。谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-1-17 13:27 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
蓝桥玄霜 发表于 2013-1-16 18:36
我的代码是根据1楼你的要求:逐步提示选择输入,没有涉及最后的筛选。

蓝老师,能再帮我一下吗,问题2和问题3的数据透视表异常问题和双击才出现输入提示的可以改进吗?谢谢啦~!!

TA的精华主题

TA的得分主题

发表于 2013-1-16 10:34 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.     Dim i As Integer
  3.     col = Target.Column
  4.     If Target.Count = 1 Then
  5.         If (Target.Column = 23 Or Target.Column = 25 Or Target.Column = 27) And Target.Row > 1 Then
  6.             With Me.TextBox1
  7.                 .Visible = True
  8.                 .Top = Target.Top
  9.                 .Left = Target.Left
  10.                 .Width = Target.Width
  11.                 .Height = Target.Height * 1.5
  12.                 .Activate
  13.             End With
  14.             With Me.ListBox1
  15.                 .Visible = True
  16.                 .Top = Target.Top
  17.                 .Left = Target.Left + Target.Width
  18.                 .Width = Target.Width * 1.5
  19.                 .Height = Target.Height * 5
  20.             End With
  21.         Else
  22.             Me.ListBox1.Clear
  23.             Me.TextBox1 = ""
  24.             Me.ListBox1.Visible = False
  25.             Me.TextBox1.Visible = False
  26.         End If
  27.     End If
  28. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2013-1-16 10:36 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
请见附件。

规范模板0116.rar

39.62 KB, 下载次数: 259

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-1-18 17:20 | 显示全部楼层
蓝桥玄霜 发表于 2013-1-18 16:38
请见附件。

谢谢蓝老师!!{:soso_e100:}{:soso_e100:}功能太强大了{:soso_e121:}

TA的精华主题

TA的得分主题

发表于 2013-1-18 16:38 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
请见附件。

规范模板0118-更新.rar

39.22 KB, 下载次数: 185

TA的精华主题

TA的得分主题

发表于 2013-1-18 16:37 | 显示全部楼层
  1. Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  2.     Dim i As Integer
  3.     col = Target.Column
  4.     If Target.Count = 1 Then
  5.         If (Target.Column = 23 Or Target.Column = 25 Or Target.Column = 27) And Target.Row > 1 Then
  6.             With Me.TextBox1
  7.                 .Visible = True
  8.                 .Top = Target.Top
  9.                 .Left = Target.Left
  10.                 .Width = Target.Width
  11.                 .Height = Target.Height * 1.5
  12.                 .Activate
  13.             End With
  14.             With Me.ListBox1
  15.                 .Visible = True
  16.                 .Top = Target.Top
  17.                 .Left = Target.Left + Target.Width
  18.                 .Width = Target.Width * 1.5
  19.                 .Height = Target.Height * 10
  20.             End With
  21.         Else
  22.             Cancel = True
  23.             Me.ListBox1.Clear
  24.             Me.TextBox1 = ""
  25.             Me.ListBox1.Visible = False
  26.             Me.TextBox1.Visible = False
  27.         End If
  28.     End If
  29. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-1-16 13:47 | 显示全部楼层
本帖最后由 寒暖 于 2013-1-16 13:48 编辑
蓝桥玄霜 发表于 2013-1-16 10:36
请见附件。


谢谢蓝老师帮忙!刚才仔细看了一下,很实用!非常感谢{:soso_e121:}!

蓝老师,能否帮忙改进3个问题(详见附件):

1.W列的单元格,W2单元格无输入内容、第Wm(m>=3)单元格有输入内容时,W列无法筛选;但如果W2,W3,W4...单元格都有输入内容时,W列才可筛选,不知道可否改进?Y列、AA列一样。

2.因备选项可能会很多,备选框高度可否设计高点?

3.W,Y,AA列单元格输入时可否不分大小写,如输入odd时,备选中的ODD相关项也会出现?


1.png
规范模板0116.rar (48.47 KB, 下载次数: 33)

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-24 08:00 , Processed in 0.038710 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表