我习惯在 Excel 2010(Windows 7 64 位)上使用以下代码,效果很好。
Sub code_on_2010()
Dim i As Long
i = InputBox("input integer number")
ReDim a(i) As Variant
'....
End Sub
Run Code Online (Sandbox Code Playgroud)
最近,我将电脑升级到 Windows 10(64 位)和 Excel 2016(64 位)。由于我知道 64 位长整数类型的新类型名称,我重写代码如下:
Sub code_on_2016_with_LongPtr()
Dim i As LongPtr
i = InputBox("input integer number")
ReDim a(i) As Variant
'...
End Sub
Run Code Online (Sandbox Code Playgroud)
它返回一个Type mismatch (Error 13)错误。
即使我用 LongLong 替换 LongPtr (如下所示),它Type mismatch也会返回错误。
Sub code_on_2016_with_LongLong()
Dim i As LongLong
i = InputBox("input integer number")
ReDim a(i) As Variant …Run Code Online (Sandbox Code Playgroud) 我一直在尝试向sql VBA中的WHERE子句添加其他过滤条件.上一个select语句工作正常,但我似乎无法使更新的WHERE子句起作用.这就是我所拥有的:
WHERE tblretirements.Applicationcancelled = 'No'
AND tblretirements.FirstPayDate IS NULL
OR tblretiremetns.FirstPayDate BETWEEN 'now()' & 'Beginning of Prior Fiscal Year'
Run Code Online (Sandbox Code Playgroud)
我对这个BETWEEN陈述并不熟悉,并且我很肯定我搞砸了这个.我需要让代码动态地引用今天的日期和上一个会计年度的开始,现在是6/1/2017.有人可以帮忙吗?谢谢.