2015-10-09 80 views
2

我試圖使用EPPLUS將條件格式應用於Excel,以便如果值爲負值,則單元格範圍將填充紅色。編碼格式excel epplus if(cell.value <0)填充紅色

我試試這個代碼,如果單元格的值越大,未來單元格的值,該單元格填充紅色

ExcelAddress _formatRangeAddress = new ExcelAddress("J2:J"+(listaMargenes.Count+2)); 
    string _statement="IF(OFFSET(J3,0,-1)-J3>0,1,0)"; 
    var _cond4 = hoja.ConditionalFormatting.AddExpression(_formatRangeAddress); 
    _cond4.Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; 
    _cond4.Style.Fill.BackgroundColor.Color = System.Drawing.Color.Red; 
    _cond4.Formula = _statement; 

這工作得很好,但如果我改變:

IF(OFFSET(J3,0,-1)-J3>0,1,0) 

本:

if(J3<0) 

沒有作品,在打開的Excel時說,有損壞的數據。

任何想法如何寫正確的方式把紅色的細胞負值?

回答

1

在Excel中IF聲明不允許可選value_if_true一部分了(我相信,在老版本的它做):MS IF Documentation

所以將其更改爲類似:

string _statement = "if(B3<0, 1)"; 
+0

謝謝,現在工作完善 – Ion