引用包含sub的文件路径的单元格

时间:2014-08-03 22:50:26

标签: excel excel-vba vba

我正在使用以下代码从文件中抓取并调整图片大小,以便我可以将其作为表单的一部分打印出来。

Private Sub CommandButton1_Click()

ActiveSheet.Pictures.Insert ("C:\Filepath\Example.jpg")
With ActiveSheet.Shapes(ActiveSheet.Shapes.Count)

.LockAspectRatio = True 'maintain aspect-ratio
.Top = Range("B2").Top
.Left = Range("B2:H2").Left
.Width = Range("B2:H2").Width 'same width of C3
End With
End Sub

我的问题是我试图让代码引用一个包含要导入的照片的文件路径的单元格。它只在我直接在代码中键入文件路径时才有效。有人可以告诉我如何做到这一点。

比如说,我想插入一张照片C:\ Filepath \ Example.jpg,我已经输入了这个文件路径(或者理想情况下只是文件名本身,但我现在已经满足于完整的文件路径)到单元格A1并希望使用命令按钮使用上面的代码导入照片。我是否必须将A1定义为字符串或其他内容?我没有使用excel一年,而且我的记忆已经离弃了我:(

1 个答案:

答案 0 :(得分:1)

您可以像这样在活动表格中获取单元格A1的内容:

ActiveSheet.Range("A1").Value ' or .Text

因此,假设您的图片的路径位于单元格A1中,那么在您的代码中,您将替换:

ActiveSheet.Pictures.Insert ("C:\Filepath\Example.jpg")

使用:

ActiveSheet.Pictures.Insert ActiveSheet.Range("A1").Value

注意:您不需要括号。