Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/макрос убивает условное форматирование, как подружить? - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос убивает условное форматирование, как подружить? (Макросы/Sub)
макрос убивает условное форматирование, как подружить?
micholap_denis Дата: Вторник, 15.09.2020, 09:47 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 105
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
вот макрос выделения строки
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim WorkRange As Range, CrossRange As Range
Set WorkRange = Range("Таблица1")
If Target.Count > 1 Then Exit Sub

Application.ScreenUpdating = False
If Not Intersect(Target, WorkRange) Is Nothing Then
Set CrossRange = Intersect(WorkRange, Target.EntireRow) 'это окрас строк+столбец Set CrossRange = Intersect(WorkRange, Union(Target.EntireRow, Target.EntireColumn))
WorkRange.FormatConditions.Delete 'эта строка делает так, чтобы выделение не оставалось
CrossRange.FormatConditions.Add Type:=xlExpression, Formula1:="=1"
CrossRange.FormatConditions(1).Interior.ColorIndex = 17
Target.FormatConditions.Delete 'эта строка убирает заливку в активной ЯЧЕЙКЕ (она становится белой)
End If
End Sub
[vba][code]
[/vba]
[/code][/vba]
WorkRange.FormatConditions.Delete удаляет форматирование в столбце А
К сообщению приложен файл: 4723131.xlsb(15.4 Kb)


Сообщение отредактировал micholap_denis - Вторник, 15.09.2020, 09:47
 
Ответить
Сообщениевот макрос выделения строки
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim WorkRange As Range, CrossRange As Range
Set WorkRange = Range("Таблица1")
If Target.Count > 1 Then Exit Sub

Application.ScreenUpdating = False
If Not Intersect(Target, WorkRange) Is Nothing Then
Set CrossRange = Intersect(WorkRange, Target.EntireRow) 'это окрас строк+столбец Set CrossRange = Intersect(WorkRange, Union(Target.EntireRow, Target.EntireColumn))
WorkRange.FormatConditions.Delete 'эта строка делает так, чтобы выделение не оставалось
CrossRange.FormatConditions.Add Type:=xlExpression, Formula1:="=1"
CrossRange.FormatConditions(1).Interior.ColorIndex = 17
Target.FormatConditions.Delete 'эта строка убирает заливку в активной ЯЧЕЙКЕ (она становится белой)
End If
End Sub
[vba][code]
[/vba]
[/code][/vba]
WorkRange.FormatConditions.Delete удаляет форматирование в столбце А

Автор - micholap_denis
Дата добавления - 15.09.2020 в 09:47
micholap_denis Дата: Вторник, 15.09.2020, 20:44 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 105
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
micholap_denis,
или как вариант в код прописать столбцы на которые удаление форматирования не распостроняется
 
Ответить
Сообщениеmicholap_denis,
или как вариант в код прописать столбцы на которые удаление форматирования не распостроняется

Автор - micholap_denis
Дата добавления - 15.09.2020 в 20:44
Pelena Дата: Среда, 16.09.2020, 08:34 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16817
Репутация: 3623 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
micholap_denis, если речь о координатном выделении, то, может, поискать другие варианты кода, например, здесь
И в той же теме чуть ниже вариант удаления не всего УФ, а выборочно того, что относится к координатному выделению


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
Сообщениеmicholap_denis, если речь о координатном выделении, то, может, поискать другие варианты кода, например, здесь
И в той же теме чуть ниже вариант удаления не всего УФ, а выборочно того, что относится к координатному выделению

Автор - Pelena
Дата добавления - 16.09.2020 в 08:34
micholap_denis Дата: Среда, 16.09.2020, 10:31 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 105
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Pelena,
спасибо....только не могу разобраться куда в код и вместо чего подставить...
 
Ответить
СообщениеPelena,
спасибо....только не могу разобраться куда в код и вместо чего подставить...

Автор - micholap_denis
Дата добавления - 16.09.2020 в 10:31
Pelena Дата: Среда, 16.09.2020, 10:57 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16817
Репутация: 3623 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
Ну, видимо, вместо [vba]
Код
Target.FormatConditions.Delete
[/vba]
надо вставить
[vba]
Код
    For iFC = Target.FormatConditions.Count To 1 Step -1
    With Target.FormatConditions(iFC)
        If .Type = 2 Then If .Formula1 = "=1" Then .Delete
    End With
    Next
[/vba]
(Не проверяла)


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеНу, видимо, вместо [vba]
Код
Target.FormatConditions.Delete
[/vba]
надо вставить
[vba]
Код
    For iFC = Target.FormatConditions.Count To 1 Step -1
    With Target.FormatConditions(iFC)
        If .Type = 2 Then If .Formula1 = "=1" Then .Delete
    End With
    Next
[/vba]
(Не проверяла)

Автор - Pelena
Дата добавления - 16.09.2020 в 10:57
micholap_denis Дата: Среда, 16.09.2020, 11:16 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 105
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Pelena, спасибо ща проверю отпишусь
 
Ответить
СообщениеPelena, спасибо ща проверю отпишусь

Автор - micholap_denis
Дата добавления - 16.09.2020 в 11:16
micholap_denis Дата: Среда, 16.09.2020, 11:29 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 105
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Pelena, не пашет(
К сообщению приложен файл: 1660543.xlsb(15.9 Kb)
 
Ответить
СообщениеPelena, не пашет(

Автор - micholap_denis
Дата добавления - 16.09.2020 в 11:29
Pelena Дата: Среда, 16.09.2020, 21:58 | Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16817
Репутация: 3623 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
А так?
К сообщению приложен файл: 7305702.xlsb(18.0 Kb)


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеА так?

Автор - Pelena
Дата добавления - 16.09.2020 в 21:58
micholap_denis Дата: Среда, 16.09.2020, 22:01 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 105
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
шикарно.... Pelena, работает
 
Ответить
Сообщениешикарно.... Pelena, работает

Автор - micholap_denis
Дата добавления - 16.09.2020 в 22:01
Мир MS Excel » Вопросы и решения » Вопросы по VBA » макрос убивает условное форматирование, как подружить? (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

jooble Яндекс цитирования
© 2010-2020 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!