0
C#を使用してプログラムブックに保存しようとしていますが、変更内容は保存されません。現在、Save
メソッドを使用しています。同じ名前の新しいファイルを作成せずに、既存のファイル(SaveAs
)を置き換えずに、ファイルを同じ場所に保存したいからです。ここでC#:編集したExcelブックをプログラムで保存する
は、これは私がメインクラスで実行する方法方法である
public void Test()
{
Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
if (xlApp == null)
{
Console.WriteLine("Excel is not properly installed");
return;
}
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlWorkBook = xlApp.Workbooks.Add(misValue);
this.xlApp.Workbooks.Open(workbookPath);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
int col = 1;
for (int i = 1; i < intVal.Count; i++)
{
xlWorkSheet.Cells[col, i] = "TEST";
}
Console.WriteLine(this.xlApp.ActiveWorkbook.FullName);
this.xlApp.ActiveWorkbook.Save();
//xlWorkBook.SaveAs(workbookPath, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
//this.xlApp.ActiveWorkbook.Close(false, misValue, misValue);
//xlApp.Quit();
Marshal.ReleaseComObject(xlWorkSheet);
Marshal.ReleaseComObject(xlWorkBook);
Marshal.ReleaseComObject(xlApp);
//this.xlApp.ActiveWorkbook.Close(false, misValue, misValue);
}
、私は現在の実験をしています私のコードです。
'xlApp.Application.Visible = true;' save'コールの直後に新しいコード行を追加して、実際に何かを変更しているかどうかを確認してください。 btw、 'intVal.Count'の値は何ですか?この行は 'xlWorkSheet.Cells [col、i] =" TEST ";'実行しますか? –
this.xlApp.ActiveWorkbookはxlWorkBookと同じですか? – EpicKip
あなたは何かを保存しているように見えるので、あなたは編集しています。 – EpicKip