在我的文本框中添加日期选择器

时间:2018-02-07 20:24:08

标签: excel vba

我查看了其他帖子,我无法找出用户表单的日期选择器。任何想法或帮助将不胜感激。输入日期框当前只是一个文本框,以dd-mmm-yy格式写入日期。正如我一直在测试表单一样,很难像这样输入日期。由于我为其他人构建了表单,我希望它更容易一些。谢谢

Private Sub UserForm_Initialize()

'Empty TextBox
DateTextBox.Value = ""
CmbBox_ACFT.Value = ""
JCNTextBox.Value = ""
TEMSTextBox.Value = ""
DMGTextBox.Value = ""
MXNTextBox.Value = ""
CmbBox_POS.Clear
CmbBox_Shift.Clear

With CmbBox_Shift
CmbBox_Shift.AddItem "DAYS"
CmbBox_Shift.AddItem "SWINGS"
CmbBox_Shift.AddItem "MIDS"
End With

With CmbBox_POS
CmbBox_POS.AddItem "1"
CmbBox_POS.AddItem "2"
CmbBox_POS.AddItem "APU"
End With

With CmbBox_ACFT
CmbBox_ACFT.AddItem "123"
CmbBox_ACFT.AddItem "456"
CmbBox_ACFT.AddItem "789"
CmbBox_ACFT.AddItem "012"
CmbBox_ACFT.AddItem "782"
End With

Option_Yes.Value = False
DateTextBox.SetFocus

End Sub
Sub OKButton_Click()

Dim emptyRow As Long

'Make Sheet1 active
Sheet1.Activate

'Determine emptyRow
emptyRow = WorksheetFunction.CountA(Range("A:A")) + 1

'Transfer information
Cells(emptyRow, 1).Value = DateTextBox.Value 'need a date picker to help minimize errors. In dd-mmm-yy format.  
Cells(emptyRow, 2).Value = CmbBox_ACFT.Value
Cells(emptyRow, 3).Value = CmbBox_Shift.Value
Cells(emptyRow, 4).Value = CmbBox_POS.Value
Cells(emptyRow, 5).Value = MXNTextBox.Value
Cells(emptyRow, 6).Value = JCNTextBox.Value
Cells(emptyRow, 7).Value = TEMSTextBox.Value
'Cells(emptyRow, 8).Value = DinnerComboBox.Value
Cells(emptyRow, 9).Value = DMGTextBox.Value

If Option_Yes.Value = True Then
Cells(emptyRow, 8).Value = "Yes"
Else
Cells(emptyRow, 8).Value = "No"
End If

 With ActiveSheet.UsedRange.Borders
    .LineStyle = xlContinuous
    .Weight = xlThin
    .ColorIndex = xlAutomatic
End With

End Sub

1 个答案:

答案 0 :(得分:0)

完全有可能不安装日期选择器控件。我找到了一个相关的帖子,解释了如何确保它的安装(“月视图”)。你必须安装它。

  1. 首先关闭Excel。
  2. http://support.microsoft.com/kb/297381下载MSCOMCT2.cab并解压缩zip文件中的两个文件。
  3. 右键单击.inf文件,然后单击“安装”。
  4. 接下来,打开Windows资源管理器,找到目录C:\ Windows \ System32。
  5. 在C:\ Windows \ System32中找到解压缩的.ocx文件,并将其移至C:\ Windows \ sysWOW64。
  6. 点击开始>搜索> “cmd.exe”,右键单击找到的项目,然后单击“以管理员身份运行”
  7. 在命令提示符下键入“regsvr32 C:\ Windows \ sysWOW64 \ MSCOMCT2.ocx”并按Enter键
  8. 打开Excel并启动VB编辑器
  9. 点击工具>参考并选择“Microsoft Windows Common Controls 2-6.0(sp6)
  10. 在VB项目中选择任何用户窗体,单击工具>其他控制
  11. 选择“Microsoft MOnthview Control 6.0(SP6)
  12. 在VBA用户表单中使用“DatePicker”控件。
  13. 来自How to Add Date Picker To VBA UserForm