![](/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.