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

Вход

Регистрация

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

 

= Мир MS Excel/очистить заливку всех ячеек при повторном выполнении макроса - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
очистить заливку всех ячеек при повторном выполнении макроса
artika2000 Дата: Четверг, 22.10.2026, 20:58 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 69
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый вечер.
При выполнении макроса от одна, или две, или три, или четыре ячейки окрашиваются в цвет согласно номеру пантона. При новом выполнении макроса , если были окрашены в предыдущий раз четыре ячейки, а в этот раз нужно только две, то третья и четвертая ячейка сохраняют окрас как после выполнения предыдущего макроса и сохраняют ненужную заливку цветом.
Прошу подсказать, какой командой можно очистить заливку всех ячеек при каждом повторном выполнении макроса .
Заранее спасибо.
На прикрепленной фото видно, что 2 первых цвета вызваны выполнением макроса, а коричневый цвет остался после выполнения предыдущего, вот и вопрос как перед выполнением макроса очищать от предыдущих цветов ячейки

Прошу Вашей помощи
К сообщению приложен файл: 4194885.jpg (15.5 Kb)
 
Ответить
СообщениеДобрый вечер.
При выполнении макроса от одна, или две, или три, или четыре ячейки окрашиваются в цвет согласно номеру пантона. При новом выполнении макроса , если были окрашены в предыдущий раз четыре ячейки, а в этот раз нужно только две, то третья и четвертая ячейка сохраняют окрас как после выполнения предыдущего макроса и сохраняют ненужную заливку цветом.
Прошу подсказать, какой командой можно очистить заливку всех ячеек при каждом повторном выполнении макроса .
Заранее спасибо.
На прикрепленной фото видно, что 2 первых цвета вызваны выполнением макроса, а коричневый цвет остался после выполнения предыдущего, вот и вопрос как перед выполнением макроса очищать от предыдущих цветов ячейки

Прошу Вашей помощи

Автор - artika2000
Дата добавления - 22.10.2026 в 20:58
artika2000 Дата: Четверг, 22.10.2026, 21:05 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 69
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Мой макрос такой:

[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$12" Then
If Target = Empty Then Exit Sub
Range("A14:B20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
If Target.Address = "$D$12" Then
If Target = Empty Then Exit Sub
Range("D14:E20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
If Target.Address = "$G$12" Then
If Target = Empty Then Exit Sub
Range("G14:H20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
If Target.Address = "$J$12" Then
If Target = Empty Then Exit Sub
Range("J14:K20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
End Sub
[/vba]
 
Ответить
СообщениеМой макрос такой:

[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$12" Then
If Target = Empty Then Exit Sub
Range("A14:B20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
If Target.Address = "$D$12" Then
If Target = Empty Then Exit Sub
Range("D14:E20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
If Target.Address = "$G$12" Then
If Target = Empty Then Exit Sub
Range("G14:H20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
If Target.Address = "$J$12" Then
If Target = Empty Then Exit Sub
Range("J14:K20").ClearContents
With Sheets("Pantone")
Set fc = .Range("A:A").Find(What:=Target.Value, LookAt:=xlWhole)
If Not fc Is Nothing Then
Target.Interior.Color = fc.Interior.Color
For ic = 5 To 19
If .Cells(fc.Row, ic) > 0 Then
Target.Offset(2 + x, 0).Value = .Cells(1, ic).Value
Target.Offset(2 + x, 1).Value = .Cells(fc.Row, ic)
x = x + 1
End If
Next ic
End If
End With
End If
End Sub
[/vba]

Автор - artika2000
Дата добавления - 22.10.2026 в 21:05
Pelena Дата: Четверг, 22.10.2026, 21:22 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 19649
Репутация: 4720 ±
Замечаний: ±

Excel 365 & Mac Excel
На прикрепленной фото видно, что 2 первых цвета вызваны выполнением макроса

Откуда это видно?
Приложите файл Excel с примером, иначе непонятно откуда что берется


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение
На прикрепленной фото видно, что 2 первых цвета вызваны выполнением макроса

Откуда это видно?
Приложите файл Excel с примером, иначе непонятно откуда что берется

Автор - Pelena
Дата добавления - 22.10.2026 в 21:22
artika2000 Дата: Четверг, 22.10.2026, 22:03 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 69
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый вечер. К сожалению файл по размеру не пройдет никак, к сожалению не смогу прикрепить.
Я прикрепил фото, на котором видно, что ячейки окрашены, как можно у окрашенных ячеек перед выполнением макроса очистить свойства, а именно снять заливку цвета
Какую команду нужно прописать в начале макроса, что бы она скидывала все предыдущие окрашивания ячеек до значения у цветных ячеек "нет заливки"
К сообщению приложен файл: 5385527.png (8.9 Kb)
 
Ответить
СообщениеДобрый вечер. К сожалению файл по размеру не пройдет никак, к сожалению не смогу прикрепить.
Я прикрепил фото, на котором видно, что ячейки окрашены, как можно у окрашенных ячеек перед выполнением макроса очистить свойства, а именно снять заливку цвета
Какую команду нужно прописать в начале макроса, что бы она скидывала все предыдущие окрашивания ячеек до значения у цветных ячеек "нет заливки"

Автор - artika2000
Дата добавления - 22.10.2026 в 22:03
Pelena Дата: Четверг, 22.10.2026, 22:06 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 19649
Репутация: 4720 ±
Замечаний: ±

Excel 365 & Mac Excel
снять заливку цвета

[vba]
Код
.Interior.Color = xlNone
[/vba]

файл по размеру не пройдет никак
весь файл не нужен, достаточно небольшого примера


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение
снять заливку цвета

[vba]
Код
.Interior.Color = xlNone
[/vba]

файл по размеру не пройдет никак
весь файл не нужен, достаточно небольшого примера

Автор - Pelena
Дата добавления - 22.10.2026 в 22:06
artika2000 Дата: Пятница, 23.10.2026, 15:45 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 69
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Добрый вечер, будьте добры, как получилось, я обрезал файл насколько можно с темой вопроса, не знаю как Вам это подойдет или нет. В любом случае спасибо Вам большое.

Объяснение на листе в файле
К сообщению приложен файл: 2026pelena.xlsm (137.5 Kb)
 
Ответить
СообщениеДобрый вечер, будьте добры, как получилось, я обрезал файл насколько можно с темой вопроса, не знаю как Вам это подойдет или нет. В любом случае спасибо Вам большое.

Объяснение на листе в файле

Автор - artika2000
Дата добавления - 23.10.2026 в 15:45
Pelena Дата: Пятница, 23.10.2026, 19:25 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 19649
Репутация: 4720 ±
Замечаний: ±

Excel 365 & Mac Excel
Если правильно поняла. На основе Ваших макросов
К сообщению приложен файл: 9477572.xlsm (136.0 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЕсли правильно поняла. На основе Ваших макросов

Автор - Pelena
Дата добавления - 23.10.2026 в 19:25
  • Страница 1 из 1
  • 1
Поиск:

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