我正在尝试从CSV文件中打开的工作表中复制数据,作为现有Excel模板中的新工作表 . 我已尝试复制到现有的空工作表,以及将源工作表复制为目标工作簿中的新工作表 . 所有这些方法都抛出了各种错误 . 实际允许代码完成的唯一方法是copy-paste-special命令 . 然而,它导致细胞被填充二进制而不是值,并且许多细胞被填充灰色外观 .
以下是我一直努力工作的代码:
'=================================================
'Add Data
'=================================================
Dim AppExcell As Object
Dim wb As Object
Dim xFile As String
Dim main As Workbook
Set AppExcel = CreateObject("Excel.Application")
AppExcel.Visible = False
Set wb = AppExcel.Workbooks.Add("C:\Fridge_Automation\Lab Report.xltm")
Set main = ActiveWorkbook
xFile = Application.GetOpenFilename("All CSV Files (*.csv),*.csv", , "Select CSV File")
Set src = Workbooks.Open(xFile)
src.Worksheets(1).Copy Before:=wb.Worksheets("11Mic Avg - Raw Data")
wb.Worksheets(2).Name = "Raw Data"
src.Close
我通过单击我添加到工作表中的按钮在Excel 2013中运行此代码 .
1 回答
以下代码适用于我,从工作簿中运行 .
***
标记我改变的事情 .由于this question中列出的问题,我使用自定义工作表名称来查找新工作表 .
从Excel中运行时,无需创建
AppExcel
对象 . 相反,您可以直接引用Application
.