永发信息网

如何用vba实现在EXCEL固定区域坐标内点击单元格,显示日期控件

答案:2  悬赏:0  手机版
解决时间 2021-02-15 04:10
  • 提问者网友:温柔港
  • 2021-02-14 23:34
如何用vba实现在EXCEL固定区域坐标内点击单元格,显示日期控件?
最佳答案
  • 五星知识达人网友:鱼芗
  • 2021-02-15 00:47
第一首先要用 Private Sub Worksheet_Change(ByVal Target As Range) 触发事件。 第二要用到日期控件: 方法一:先将控件工具箱调出来。视图-工具栏-控件工具箱。 在控件工具箱上最下面那个按钮是其他控件,打开它,找到Microsoft Date and Time Picker Control, 这个就是日历控件。然后在一个单元格上拖画一个框,日历控件就出来了。 然后在控件工具箱上退出设计模式,日历控件就能使用了。 在你所要用到的单元格内画出,大小要和单元格一样; 选中控件,右键单击选择菜单“设置控件格式”,在"属性"选项中选择“大小、位置均随单元格而变”,确定; 右键单击控件选择菜单“查看代码”,进入VBA后,键入以下代码: Private Sub DTPicker1_Change() Sheet1.Cells(1, 1) = CStr(DTPicker1) End Sub Private Sub DTPicker1_Click() Sheet1.Cells(1, 1) = CStr(DTPicker1) End Sub 返回到Excel,调整单元格大小使控件完全显示; 退出设计模式,OK。如果没有这个控件可以自己去网上下载个控件或者用方法2. 方法2:在EXCEL窗口中执行“ 视图 ”→“ 工具栏 ”→“ 控件工具箱 ”添加“ 日历控件 11.0 ”
全部回答
  • 1楼网友:一叶十三刺
  • 2021-02-15 01:33
使用vba, 增加一个form (表单),然后在菜单中选择,tool (工具)-〉additional control (附加控件),选择 calander control (日期控件) ,然后拖到form 上,调整好大小。 表单命名为userform1 , 日期控件的名为 calendar1 在sheet1 中加入以下代码 ( 假设你要在sheet1的"a1" 中设定位启动日起菜单的单元格): private sub worksheet_selectionchange(byval target as range) if typename(selection) <> "range" then exit sub if selection.address = "$a$1" then userform1.show end if end sub 在userform1 的代码中加入以下代码: private sub calendar1_click() range("a1").value = calendar1.value unload userform1 end sub
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