我正在设置一个用户表单和工作表来跟踪啤酒批处理。用户表单中生成的日期格式正确(dd/mm/yyyy),但输入工作表时为 mm/dd/yyy。
已尝试将 SUBMIT 上使用的代码更改为表单:
ActiveCell.Offset(0, 3).Value = Format(Now(), "dd/mm/yyyy")
ActiveCell.Offset(0, 3).Value = Format(Me.txtBrewDate.Value, "dd/mm/yyyy")
还尝试在表单上的 txtBrewDate 更新代码之前放置:
Private Sub txtBrewDate_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
Me.txtBrewDate = Format(CDate(Me.txtBrewDate), "dd/mm/yyyy")
End Sub
已尝试提交此:
ActiveCell.Offset(0, 3).Value = Format(Now(), "dd/mm/yyyy")
ActiveCell.Offset(0, 3).Value = Format(Me.txtBrewDate.Value, "dd/mm/yyyy")
最初看起来日期是作为文本进入工作表的。然后我将 cdate 放入更新前 - 现在看起来像一个日期。但是格式仍然不正确(今天是 8 月 5 日 - 但它会在 2019 年 8 月 5 日出现)
最佳答案
所以首先你需要改变单元格格式。
使用:
ActiveCell.Offset(0, 3).NumberFormat = "dd/mm/yyyy"
之后,您可以将您的值(value)投入其中。
ActiveCell.Offset(0, 3).Value = Format(Me.txtBrewDate.Value, "dd/mm/yyyy")
'Or
ActiveCell.Offset(0, 3).Value = Me.txtBrewDate.Value
关于excel - 如何在 VBA 用户窗体中修复日期 - 日期以不正确的格式输入工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57352016/