0

VS 2010 WinForms アプリケーションで C# を使用して、MS Excel シートからデータテーブルにデータをエクスポートしようとしています。

テキストの色が黒、緑、赤のように、テキストの前色に基づいて Excel でエクスポートされないようにいくつかの行を削除したいと考えています。テキストの色が緑色の場合、その行をエクスポートから除外したいと考えています。

どうすればこれを達成できますか?

4

1 に答える 1

0

エクスポートする前に、Excel で行を反復処理し、テキストの色を確認する必要があります。まずエクセルファイルを開きます。

Microsoft.Office.Interop.Excel.Application App = new Microsoft.Office.Interop.Excel.Application();
App.Visible = false;
App.WindowState = Excel.XlWindowState.xlMinimized;
App.ShowStartupDialog = false;

Excel.Workbook WorkBook = App.Workbooks.Open(File, 0, false, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);

最初に使用中の領域を取得することをお勧めします。

Excel.Range Area = worksheet.get_Range("A1", worksheet.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell, Type.Missing));

繰り返す:

for (int R = 1; R <= Area.Rows.Count; R++)
{
Excel.Range Row = ((Excel.Range)Area[R, "A"]);
if(Row.Font.Color != Excel.XlRgbColor.rgbGreen)
{
   // Get data from the cells and include into a
   // collection of items that represents data to be exported.
}
}
于 2012-08-02T10:18:23.657 に答える