У меня есть рабочий лист, который содержит много листов, и каждый содержит несколько строк с определенным цветом фона. Можно ли удалить цвет фона всех ячеек или строк, имеющих определенный цвет (желтый в моем случае) фон на листеудалить цвет фона, если цвет желтый. Excel
ответ
Да, это возможно. Вы должны проверить значение Range.Interior.Color для определенного диапазона. В VBA это будет выглядеть так:
If ActiveWorksheet.Range("A1").Interior.Color = RGB(255,255,0) Then
'Do something
End If
RGB(255,255,0)
желтый в этом случае. Вы можете использовать все другие значения. См. RGB Function. Для того, чтобы удалить использование цвета это:
Range("A1").Interior.Pattern = xlNone
Если вам нужна дополнительная помощь, пожалуйста, дайте более подробную информацию о вашей проблеме и/или оставить комментарий.
Вы также можете ознакомиться с этими ссылками: Range.Interior, Interior.Color.
EDIT: в соответствии с вашими примерами вы можете удалить зеленую окраску с разных листов в столбцах «E», «F», «G» и «H». RGB зеленого цвета - RGB(146,208,80)
. Этот код должен делать свою работу:
Sub removeColor()
Dim lastRow As Long
Dim ws As Worksheet
Dim i As Long
Dim color As Long
color = RGB(146, 208, 80)
For Each ws In ThisWorkbook.Worksheets
lastRow = ws.Range("A65536").End(xlUp).Row
For i = 3 To lastRow
If ws.Range("E" & i).Interior.color = color Then
ws.Range("E" & i).Interior.Pattern = xlNone
End If
If ws.Range("F" & i).Interior.color = color Then
ws.Range("F" & i).Interior.Pattern = xlNone
End If
If ws.Range("G" & i).Interior.color = color Then
ws.Range("G" & i).Interior.Pattern = xlNone
End If
If ws.Range("H" & i).Interior.color = color Then
ws.Range("H" & i).Interior.Pattern = xlNone
End If
Next i
Next ws
End Sub
EDIT: Если вы хотите, чтобы проверить все элементы для их цвета используйте:
Sub removeColor()
Dim ws As Worksheet
Dim cell as Range
Dim color As Long
color = RGB(146, 208, 80)
For Each ws In ThisWorkbook.Worksheets
For Each cell in ws.UsedRange
If cell.Interior.Color = color Then
cell.Interior.Pattern = xlNone
End If
Next cell
Next ws
End Sub
спасибо Fabian F, здесь ссылка на пример файла xlsx, который я хочу удалить из фонового рисунка из ячеек [http://www.filedropper.com/example_9] – khalil
, пожалуйста, просмотрите редактирование для файла примера – khalil
спасибо , это работает для моего примера, но что, если я хочу пропустить все ячейки, потому что, конечно, другие ячейки могут быть окрашены? – khalil
Это может решить Youre проблемы:
For i = 1 To Sheets.Count
On Error GoTo nex:
Sheets(i).Activate
For j = 1 To ActiveSheet.Cells.Find("*", SearchOrder:=xlByRows, LookIn:=xlValues, SearchDirection:=xlPrevious).Row
For k = 1 To ActiveSheet.Cells.Find("*", SearchOrder:=xlByColumns, LookIn:=xlValues, SearchDirection:=xlPrevious).Column
'65535 equals yellow
'5296274 equals green
If ActiveSheet.Cells(j, k).Interior.Color = 65535 Then ActiveSheet.Cells(j, k).Interior.Pattern = xlNone
Next
Next
nex:
Next
цикл проходит через все рабочие листы и ищет обратную цвет во всех используемых ячейках.
Чтобы получить число, представляющий цвет, который вы можете просто цвет A1 в нужном цвете и запустить следующий код:
MsgBox (ActiveSheet.Cells(1, 1).Interior.Color)
Надеется, что я мог бы помочь.
этот код не работает, он отправляет меня на третий лист – khalil
Код идет через все листы, активизирующие их, поэтому после завершения кода вы будете на последнем листе. – FatTony
Если вы хотите заменить зеленый цвет (например, в файле примера), вам нужно изменить «If ActiveSheet.Cells (j, k) .Interior.Color = 65535 Then», потому что 65535 будет соответствовать цвету желтого цвета. – FatTony
- 1. Как изменить Safari автозаполнение желтый цвет фона
- 2. Давая определение поиска желтый цвет фона
- 3. Удалить цвет фона
- 4. Excel цвет экспорт фона ячейки
- 5. Как удалить цвет фона (PowerShell)
- 6. положить стиль и цвет фона python excel
- 7. определить желтый цвет в opencv
- 8. Удалить цвет фона на UITableViewAccessory
- 9. Как удалить цвет фона кнопки
- 10. JProgressBar цвет фона
- 11. Диаграмма Winforms: как включить цвет фона цвет
- 12. Необычный желтый цвет фона появляется в OSX Safari
- 13. Почему я не могу изменить цвет фона 'div' на 'желтый'
- 14. Ellipse Stroke цвет фона
- 15. Цвет фона в GridView
- 16. Excel VBA, цвет шрифта и цвет фона ячейки
- 17. цвет и цвет фона помощник
- 18. Обратный цвет и цвет фона
- 19. Изменить цвет фона TAB цвет
- 20. Цвет фона
- 21. CSS цвет фона показывает другой цвет
- 22. Обновить цвет фона фона
- 23. selectize.js typeahead character (желтый) цвет не сбрасывается
- 24. Цвет фона в IE. Помогите мне удалить этот цвет?
- 25. Получить цвет фона ячейки Excel шестнадцатеричное значение
- 26. Excel если цвет текста фактуры
- 27. Как найти красивый цвет шрифта, если цвет фона известен?
- 28. Если цвет фона превосходит x, то измените цвет?
- 29. Документ Google - цвет фона
- 30. Цвет фона JCombobox переопределяет выбранный цвет фона фона
лучший вариант без VBA с поиском и заменой https://www.extendoffice.com/documents/excel/2746-excel-find-and-replace-fill-color.html#a1 – Slai
да Slai, это работает, по гораздо лучше, чем опция vba – khalil