Excel 即使变量为整数,也需要对象
我不知道为什么在单元格中设置图像计数=数字时会出现运行时错误424(需要对象)。任何帮助都将不胜感激Excel 即使变量为整数,也需要对象,excel,vba,Excel,Vba,我不知道为什么在单元格中设置图像计数=数字时会出现运行时错误424(需要对象)。任何帮助都将不胜感激 Public Function InsertPictureInCell() As Object ImageCount = CInt(sheetImages.Cells(1, 4)) Dim x As Object sheetImages.Paste Set x = sheetImages.Shapes(Selection
Public Function InsertPictureInCell() As Object
ImageCount = CInt(sheetImages.Cells(1, 4))
Dim x As Object
sheetImages.Paste
Set x = sheetImages.Shapes(Selection)
x.top = [C4].top
x.Left = [C4].Left
x.Height = [C4].Height
Selection.ShapeRange.IncrementTop [C3].Height * ImageCount
'sheetImages.Shapes(picname).IncrementTop [C3].Height * ImageCount
sheetImages.Cells(ImageCount + 2, 2) = CStr(x.Name)
'sheetProject.Cells(12, 2) = PictureFileName
End Function
sheetImages
似乎是一个工作表,但我看不出它是否是Set看起来您没有声明sheetImages
(或者实际上没有声明任何变量)
除此之外,sheetImages
没有赋值,因此除非它在其他地方被初始化,否则它在这个函数范围内被初始化为一个空变量,如果你把它当作一个对象来对待,这将引发424错误,因为它不是一个对象
在代码模块的顶部使用
Option Explicit
,以帮助强制执行变量声明(并提醒您有编译错误的打字错误) 打开此模块顶部的选项Explicit
。看起来您没有声明sheetImages
(或者实际上没有声明任何变量)。除此之外,sheetImages
没有赋值,所以它被初始化为一个空变量,如果你把它当作一个对象来对待,就会产生424错误,因为它不是一个对象。sheetImages
看起来是一个空变量,尽管它可能是一个工作表:)我可能很愚蠢。我在主函数中设置了所有这些值,在测试这个函数时,我没有调用设置这些值的函数。它正在工作。Thanks@DaIndian2040我通常会把像这样的物体尽可能地放大。一旦将它们设置为集
,就可以在整个系统中看到它们。