可调macros延迟(通过在单元格中input时间)
Anwser:将单元格格式从D3更改为文本而不是常规或时间
我试图延迟一段时间的macros。
我希望能够调整我的Excel工作簿中的延迟量,而无需打开一个macros。
我尝试了下面的代码,但得到:
运行时错误13(types不匹配)。
这是可以解决的吗?
Private Sub CommandButton1_Click() Dim i As Integer Dim Response As Integer t = Range("D3") Application.Wait (Now + TimeValue("t"))
– 格式:第一次尝试的时间(0:00:00),然后改回一般。
– 单元格“D3”中的数据:0:00:00,0:00:01,0:30:00或更高值。
- 发生错误@ Application.Wait …. ect行
时间格式=一般 – > t原来是0,00000453 * E-5当“D3”是0:00:01
时间格式=时间 – > t结果是空的(使用37:23:23时间格式)
事实上,这是非常简单的错误, 只要将TimeValue("t")
更改为TimeValue(t)
这是为什么?
您需要在TimeValue()
函数中input格式化为文本的时间值,您可以将该值正确地存入variablest
。
问题是当你重复使用这个,因为"t"
是只包含t
字母而不是variablest
的string!
Private Sub CommandButton1_Click() Dim i As Integer Dim Response As Integer t = CStr(Range("D3")) Application.Wait (Now + TimeValue(t))