2017-11-24 3 views
0

현재 Excel 문서에서 조건부 서식을 설정하려고합니다. 현재 interop을 사용하여 문서 작업을하고 있습니다.조건부 서식 셀 값

열에 시간/날짜 값이 들어있어 15 분이 넘는 값을 강조 표시하는 조건을 만들려고합니다.

이것은 내가 지금까지 가지고있는 것입니다.

range = xlWorksheet.get_Range("F2", "F" + RC); 
Excel.FormatCondition condition = (Excel.FormatCondition)range.FormatConditions.Add(
     XlFormatConditionType.xlExpression, 
     Type.Missing, 
     "> =0,0104166666666667", 
     Type.Missing, 
     Type.Missing, 
     Type.Missing, 
     Type.Missing, 
     Type.Missing); 

condition.Interior.ColorIndex = 3; // Red 

범위가 올바른 열을 선택합니다. 문제는 올바른 수식을 작성하지 않는다고 생각합니다.

Conditional formatting in excel

이것은 condinonal 형식 내가 Excel에서 그것을 할 때 모습입니다.

What my formatting looks like

이 내 공식은 내 응용 프로그램을 복제 할 때 모습입니다.

ActiveWindow.ScrollColumn = 2 
    ActiveWindow.ScrollColumn = 3 
    Range("F1:F11").Select 
    Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _ 
     Formula1:="=0,0104166666666667" 
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority 
    With Selection.FormatConditions(1).Font 
     .Color = -16383844 
     .TintAndShade = 0 
    End With 
    With Selection.FormatConditions(1).Interior 
     .PatternColorIndex = xlAutomatic 
     .Color = 13551615 
     .TintAndShade = 0 
    End With 
    Selection.FormatConditions(1).StopIfTrue = False 
End Sub 

이것은 내가 어떤 도움을 주시면 감사하겠습니다

C#으로 할 노력하고있어의 매크로와 동일합니다.

+0

제 생각에는 두 번째 매개 변수는 Type.Missing이 아니고''XlFormatConditionOperator.xlGreater'이어야하며 세 번째 매개 변수는 더 큰 부호없이''= 0,0104166666666667''이어야합니다. 레코드 매크로를 시도 했습니까? –

+0

나는 당신이 한 말을 끝냈습니다. 이제 전체 칼럼에 강조 표시되어 있습니다. 아니, 나는 그것을 시도하지 않았습니다. 나는 그것을 빨리 볼 것이다. – Demonic218

답변

0
Excel.FormatCondition condition = (Excel.FormatCondition)range.FormatConditions.Add(Excel.XlFormatConditionType.xlCellValue, Excel.XlFormatConditionOperator.xlGreater, "=0,0104166666666667", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing); 

수식 조건을 xlCellValue로 변경하면 트릭을 수행합니다.