ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何实现 窗体中的TextBox1输入窗口 与 当前工作表中的单元格 同步?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-8-1 12:52 | 显示全部楼层 |阅读模式
我制作了一个窗体,里面有一个输入窗口是 TextBox1,
      在调用该窗口的模式是 show 0,故在窗体出现时,我也被允许点击单元格。

现在的问题是:
      在未启用窗体时,我先点击好单元格,再启动窗体,这时TextBox1里面就会自动 有了我在单元格中的内容,但是我把鼠标移到其它单元格位置去时,这个 TextBox1里面的内容不会跟着变。我要它跟着变化,即实现 窗体输入窗口与工作表的单元格同步信息,该如何编辑代码呢?
      谢谢!

附上我的代码:
Private Sub UserForm_Initialize()
    TextBox1.Value = ActiveCell.MergeArea.Cells(1, 1).Value
End Sub      

TA的精华主题

TA的得分主题

发表于 2012-8-1 13:19 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    UserForm1.TextBox1.Text = Target.Value
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-1 14:14 | 显示全部楼层
顺便也分享一下:
     正好,我在一楼用了句 ActiveCell.MergeArea.Cells(1, 1).Value,它代替二楼师傅的 Target.Value
,就能复制合并单元格了。

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-1 14:20 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
不过,有一点可惜的是,窗体如果是在加载宏中,我不太好用上面的代码了。
     我平时引用加载宏中的窗体,都是在加载宏中,直接建立一个自定义过程来打开 某某窗体.show,再引用这个过程的。

TA的精华主题

TA的得分主题

发表于 2012-8-2 09:21 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
工作表事件本身就要放置在操作的工作表中的,不然没法起监控工作表操作的效果
我感兴趣的是你如何在外部或者说跨工作簿访问窗体,比如我窗体在BOOK1中,我Book2需要访问BOOK1中的窗体USERFORM1

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-2 17:07 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
zhw79 发表于 2012-8-2 09:21
工作表事件本身就要放置在操作的工作表中的,不然没法起监控工作表操作的效果
我感兴趣的是你如何在外部或者 ...

我把窗体写入到加载宏中,哪 个工作簿都能引用 ,这个已经用了好久了哈。
   引用的办法是:把加载宏中的窗体,先在加载宏中用一个自定义过程调用 ,如
sub 调用()
     某窗体名称.show 0
end sub
     然后,我在EXCEL工作簿系统 的最上面做一个按钮,调用 加载宏中的该自定义过程,那么窗体就能被全部的工作簿所用。
调用查找窗口.png

TA的精华主题

TA的得分主题

发表于 2012-8-3 09:02 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
我指的不是菜单型式调用加载宏中的过程
而是对象访问,你要对其他XLS也好XLS文件也好中的窗体对象进行数据交互操作,势必要先取得该对象的访问方法
以下假设是这样的方法调用
BOOK1中有窗体USERFORM1
BOOK2中调用访问BOOK1中的窗体BOOK1.USERFORM1.CAPTION="外部调用"
-----------------------------------------------
在宏运行窗口中,执行其他打开的工作簿是如下型式:Book2!ThisWorkbook.aaa
就是不知道窗体对象怎么访问

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-3 11:04 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
这么说,我也不太会了哈。也没遇到过这种情况。
但感觉用菜单式的办法管用。

TA的精华主题

TA的得分主题

发表于 2018-9-24 23:06 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
chenlifeng123 发表于 2012-8-1 14:14
顺便也分享一下:
     正好,我在一楼用了句 ActiveCell.MergeArea.Cells(1, 1).Value,它代替二楼师傅的 ...

我要复制 多行的数据呢?比如说要A1-J1   A2-J2
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-1-16 00:46 , Processed in 0.026908 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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