引用包含文件path的单元格

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

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 

我的问题是我试图让代码引用包含要导入的照片的文件path的单元格。 只有当我直接在代码中input文件path时,它才能正常工作。 有人能告诉我怎么做这个请。

举例来说,我想插入一张照片C:\ Filepath \ Example.jpg,并且我已经input了这个文件path(或者理想情况下只是文件名本身,但现在我已经解决了完整的文件path)到单元格A1中,使用命令button导入使用上面的代码的照片。 我是否必须将A1定义为一个string? 我没有使用Excel一年,唉,我的记忆已经离弃了我:(

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

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

所以,假设你的图片的path是在单元格A1中,那么在你的代码中,你需要replace:

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

有:

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

注意:你不需要括号。