![](/img/trans.png)
[英]Excel VBA code to submit multiple userform data to populate worksheet
[英]Reuse UserForm VBA Code for Multiple Date Pickers in Same Worksheet
我想知道如何重用我必須在將輸入到不同單元格的同一工作表上創建多個日歷日期選擇器的VBA代碼。 我嘗試更改.frm文件的名稱並重新導入以僅更改單元格引用輸出,但是Excel每次都拒絕此操作,並說該名稱已被使用。 我正在密切關注這個例子 。
如果您知道如何隱藏可單擊圖像直到選擇帶有日期的單元格的代碼,則可以加分。
這是到目前為止我在frmCalendar中使用的代碼:
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
On Error Resume Next
Dim cell As Object
For Each cell In Range("C18")
cell.Value = DateClicked
Next cell
Unload Me
End Sub
Private Sub UserForm_Initialize()
If IsDate(ActiveCell.Value) Then
Me.MonthView1.Value = Range("C18")
End If
End Sub
...以及我對Module1的代碼:
Sub Sample()
frmCalendar.Show
End Sub
所以基本上,我有一個日歷可以加載到C18中。 但是,我希望工作表中最多有10個日歷按鈕,它們具有不同的輸出單元格,因此它們都可以具有不同的日期。
這是一個日歷按鈕輸出到C18的示例。 已為其分配了宏“樣品”
那么如何將我的代碼重用於多個日歷按鈕? 如果有代碼可以隱藏日歷按鈕,直到選中該單元格,則獎勵。
您可以在窗體打開時存儲選定的單元格,並在關閉時使用它。
Dim cell As Range 'selected cell when launched
Private Sub cmdClose_Click()
Unload Me
End Sub
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
On Error Resume Next
cell.Value = DateClicked
Unload Me
End Sub
Private Sub UserForm_Initialize()
Set cell = Selection.Cells(1)
If IsDate(cell.Value) Then
Me.MonthView1.Value = cell.Value
End If
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.