如何将Excel工作簿插入另一个Excel工作簿范围

时间:2016-09-07 15:17:28

标签: excel-vba object insert vba excel

我需要将一个Excel工作簿插入另一个Excel工作簿,始终位于第二个工作簿的相同范围地址。我见过" Selection.InsertFile"方法,但我怎样才能选择特定范围?

我试过了:

JDT.Sheets("Document Template").Range("E44").Select
Selection.InsertFile Filename:=Path & Fname

但得到:"对象不支持此属性或方法"

1 个答案:

答案 0 :(得分:0)

我意识到我正在插入一个对象,所以我可能不得不使用OLE,我不熟悉它。昨天我发现并修改了我的宏的答案,但忘了回来发布,所以感谢“提醒”发布它以造福他人:

'Inserts the Backup Template file into the JDT file

For Each cell In JDT.Sheets("Document Template").Range("E44")
If IsEmpty(cell) Then
    Dim ol As OLEObject
    Set ol = ActiveSheet.OLEObjects.Add(Filename:=Path & Fname,   
    Link:=False,     DisplayAsIcon:=True, Height:=2)
   With ol
    .Top = cell.Offset(0, 1).Top
    .Left = cell.Offset(0, 1).Left
   End With
  End If
Next

我意识到目标1单元格的For-Next循环是低效的,但它给了我有用的面向单元格的语句,所以已经花了太多时间在这上面,我继续进行下一个挑战。