Private Sub CommandButton1_Click() sheet_name = ActiveSheet.Name END_FOR = Sheets(sheet_name).Range("a5000").End(xlUp).Row For I = 2 To END_FOR Step 1 Set rg = Sheets(sheet_name).Range("A" & I & ":C" & I) Min = Application.Min(rg) Max = Application.Max(rg) For Each rg1 In rg If rg1.Value = 0 Then rg1.FormatConditions.Delete End If If rg1.Value > 0 Then rg1.FormatConditions.Delete rg1.FormatConditions.AddDatabar rg1.FormatConditions(rg1.FormatConditions.Count).ShowValue = True rg1.FormatConditions(rg1.FormatConditions.Count).SetFirstPriority With rg1.FormatConditions(1) .MinPoint.Modify newtype:=xlConditionValueNumber, newValue:=0 'xlConditionValueAutomaticMin .MaxPoint.Modify newtype:=xlConditionValueNumber, newValue:=Max * 1.5 End With With rg1.FormatConditions(1).BarColor .Color = RGB(255, 77, 64) .TintAndShade = 0 End With rg1.FormatConditions(1).BarFillType = xlDataBarFillGradient rg1.FormatConditions(1).Direction = xlContext rg1.FormatConditions(1).NegativeBarFormat.ColorType = xlDataBarColor rg1.FormatConditions(1).BarBorder.Type = xlDataBarBorderSolid rg1.FormatConditions(1).NegativeBarFormat.BorderColorType = _ xlDataBarColor With rg1.FormatConditions(1).BarBorder.Color .Color = RGB(255, 77, 64) .TintAndShade = 0 End With rg1.FormatConditions(1).AxisPosition = xlDataBarAxisAutomatic With rg1.FormatConditions(1).AxisColor .Color = 0 .TintAndShade = 0 End With With rg1.FormatConditions(1).NegativeBarFormat.Color .Color = 255 .TintAndShade = 0 End With With rg1.FormatConditions(1).NegativeBarFormat.BorderColor .Color = 255 .TintAndShade = 0 End With If rg1.Value >= 3 Then rg1.FormatConditions.Delete rg1.FormatConditions.AddDatabar rg1.FormatConditions(rg1.FormatConditions.Count).ShowValue = True rg1.FormatConditions(rg1.FormatConditions.Count).SetFirstPriority With rg1.FormatConditions(1) .MinPoint.Modify newtype:=xlConditionValueNumber, newValue:=0 'xlConditionValueAutomaticMin .MaxPoint.Modify newtype:=xlConditionValueNumber, newValue:=Max * 1.5 End With With rg1.FormatConditions(1).BarColor .Color = RGB(255, 77, 64) .TintAndShade = 0 End With rg1.FormatConditions(1).BarFillType = xlDataBarFillGradient rg1.FormatConditions(1).Direction = xlContext rg1.FormatConditions(1).NegativeBarFormat.ColorType = xlDataBarColor rg1.FormatConditions(1).BarBorder.Type = xlDataBarBorderSolid rg1.FormatConditions(1).NegativeBarFormat.BorderColorType = _ xlDataBarColor With rg1.FormatConditions(1).BarBorder.Color .Color = RGB(255, 77, 64) .TintAndShade = 0 End With rg1.FormatConditions(1).AxisPosition = xlDataBarAxisAutomatic With rg1.FormatConditions(1).AxisColor .Color = 0 .TintAndShade = 0 End With With rg1.FormatConditions(1).NegativeBarFormat.Color .Color = 255 .TintAndShade = 0 End With With rg1.FormatConditions(1).NegativeBarFormat.BorderColor .Color = 255 .TintAndShade = 0 End With End If End If If rg1.Value < 0 Then rg1.FormatConditions.Delete rg1.FormatConditions.AddDatabar rg1.FormatConditions(rg1.FormatConditions.Count).ShowValue = True rg1.FormatConditions(rg1.FormatConditions.Count).SetFirstPriority With rg1.FormatConditions(1) .MinPoint.Modify newtype:=xlConditionValueNumber, newValue:=0 .MaxPoint.Modify newtype:=xlConditionValueNumber, newValue:=Min * 1.5 End With With rg1.FormatConditions(1).BarColor .Color = RGB(54, 191, 54) .TintAndShade = 0 End With rg1.FormatConditions(1).BarFillType = xlDataBarFillGradient rg1.FormatConditions(1).Direction = xlContext rg1.FormatConditions(1).NegativeBarFormat.ColorType = xlDataBarColor rg1.FormatConditions(1).BarBorder.Type = xlDataBarBorderSolid rg1.FormatConditions(1).NegativeBarFormat.BorderColorType = _ xlDataBarColor With rg1.FormatConditions(1).BarBorder.Color .Color = RGB(54, 191, 54) .TintAndShade = 0 End With rg1.FormatConditions(1).AxisPosition = xlDataBarAxisAutomatic With rg1.FormatConditions(1).AxisColor .Color = 0 .TintAndShade = 0 End With With rg1.FormatConditions(1).NegativeBarFormat.Color .Color = RGB(54, 191, 54) .TintAndShade = 0 End With With rg1.FormatConditions(1).NegativeBarFormat.BorderColor .Color = RGB(54, 191, 54) .TintAndShade = 0 End With End If Next Next I End Sub