vba - 如何将 VBA 中的日期格式更改为 dd mm yy?
问题描述
所以,我有一个表格,主要想法是显示两个日期之间完成的案例。用户可以从 datepicker 中选择两个日期。格式是 EU,01/03/2019,问题是在 VBA 中格式是 US,所以它返回错误的值。
我尝试了很多 Format(date, dd.... 等等,但到目前为止没有成功。还尝试了很多来自网络和我的 VBA 书的解决方案。但是我缺少一些东西。现在我被卡住了,不知道如何继续。=)
Private Sub btnCalculate_Click()
On Error GoTo myErr
Dim strsql As String
Dim rs As dao.Recordset
Dim x, i As Integer
Me.btnCalculate.Enabled = False
strsql = "SELECT Activity.DateDone, Activity.Job1 AS a0, Activity.Job2 AS a1, [Job1] Or [Job2] AS a2, Activity.Job3 AS a3, IIf([canceled],1,IIf([moved],2,0)) AS x " & _
"FROM Activity " & _
"WHERE Activity.DateDone Between #" & Replace(Me.txtDate1, ".", "/") & "# And #" & Replace(Me.txtDate2, ".", "/") & "#;"
Set rs = CurrentDb.OpenRecordset(strsql)
For i = 0 To 2
For x = 0 To 3
Me.Controls("txt" & i & x) = 0
Next x
Next i
rs.MoveFirst
Do While Not rs.EOF
For i = 0 To 3
If rs("a" & i) Then Me.Controls("txt" & rs("x") & i) = Me.Controls("txt" & rs("x") & i) + 1
Next i
i = i + 1
rs.MoveNext
Loop
myExit:
Me.btnCalculate.Enabled = True
Exit Sub
myErr:
MsgBox Err.Description
GoTo myExit
End Sub
这段代码给我的结果是所有年份的生产力,而不是日期之间,假设它改变了日期和月份,所以我希望有人看到那里的解决方案,thnx =)
解决方案
使用格式:
"WHERE Activity.DateDone Between #" & Format(Me!txtDate1.Value, "yyyy\/mm\/dd") & "# And #" & Format(Me!txtDate2.Value, "yyyy\/mm\/dd") & "#;"
推荐阅读
- c# - 使用 SQLBulkCopy 插入数据后检索标识列
- ruby - Docker 中的 Ruby Thin 应用程序
- dependency-injection - Angular 5:无法解析组件的所有参数
- spring-boot - 引起:org.springframework.expression.spel.SpelEvaluationException:EL1007E:在 null 上找不到属性或字段“XXX”
- haskell - 无法让这个微不足道的 haskel 程序运行
- docker - Docker/SAM 本地 aws sdk 的请求因 (InvalidSignatureException) 而失败
- css - 离子范围的最小和最大旋钮的离散颜色
- facebook-messenger - 识别 Facebook Messenger Lite 用户
- python - 无法摆脱 BeautifulSoup 引起的导航问题
- android - 当 notifydatasetchanged 在 ui 线程上运行时,Android 'FragmentManager 已经在执行事务'