首页 > 解决方案 > VBA 缺少 Worksheet.Range 作为值并不断获取未设置对象变量(错误 91)

问题描述

Public Sub InputData(var)
Dim WB As Workbook
Dim FilePath As String
FilePath = "C:\Users\Jordan.Jennings\Desktop\Programs{}\Test.xlsx"
WB = Workbooks.Open(FilePath)
ibox = 1
E = 8.5
N = 10
W = 7.5
S = 9.75
Do Until ibox = var
    Set I = ActivePage.DrawRectangle(E, N, W, S)
    I.Text = WB.Worksheets("Sheet1").Range("A1").Value
    N = N - 0.25
    S = S - 0.25
    ibox = ibox + 1
Loop
End Sub

好的,我已经尝试了很多东西-我想做的是在 visio 中从 excel 文档中绘制一堆带有文本的框,当我执行工作表(“Sheet1”)时,.Range 没有出现一个选项,我抛出错误 91 请帮助我在这里不知所措

标签: excelvbavisio

解决方案


WB是一个Workbook对象引用。

WB = Workbooks.Open(FilePath)

您不能像这样分配对象引用。

Set WB = Workbooks.Open(FilePath)

那应该解决它。


推荐阅读