我是VBA世界的新手。我最近遇到了关于application.worksheetfunction.workday的一个愚蠢的问题。
我做了一些研究,所有人都建议使用“application.workday”或“application.worksheetfunction.workday”而不是“worksheet.workday”。但它们都不适合我。
这是我的编码,我想根据在其他文本框中输入的值自动填充用户表单中的文本框。
If xDateValidation(xTran.Text) = True Then
xTran.Text = Format(xTran.Text, "dd/mm/yyyy")
Debug.Print Format(Application.WorksheetFunction.WorkDay(xTran.Text, 2), "dd/mm/yyyy")
xSettlement.Text = Format(Application.WorksheetFunction.WorkDay(xTran.Text, 2), "dd/mm/yyyy")
Else
xTran.Text = ""
End If
我的编码返回以下错误消息。当我将“Application.WorksheetFunction.WorkDay”替换为“WorksheetFunction.WorkDay”时,也会出现此错误消息。 Error Message on WorksheetFunction.WorkDay
如果我将我的代码更改为“Application.WorkDay”,则会出现以下消息。 Error Message on Application.WorkDay
有人可以帮我解决一下吗?如果我的编码或设置有问题吗?
答案 0 :(得分:0)
您可以更改所有代码以将xTran作为日期处理并在其上执行WorkDay函数,或者只是更改代码以将字符串转换回日期作为其一部分,如下所示:
xSettlement.Text = Format(Application.WorksheetFunction.WorkDay(DateValue(xTran.Text), 2), "dd/mm/yyyy")