首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在VBA的Workday函数中指定变量作为假日的参数

在VBA的Workday函数中指定变量作为假日的参数
EN

Stack Overflow用户
提问于 2015-09-10 12:19:30
回答 1查看 603关注 0票数 0

我现在有这个代码:

代码语言:javascript
复制
            Dim holrange1, holrange2 As Range
            Dim holrange As Variant
            Set holrange1 = Sheets("Resource Leave Plan").Range(holday & "4:" & holday & "103")
            Set holrange2 = Sheets("Holidays").Range("B3:B202")
            Set holrange = Nothing
            Set holrange = Range(holrange1.Address & "," & holrange2.Address)
            Worksheets("Schedule").Unprotect Password:="dfss"
            Worksheets("Schedule").Cells(Target.Row, 7).Value = WorksheetFunction.WorkDay(strdt, noofdays, holrange)

其中strdt和noofday是整数,并且已经定义。我收到错误消息“Unable to get the WorkDay property of WorksheetFunction class”。

我想这是因为我在两个不同的工作表上设置了变量holrange的范围。

我怎么才能让它工作呢?

EN

回答 1

Stack Overflow用户

发布于 2015-09-11 03:28:41

我在附近找到了这个工作。由于可以使用最后一个参数作为数组,因此我构造了一个数组,其中包含两个区域中的单元格值。

我确实尝试过使用Union函数将两个范围连接成一个范围,但是我不能正常工作(因为我不熟悉使用Union)。

代码语言:javascript
复制
Dim r1, r2 As Range
Dim rCell As Range
Dim x As Integer

Set r1 = Sheets("Sheet1").Range("A1:A1")
Set r2 = Sheets("Sheet2").Range("A1:A1")  

ReDim r(r1.Count + r2.Count)
x = 0

For Each rCell In r1.Cells
    r(x) = rCell.Value
    x = x + 1
Next rCell

For Each rCell In r2.Cells
    r(x) = rCell.Value
    x = x + 1
Next rCell

MsgBox WorksheetFunction.WorkDay(Now(), 1, r)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32493080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档