使用以下代码,理论上,它应该为F到AA列的范围内的每一个设置2种不同颜色的不同颜色的条件。不幸的是,一旦我运行这个Python脚本,excel只获取第一个条件的信息,其中第二个条件是excel但缺少颜色填充。有什么建议吗?
formula1 = "=95"
formula2 = "=100"
wb.ActiveSheet.Columns("F:AA").FormatConditions.Add(win32c.xlCellValue , win32c.xlBetween , formula1,formula2)
#wb.ActiveSheet.Columns("F:AA").FormatConditions(excel.Selection.FormatConditions.Count).SetFirstPriority()
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).Font.Bold = True
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).Interior.Color = 8420607
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).StopIfTrue = False
wb.ActiveSheet.Columns("F:AA").FormatConditions.Add(win32c.xlCellValue , win32c.xlGreaterEqual , formula2)
#wb.ActiveSheet.Columns("F:AA").FormatConditions(excel.Selection.FormatConditions.Count).SetFirstPriority()
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).Font.Bold = True
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).Interior.Color = 10092543
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).StopIfTrue = False
答案 0 :(得分:1)
发现我的错误我需要设置FormatConditions的索引:
formula1 = "=95"
formula2 = "=100"
wb.ActiveSheet.Columns("F:AA").FormatConditions.Add(win32c.xlCellValue , win32c.xlBetween , formula1,formula2)
#wb.ActiveSheet.Columns("F:AA").FormatConditions(excel.Selection.FormatConditions.Count).SetFirstPriority()
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).Font.Bold = True
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).Interior.Color = 8420607
wb.ActiveSheet.Columns("F:AA").FormatConditions(1).StopIfTrue = False
wb.ActiveSheet.Columns("F:AA").FormatConditions.Add(win32c.xlCellValue , win32c.xlGreaterEqual , formula2)
#wb.ActiveSheet.Columns("F:AA").FormatConditions(excel.Selection.FormatConditions.Count).SetFirstPriority()
wb.ActiveSheet.Columns("F:AA").FormatConditions(2).Font.Bold = True
wb.ActiveSheet.Columns("F:AA").FormatConditions(2).Interior.Color = 10092543
wb.ActiveSheet.Columns("F:AA").FormatConditions(2).StopIfTrue = False