5

私は問題のほとんどを解決しました。ワークシートをループして、テキスト ファイルを作成して書き込むことができます。私が抱えている唯一の問題は、実際にすべてのシートからテキストまたは値を抽出することです。以下は私が持っているコードですが、ワークシートごとにオブジェクトをスローするだけで、実際の値の代わりにそれらの単語をテキスト ファイルに書き込みます。

System.Object[,]
System.Object[,]

他に何が欠けていますか?私は初心者のプログラマーであることを指摘しておく必要があります。

これが私がこれまでに持っているコードです:

using (StreamWriter sw = File.CreateText("ExtractedText.txt"))
{
    Excel.Application xlApp = new Excel.Application();
    Excel.Workbook thisWkBook = xlApp.Workbooks.Open(thisFile);

    foreach (Excel.Worksheet sheet in thisWkBook.Worksheets)
    {
        sw.WriteLine(sheet.UsedRange.Value);
    }
}

何か案は?ありがとう!

4

2 に答える 2

3

このようなもので、テストされていません。http://dontbreakthebuild.com/2011/01/30/excel-and-c-interop-with-net-4-how-to-read-data-from-excel/を参照してください。

using (StreamWriter sw = File.CreateText("ExtractedText.txt"))
{
    var excelApp = new Excel.Application();
    var workBook = excelApp.Workbooks.Open(thisFile);

    foreach (var sheet in workBook.Worksheets)
    {
      foreach (var row in sheet.UsedRange.Rows)
      {
        foreach (var cell in row.Columns)
        {
          sw.Write(cell.Value + " ");
        } 
        sw.WriteLine();
      }
    }
}
于 2013-01-24T17:02:11.777 に答える
1

たとえば、シートからデータを取得する必要があります。

sw.WriteLine(sheet.Range["C5"].Value.ToString());
于 2013-01-24T16:55:41.633 に答える