Excelファイルを作成して連続して書きたいと思います。私は以下のコードを書かなければならないが、私が連続的に取得するすべてのデータを追加したい。Excelファイルに連続的に書き込むにはどうすればよいですか?
CODE:このコードで
Excel.Application xlApp ;
Excel.Workbook xlWorkBook ;
Excel.Worksheet xlWorkSheet ;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Add(misValue);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
xlWorkSheet.Cells[1, 1] = "http://csharp.net-informations.com";
xlWorkBook.SaveAs("csharp-Excel.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
xlWorkBook.Close(true, misValue, misValue);
//xlApp.Quit();
releaseObject(xlWorkSheet);
releaseObject(xlWorkBook);
releaseObject(xlApp);
MessageBox.Show("Excel file created , you can find the file c:\\csharp-Excel.xls");
}
private void releaseObject(object obj)
{
try
{
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
obj = null;
}
catch (Exception ex)
{
obj = null;
MessageBox.Show("Exception Occured while releasing object " + ex.ToString());
}
finally
{
GC.Collect();
}
}
、アプリケーションを起動し、それは常にあなたがそれを交換したいとプログラムがデータを取得するとき、それは常にアプリケーションを閉じて行うことを言います。
これは私が持っていたい機能です:ここでは、このようなファイルを追加したいと思います。この種の問題のための解決策になることができますどのような
StreamWriter fileWriter = new StreamWriter("test.txt", true);
fileWriter.WriteLine(jointHead.Position.X);
fileWriter.Close();
? は、このコードINSEADファイルの使用を追加するには...
私は、CSVとしてExcelと互換性のある形式であるテキストファイルを書き込み、継続的にそれに追加検討するブレース。あなたはおそらくそれをはるかに迅速かつ簡単に見つけるでしょう。 –
btw - 私はあなたのMessageBox.Show( "Exception ...")がデバッグ目的のために多量であることを知っています。あなたの最終的なアプリでその場所に残さないようにして、代わりに重要度の高い列挙型を使用して、ある種のログ機能を考えてください。それ以外の理由で、私は他のスケーラブルな記憶媒体ではなく、なぜExcelファイルが使われているのか聞いてみたいと思います。あなたは結局、dbに照会して、必要なところで内容のExcelファイルを提示することができます。答えとして追加されました –
私は60列と400行のデータを持っているので、それで私はExcelを使いたいのです。私はテーブル、行、列を作成したくありませんでした...まずはtxtファイルを試しました。それは完全にそれを追加します。しかし、あなたが多くのデータを持っているなら、それは乱雑に見えます。それらの間でいくつかのデータを選択することは困難です。だから私はexcel.Itを使用したかったのですが、すでに列と行があります。私はテーブルを作成する必要はありませんでした。この目的のために何か解決策がありますか? – Samet