gpt4 book ai didi

excel-2007 - 在 VBA 中设置范围时出现“对象变量或未设置 block 变量”错误

转载 作者:行者123 更新时间:2023-12-03 16:38:20 33 4
gpt4 key购买 nike

我有一个创建数据透视表的函数,但是当我尝试设置将要合并的范围并向其添加标题时出现错误。

在下面的代码中,pivot_title_range 是一个 'String' 变量,在调用函数时是可选的。 title_range 是一个“范围”变量。设置范围的两行(无论用户是否声明 pivot_title_range)都会导致相同的错误。

If pivot_title_range = "" Then
title_range = ActiveSheet.Range("B3:E4")
Else
title_range = ActiveSheet.Range(pivot_title_range)
End If

这是我得到的错误 -

Run-time error '91':
Object variable or With block variable not set

如果需要,这里有一个完整功能的 Pastebin - http://pastebin.com/L711jayc .违规代码从第 160 行开始。

有人能告诉我我做错了什么吗?谢谢。

最佳答案

你需要使用

If pivot_title_range = "" Then
Set title_range = ActiveSheet.Range("B3:E4")
Else
set title_range = ActiveSheet.Range(pivot_title_range)
End If

因为您将 title_range 定义为范围 - 这是一个对象 ;)

关于excel-2007 - 在 VBA 中设置范围时出现“对象变量或未设置 block 变量”错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13016776/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com