我有几张纸的 .xls 文件。我有几张纸的 .xlsm 文件。我想将 xls.sheet(x) 复制到 xlsm.sheet(y) 中。我尝试了以下代码:
try
XLTo := CreateOleObject('Excel.Application');
XLFrom := CreateOleObject('Excel.Application');
except
ShowMessage('Excel might not be installed');
exit;
end;
XLFrom.Workbooks.Open(filename1,1);
XLTo.Workbooks.Open(filename2,1);
SheetFrom := XLFrom.WorkSheets['Sheet Caption'];
SheetTo := XLScreener.WorkSheets['Sheet Caption'];
SheetFrom.Select;
SheetTo.Select;
直到这里,一切看起来都很好,现在我需要将 SheetFrom 复制到 SheetTo 中,但我对如何去做感到困惑。我试过了:
SheetScreener.Copy(SheetDF);
但我得到一个错误“工作表类的复制方法失败”。SheetTo (xlsm) 是一个常规工作表,其中包含我想用 SheetFrom 的数据覆盖的数据。
我错过了什么?
我阅读了互联网并看到了几种方法,但我不知道我失败是因为它是 .xlsm 还是因为我做错了什么。另外,我读到它必须使用同一个 Excel 应用程序,但我从两个不同的文件中复制,所以我不知道该怎么做。