0

Excelファイル内で、セルの塗りつぶしパターンを取得するにはどうすればよいですか?セルに塗りつぶしパターンがあるかどうかに基づいて、データを入力します。以下は私がこれまでに試したことですが、「xlPatternNone」はセルがどのように見えても常に返されます。ありがとう。

Excel.Worksheet workSheet = (Excel.Worksheet)workBook.Sheets[sheetName];
        Excel.Range cell = (Excel.Range)workSheet.Range[column + row.ToString()];
        if ((Excel.XlPattern)((Excel.Style)cell.Style).Interior.Pattern == Excel.XlPattern.xlPatternNone)
            cell.Value = value;

情報:Excel 2007、c#、Microsoft相互運用ライブラリ

4

1 に答える 1

0

これは間違いなく機能します:

var workSheet = (Worksheet) workBook.Sheets["Sheet1"];
var cell = workSheet.Range["A1"];
var style = (XlPattern) cell.Interior.Pattern;

したがって、セルのプロパティを無視してStyle、セルにInterior直接アクセスすることをお勧めします。それがうまくいかない場合は、それcolumn + row.ToString()が間違いなく正しいセルを指していることを確認することをお勧めします。

于 2013-01-03T04:08:09.103 に答える