加入收藏 | 网站地图 | | RSS | WAP
你好,游客 登录 注册 搜索

Excel2003里利用日期控件在某个单元格点选

[日期:2010-09-10] 作者: 来源: [字体: ]
        如何在Excel2003里利用日期控件在某个单元格点选插入日期?5想在一个Excel2003版本的电子表格里利用Excel自带的日期控件在某两个单元格点选来实现插入日期。一个单元格要求:1. 选择此单元格后,出现日期选择的控件窗口,点选日期后,该日期控件窗口消失。2.日期窗口控件默认已经选择的日期是当前系统日期。另外一个单元格要求:1. 选择此单元格后,出现日期选择的控件窗口,点选日期后,该日期控件窗口消失。2.日期窗口控件默认已经选择的日期是当前系统日期后一周的日期。有需要控件注册和激活的地方,请网友提供相应可用的免费1.我的两个需要使用日历控件的单元格分别是V2和Z2,都在同一行,希望调出控件的时候,日历控件浮悬在第3行,这两个单元格附近,这样可以不遮盖V2和Z2单元格的显示。2.点击除了V2和Z2单元格外的任意单元格或者按Esc键时,日历控件也会消失,这时,如果未点选控件上的日期,V2和Z2单元格里均为空白。3.当用日历控件在V2单元格插入一个日期后,Z2单元格同步显示V2单元格日期的后七天的日期;相反,当用日历控件在Z2单元格插入一个日期后,V2单元格同步显示Z2单元格日期的前七天的日期。两个日历控件出现时,显示的默认日期均为当前日期首先插入一日期控件。如果你会(但确保控件名字叫Calendar1),请跳过步骤1。 步骤1:同时按Alt和F11,进入宏界面,点菜单的插入,模块,粘贴如下代码:Sub Macro2()ActiveSheet.OLEObjects.Add(ClassType:="MSCAL.Calendar.7", Link:=False, _       DisplayAsIcon:=False, Left:=100, Top:=75, Width:=300, Height:= _       180).SelectActiveSheet.Range("A1").SelectEnd Sub
在此界面直接按F5运行此宏(运行一次就够了)。这样就有了日期控件。

步骤2:右键点想实现功能的工作表的名字(在工作簿左下方呢),查看代码,粘贴如下代码:Private Sub Calendar1_Click()Selection.Range("A1") = Calendar1.ValueCalendar1.Visible = xlSheetHiddenEnd Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)On Error GoTo Line1If Target.Range("A1").Address = "$B$3" ThenCalendar1.Left = Target.Range("A1").LeftCalendar1.Top = Target.Range("A1").TopCalendar1.Value = DateCalendar1.Visible = TrueEnd IfIf Target.Range("A1").Address = "$B$4" ThenCalendar1.Left = Target.Range("A1").LeftCalendar1.Top = Target.Range("A1").TopCalendar1.Value = Date + 7Calendar1.Visible = TrueEnd IfLine1: End Sub
粗体字表示你说的两个单元格,请自己按需修改。回到Excel,功能实现。  你上述的回答,能否更加完善和改进一下?!1.我的两个需要使用日历控件的单元格分别是V2和Z2,都在同一行,希望调出控件的时候,日历控件浮悬在第3行,这两个单元格附近,这样可以不遮盖V2和Z2单元格的显示。2.点击除了V2和Z2单元格外的任意单元格或者按Esc键时,日历控件也会消失,这时,如果未点选控件上的日期,V2和Z2单元格里均为空白。3.当用日历控件在V2单元格插入一个日期后,Z2单元格同步显示V2单元格日期的后七天的日期;相反,当用日历控件在Z2单元格插入一个日期后,V2单元格同步显示Z2单元格日期的前七天的日期。两个日历控件出现时,显示的默认日期均为当前日期拜托你了,了
  按Esc键我还不会。点其他任意单元格可以。
Private Sub Calendar1_Click()Selection.Range("A1") = Calendar1.ValueIf Selection.Range("A1").Address = "$V$2" Then Range("Z2") = Calendar1.Value + 7If Selection.Range("A1").Address = "$Z$2" Then Range("V2") = Calendar1.Value - 7Calendar1.Visible = xlSheetHiddenEnd Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)On Error GoTo Line1Select Case Target.Range("A1").AddressCase "$V$2"Calendar1.Left = Target.Range("A1").LeftCalendar1.Top = Target.Range("A1").Offset(1, 0).TopIf Target.Range("A1").Value = "" ThenCalendar1.Value = DateElseCalendar1.Value = Target.Range("A1").ValueEnd IfCalendar1.Visible = TrueCase "$Z$2"Calendar1.Left = Target.Range("A1").LeftCalendar1.Top = Target.Range("A1").Offset(1, 0).TopIf Target.Range("A1").Value = "" ThenCalendar1.Value = Date + 7ElseCalendar1.Value = Target.Range("A1").ValueEnd IfCalendar1.Visible = TrueCase ElseCalendar1.Visible = FalseEnd SelectLine1: End Sub

  按Esc我还不会,但点任意其他单元格可以的
Private Sub Calendar1_Click()Selection.Range("A1") = Calendar1.ValueIf Selection.Range("A1").Address = "$V$2" Then Range("Z2") = Calendar1.Value + 7If Selection.Range("A1").Address = "$Z$2" Then Range("V2") = Calendar1.Value - 7Calendar1.Visible = xlSheetHiddenEnd Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)On Error GoTo Line1Select Case Target.Range("A1").AddressCase "$V$2"Calendar1.Left = Target.Range("A1").LeftCalendar1.Top = Target.Range("A1").Offset(1, 0).TopIf Target.Range("A1").Value = "" ThenCalendar1.Value = DateElseCalendar1.Value = Target.Range("A1").ValueEnd IfCalendar1.Visible = TrueCase "$Z$2"Calendar1.Left = Target.Range("A1").LeftCalendar1.Top = Target.Range("A1").Offset(1, 0).TopIf Target.Range("A1").Value = "" ThenCalendar1.Value = Date + 7ElseCalendar1.Value = Target.Range("A1").ValueEnd IfCalendar1.Visible = TrueCase ElseCalendar1.Visible = FalseEnd SelectLine1: End Sub

关键词:单元格  日期  2003  日期控件 

收藏 推荐 打印 | 录入:987950121 | 阅读:
本文评论   查看全部评论 (2)
表情: 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事/刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
第 2 楼
* 匿名 发表于 2016/12/25 13:19:52
http://www.blue1000.com/bkhtml/c118/2009-03/62516.htm 标兵事迹材料 http://www.135995.com/show/1672.html 先进基层党组织事迹材料 http://www.135995.com/show/1671.html
第 1 楼
* 匿名 发表于 2016/12/24 13:15:18
http://www.blue1000.com/bkhtml/c118/2009-03/62516.htm 穿越火线作文 http://www.135995.com/details/zs726.html xxx真聪明作文 http://www.135995.com/details/zs727.html