私が言ったように、私の winform アプリケーションは VS がインストールされたコンピューターでは正常に動作しますが、他のコンピューターではFileNotFound Exception
. 使った
using Application = Microsoft.Office.Interop.Excel.Application;
私のソース コードで Excel ファイルを生成するために、Excel 関連の関数が呼び出されるとすぐに問題が発生します。しかし、それが正確に何を指しているのかはわかりません。.dll
.exe ファイルと一緒に含める必要がありますか? そして、それは何DLL
ですか?
以下は私のコードの一部です:
private void FileExport(object objTable)
{
StartWaiting();
string[,] table = null;
try
{
table = (string[,])objTable;
}
catch (Exception ex)
{
ShowStatus(ex.Message, StatusType.Warning);
}
if (table == null)
{
return;
}
Application excelApp = new Application
{
DisplayAlerts = false
};
Workbooks workbooks = excelApp.Workbooks;
Workbook workbook = workbooks.Add(XlWBATemplate.xlWBATWorksheet);
Worksheet worksheet = (Worksheet)workbook.Worksheets[1];
worksheet.Name = "TABLE";
for (int i = 0; i < table.GetLength(0); i++)
{
for (int j = 0; j < table.GetLength(1); j++)
{
worksheet.Cells[i + 1, j + 1] = table[i, j];
}
}
Range range = excelApp.Range["A1", "H1"];
range.Merge();
range.Font.Bold = true;
range.Font.Size = 15;
range.RowHeight = 50;
range.EntireRow.AutoFit();
range = excelApp.Range["A2", "H8"];
range.Font.Size = 11;
range = excelApp.Range["A1", "H8"];
range.NumberFormatLocal = "@";
range.RowHeight = 300;
range.ColumnWidth = 50;
range.HorizontalAlignment = XlHAlign.xlHAlignCenter;
range.VerticalAlignment = XlVAlign.xlVAlignCenter;
range.EntireRow.AutoFit();
range.EntireColumn.AutoFit();
worksheet.UsedRange.Borders.LineStyle = 1;
Invoke(new MainThreadInvokerDelegate(SaveAs), new object[] { worksheet, workbook, excelApp }
);
EndWaiting();
}
`