В основном я пытаюсь сделать это:
https://imgur.com/a/OEhsWaS
(три картинки)
Итак, я записал макрос (с намерением очистить его позже!). Я хочу, чтобы панель данных ячейки по существу была размером с процент, который находится в ячейке.
Я получаю это как запись.
Range("H439:H445").Select
Selection.FormatConditions.AddDatabar
Selection.FormatConditions(Selection.FormatConditions.Count).ShowValue = True
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1)
.MinPoint.Modify newtype:=xlConditionValueLowestValue
.MaxPoint.Modify newtype:=xlConditionValueHighestValue
End With
With Selection.FormatConditions(1).BarColor
.Color = 49407
.TintAndShade = 0
End With
Selection.FormatConditions(1).BarFillType = xlDataBarFillSolid
Selection.FormatConditions(1).Direction = xlContext
Selection.FormatConditions(1).NegativeBarFormat.ColorType = xlDataBarColor
Selection.FormatConditions(1).BarBorder.Type = xlDataBarBorderNone
With Selection.FormatConditions(1).NegativeBarFormat.Color
.Color = 255
.TintAndShade = 0
End With
Я получил этот код несколько раз из записи, но после поиска ответов я понял, что это ошибка Excel или проблема / ошибка. Однако я чувствую, что моя проблема - это часть xlConditionValueHighestValue (и самая низкая). Другая часть записанного кода показывает xlAutomaticMax / xlAutomaticMin на своем месте.
Когда я запускаю одну часть кода (опубликованную часть), он не заполняется в зависимости от введенного макс / мин значения (1, 0). Вместо этого он берет наибольшее число (в данном случае 33%) и заполняет эту ячейку полностью.
Когда я изменяю эту часть на:
With Selection.FormatConditions(1)
.MinPoint.Modify newtype:=0
.MaxPoint.Modify newtype:=1
End With
Я получаю
«Ошибка времени выполнения« 1004 »:
Ошибка приложения или объекта »
что подчеркивает
.MaxPoint.Modify newtype:=1
строка, поэтому ей нравится строка 0. Однако я не знаю правильной процедуры кодирования, чтобы заставить ее делать то, что я хочу, и я не нашел ничего на форумах, где используется строка формулы maxpoint или minpoint, иначе я бы попытался скопировать их обозначения. Кто-нибудь знает, как помочь?