Board logo

標題: 請問2010輸入日期 [打印本頁]

作者: applepal    時間: 2011-5-19 20:57     標題: 請問2010輸入日期

我在2010找不到月曆控制項

例如果整個BC兩攔都是需要輸入日期值(B欄:開始日期 / C欄:結束日期)
但我希望用點選儲存格--出現小月曆--點選日期  後自動帶入的方式

請問要怎麼作呢?
作者: Hsieh    時間: 2011-5-19 23:11

本帖最後由 Hsieh 於 2011-5-19 23:49 編輯

你應該沒安裝ACCESS所以找不到月曆控制項12.0
安裝月曆控制項
換成月曆控制項12.0安裝即可
[attach]6278[/attach]
作者: applepal    時間: 2011-5-20 15:50

太嫩無法下載  能否mail    [email protected]

另外  我現在找到了calendar 11.0
然後畫面上就出現一個月曆  我離開設計模式後  還是無法點選儲存格後顯示剛剛那個月曆來選日期
請問我該怎麼作呢
作者: oobird    時間: 2011-5-20 17:11

calendar 11.0
是2003用的,2010怎麼來的這個東西?
在設計模式,雙擊月曆控件
會出來如下:
Private Sub Calendar1_Click()

End Sub
改成如下:
Private Sub Calendar1_Click()
ActiveCell = Calendar1.Value
Calendar1.Visible = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 2 Or Target.Column = 3 Then
Calendar1.Visible = True
End If
End Sub
作者: applepal    時間: 2011-5-23 16:58

本帖最後由 applepal 於 2011-5-23 17:00 編輯

謝謝!成功了!
:D
作者: applepal    時間: 2011-5-23 17:08

不過我2010設計成功以後  2003就看不到了是嗎? 有辦法解決嘛?
作者: Hsieh    時間: 2011-5-23 17:43

回復 6# applepal
安裝2003的控制項,在2010中編輯
編輯完存成97-2003活頁簿就能在2003版本中使用
作者: applepal    時間: 2011-5-24 16:57

還有一個小問題  就是點選以後出現月曆  OK
如果我又不想輸入日期了  月曆就不會消失  我點其他儲存格他還是在那邊......
作者: GBKEE    時間: 2011-5-24 17:17

回復 8# applepal
oobird 版主的程式修改一下
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 2 Or Target.Column = 3 Then
Calendar1.Visible = True
Else
Calendar1.Visible = False

End If
End Sub
作者: applepal    時間: 2011-5-25 14:04

哇∼好感謝!這就是我要的  謝謝GBKEE .Hsieh .oobird !
作者: Rachel    時間: 2011-10-1 13:50

請教要如何修改才能在2欄以上使用,也就是說需要使用這個功能在多個相鄰或不相鄰的欄位使用的設定方式? 感恩~!
作者: luhpro    時間: 2011-10-1 19:40

請教要如何修改才能在2欄以上使用,也就是說需要使用這個功能在多個相鄰或不相鄰的欄位使用的設定方式? 感恩 ...
Rachel 發表於 2011-10-1 13:50

若為不特定儲存格時 :
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.   With Target
  3.     If .Column = 2 Or .Column = 3 Then
  4.       Calendar1.Visible = True
  5.     Else
  6.       Select Case "C" + Trim(.Column) + "R" + Trim(.Row)
  7.       Case "C1R3"
  8.            ' ===== 點擊 A3 後的處理動作 =====
  9.       Case "C5R12"
  10.            ' ===== 點擊 E12 後的處理動作 =====
  11.       Case Else
  12.            ' ===== 點擊 其他 儲存格後的處理動作 =====
  13.         Calendar1.Visible = False
  14.       End Select
  15.     End If
  16.   End With
  17. End Sub
複製代碼

作者: Rachel    時間: 2011-10-8 01:38

回復 12# luhpro

非常感恩大大的回覆~! 但想再請教您的是如果是6排整的欄位需要使用上月曆控制項,程式碼該如何修改呢?
例如:要設定在欄位   B,  C,  D,  E,  F,  D下所有的欄位都可以直接點選使用。

感恩~!
作者: luhpro    時間: 2011-10-8 06:04

回復  luhpro
但想再請教您的是如果是6排整的欄位需要使用上月曆控制項,程式碼該如何修改呢?
例如:要設定在欄位   B,  C,  D,  E,  F,  D下所有的欄位都可以直接點選使用。
Rachel 發表於 2011-10-8 01:38

嗯..., 有兩種寫法 :

  03. If .Column > 1 and .Column < 8 Then

或 (調整 第 3 行 到 第 5 行 及 第 15 行 的內容)

  原 03. Select Case .Column
           Case 2 To 7
  原 04.     Calendar1.Visible = True
           Case Else
         End Select
  原 05. (Else 刪除)
  原 15. (End If 刪除)

