2

我一直在根据每个查询的结果将图像添加到 Excel 工作表中。我尝试了一个返回 1000 个结果的查询(每个结果都在一个新行中),但只显示了 405 个相关图片。一张纸上有最大数量的图片还是我做错了什么?

Sub insertLocalPicture(localPicFileDir As String, PictureFileName As String)
Dim pic As Shape
Dim xTop As Integer
xTop = ActiveCell.Top + 1
Set pic = ActiveSheet.Shapes.AddPicture(localPicFileDir + PictureFileName + ".jpg", msoFalse, msoTrue, 0, 0, 100, 100)

With pic
    .Top = xTop
    .Left = 0
    .Width = 107
    .Height = 80
End With
Set pic = Nothing
End Sub
4

1 回答 1

1

根据用户1466660,

发生在单元格32,768的错误已通过重铸修复

Dim xTop As Integer 

作为

Dim xTop As Long

正如 Scott Holtzman 所指出的,整数变量只能保存 -32,768 和 32,768 之间的值。出于这个原因,Jimmy Pena 建议强制转换变量,As Long除非宏设计者知道它们应该以不同的方式使用。

于 2012-07-27T17:47:58.763 回答