У меня есть FormatCondition
, cf1
.Я делаю следующее:
Dim WS As Worksheet
Dim fcs As FormatConditions
Dim cf1 As FormatCondition
Dim b1 As Border
Set WS = ActiveSheet
Set fcs = WS.Cells.FormatConditions
Set cf1 = fcs.item(1)
Set b1 = cf1.Borders.item(xlEdgeBottom)
Dim ls As XlLineStyle
ls = b1.LineStyle
Если я попытаюсь прочитать b1.LineStyle
в окне Immediate или присвоить его переменной (согласно последней строке выше), я получу
Ошибка 1004: «Невозможно получить свойство LineStyle класса Border»
(Это та же строка ошибки в списке наблюдения, но без номера ошибки)
Я получаючто-то похожее для b1.Weight
Это происходит независимо от того, есть ли линия на границе условного формата или нет, что, безусловно, не может быть правильным.Если для этого формата действительно нет стиля линии, я думаю, что LineStyle
должен быть xlLineStyleNone
, а если есть стиль линии, то, несомненно, он должен быть читаемым?
Кто-нибудь знает, что происходит?и как я могу это исправить?
Обратите внимание: я посмотрел на найденные границы, и некоторые другие свойства границ кажутся правильными (то есть Color=0
и ColorIndex
либо -4142
, либо-4105
).ThemeColor
и TintAndShade
равны Null
, а Creator
равно xlCreatorCode
.
Я нашел некоторые ссылки на проблемы в настройке LineStyle и Weight, и те сказали, чтолист был заблокирован.Насколько я знаю, здесь дело обстоит иначе.
ДОПОЛНЕНИЕ: Иногда я получаю другую ошибку при попытке прочитать b1.ThemeColor
.
'Приложение-определенная или объектно-определяемая ошибка '
в списке наблюдения или
Ошибка времени выполнения 5:' Недопустимый вызов процедуры или аргумент '
при чтении в немедленном окне.В других случаях это просто Null
ДОПОЛНИТЕЛЬНО: Для cf1.Interior.InvertIfNegative
я получаю
'Ошибка приложения или объекта'
в списке наблюдения или
Ошибка времени выполнения 1004: «Ошибка приложения или объекта»
при попытке чтения вНепосредственное окно.
Могут быть и другие, которых я еще не нашел.