第一種方式適合 "單一組" 連續欄位範圍 的處理,
而第二種方式則彈性比較大. (用法請參閱 VBA說明 -> Select Case 陳述式)

比較需要留意的是 :

第 1 種寫法中因為 第 3 行 與 第 6 行 互斥,(Else 功能等同 Not)
  03. If .Column > 1 and .Column < 8 Then
  04.   Calendar1.Visible = True
  05. Else
  06.   Select Case "C" + Trim(.Column) + "R" + Trim(.Row)

  14.   End Select
  15. End If
所以若兩者有 重疊的區域 且都應 觸發到條件 時,
底下第 6 行中的指令永遠都不會執行到.

而第二種寫法 則不論前面是否有執行,
只要條件符合照樣會執行到,
有可能會出現 執行兩次 的情形,
故應留意範圍是否有重疊而需做例外處理.
作者: mingtel    時間: 2012-3-30 14:52

我在安裝套件時, 出現曆套件已經存在, 不需安裝,
請問我以在那裡自到這個控制件或如使用?
作者: zamamilo    時間: 2012-4-28 17:54

本帖最後由 zamamilo 於 2012-5-3 23:55 編輯

高手大大,

  我的版本是2010版也有安裝access2010
但執行時會出現

執行階段錯誤’424’
此處需要物件


我的程式如下
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case ActiveCell.Address
    Case Is = "$I$5"
        Calendar1.Visible = True: Calendar1 = Date
        Calendar1.Top = ActiveCell.Top
        Calendar1.Left = ActiveCell.Left
    Case Is = "$B$76"
        Calendar2.Visible = True
        Calendar2.Top = ActiveCell.Top
        Calendar2.Left = ActiveCell.Left
        ActiveCell.Select
    Case Is = "$B$77"
        Calendar2.Visible = True
        Calendar2.Top = ActiveCell.Top
        Calendar2.Left = ActiveCell.Left
    Case Is = "$B$78"
        Calendar2.Visible = True
        Calendar2.Top = ActiveCell.Top
        Calendar2.Left = ActiveCell.Left
    Case Is = "$B$79"
        Calendar2.Visible = True
        Calendar2.Top = ActiveCell.Top
        Calendar2.Left = ActiveCell.Left
    Case Is = "$B$80"
        Calendar2.Visible = True
        Calendar2.Top = ActiveCell.Top
        Calendar2.Left = ActiveCell.Left
    Case Is = "$B$81"
        Calendar2.Visible = True
        Calendar2.Top = ActiveCell.Top
        Calendar2.Left = ActiveCell.Left

End Select

可否煩請大大協助小弟

忘了跟各位大大報告,這段程式當時是在 excel 2003版下完成且執行ok的,但到了excel2010時才會出現
執行階段錯誤’424’
此處需要物件

不知要改那裡。能否請高手大大指導一下。
作者: Hsieh    時間: 2012-4-28 22:10

回復 16# mingtel


    [attach]10725[/attach]
作者: jackson7015    時間: 2014-9-2 08:52

回復 2# Hsieh

Hsieh版主您好;
請問此月曆控制項是否有其他名稱
因為我的控制項目內只有Microsoft Date and Time Picker Control 6.0(SP6),此月曆控制項名稱
要如何才能換製成版主您的此種月曆控制項中文名稱
作者: luhpro    時間: 2014-9-2 21:08

本帖最後由 luhpro 於 2014-9-2 21:10 編輯

回復 18# jackson7015
網路上找一下就有了:
請問一下excel的控制工具箱"月曆"控制項不見了  

微軟的下載網頁:
ACC97: Microsoft Access 97 ActiveX 控制項範例資料庫可用在下載中心
解壓縮後其中的 Mscal.ocx 檔案就包含 月曆控制項
作者: jackson7015    時間: 2014-9-3 09:14

回復 19# luhpro
感謝luhpro大大的回覆

之前就有搜尋過相關問題,但部分解決方式是直接下載該月曆控制項,如
Office 2010 月曆控制項新增
上述範例出現的控制項目就是我問題中的Microsoft Date and Time Picker Control 6.0(SP6),也是月曆控制項的一種
但是站上分享的控制項目編寫的公式,都是其他的月曆控制項,所以才想請教中文標題的月曆控制項如何下載

主要問題是因為我沒有安裝Access 2007
所以剛剛乾脆直接下載Access Runtime,就能出現中文標題的月曆控制項12.0
如有此問題的版友也可以使用此種方式解決
作者: msarthur    時間: 2014-11-2 16:38

感謝樓友們的解答
小弟也正好需要幫助...
寫了一個輸入日期用月曆控制像的但是一般沒再用的人都沒裝
作者: dengguey    時間: 2015-8-2 09:59

請問可以mail給我嗎?因為我也很嫩耶~
[email protected]
感恩唷~~
作者: winson681219    時間: 2015-12-3 17:26

我也需要這個控制項的檔案,可否分享~但是我的權限不足無法下載 ><"




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)