1 回答

TA貢獻1825條經(jīng)驗 獲得超6個贊
雖然我無法使用現(xiàn)有方法傳入多個變量,但我找到了一種執(zhí)行宏的替代方法,該方法允許我根據(jù)需要傳遞參數(shù)。
public void runTemplate(string templateName, string sourceFile, string destinationFile, string ITPath, string date)
{
string sDate = date;
Microsoft.Office.Interop.Excel.Application ExcelApp = new Microsoft.Office.Interop.Excel.Application();
ExcelApp.DisplayAlerts = false;
object misValue = System.Reflection.Missing.Value;
ExcelApp.Visible = false;
Microsoft.Office.Interop.Excel.Workbook ExcelWorkBook = ExcelApp.Workbooks.Open(sourceFile);
ExcelApp.Run("DoTheImport", sDate);
ExcelWorkBook.SaveCopyAs(destinationFile);
ExcelWorkBook.SaveCopyAs(ITPath);
ExcelWorkBook.Close(false, misValue, misValue);
ExcelApp.Quit();
if (ExcelWorkBook != null) { System.Runtime.InteropServices.Marshal.ReleaseComObject(ExcelWorkBook); }
if (ExcelApp != null) { System.Runtime.InteropServices.Marshal.ReleaseComObject(ExcelApp); }
}
我已經(jīng)刪除了 RunMacro 方法,只是用來ExcelApp.Run("DoTheImport", sDate);執(zhí)行宏。這個方法允許我將參數(shù)傳遞到宏中,可以通過添加'ByVal'參數(shù)傳遞機制在宏中訪問:
Sub DoTheImport(ByVal sDate As String)
- 1 回答
- 0 關(guān)注
- 351 瀏覽
添加回答
舉報