Страницы: 1
RSS
Как получить в макросе код цвета ячейки?
 
Здравствуйте.
    Подскажите, пожалуйста, как получить в макросе код цвета ячейки?
 
попробуйте так
Код
MsgBox ActiveCell.Interior.ColorIndex
Изменено: New - 28.04.2021 15:03:49
 
Цитата
New написал:
попробуйте так
А если мне нужен цвет конкретной ячейки, а не активной?
 
Код
MsgBox конкретнаяячейка.Interior.ColorIndex
По вопросам из тем форума, личку не читаю.
 
Ну наверное так Cells(1,1).....
 
БМВ,
Медведь на форум, видимо, посмеяться ходит.
Marat Ta,
А если мне номер строки надо буквой i прописать для цикла For?
 
Код
MsgBox Range("A10").Interior.ColorIndex

в цикле так

Код
Sub test()
Dim i As Long
    
    For i = 1 To 5
        MsgBox Cells(i, "A").Interior.ColorIndex
    Next i
End Sub
Изменено: New - 28.04.2021 15:15:47
 
Очень выручили! Огромнейшее спасибо.
А если я хочу в макросе назначить цвет ячейке, как будет выглядеть код?

БМВ, Хотя с Range(A1) пройдёт, наверное и Ваш вариант.
 
Код
Range("A10").Interior.Color = 255 'красный

Код
Range("A10").Interior.ColorIndex = 3 'красный
Изменено: New - 28.04.2021 15:23:25
 
Код
Cells(i, "A").Interior.ColorIndex=6
 
.Interior.Color
 
Всем Огромнейшее спасибо!
А если мне надо задать в коже цвет шрифта, как тогда будет выглядеть код? И как в коде задать жирный шрифт?
 
Код
 Range("A1").Font.Bold = True

P.S. Вам надо научится включать "Запись макроса", делать желаемые действия на листе, а потом смотреть записанный программой код.
Изменено: New - 28.04.2021 15:34:48
 
New,  Большое спасибо.
хочется же поизящнее, чем это делает макрорекордер  :)
А если мне надо задать в коже цвет шрифта, как тогда будет выглядеть код?
 
Код
Range("A1").Font.Color = -16776961

Как вы думаете я пишу все эти коды, которые я показал вам в каждом своём сообщении?
Включаю запись макроса, меняю цвет ячейки, останавливаю макрос, корректирую его и выкладываю вам на форум
и так уже 5-й раз за вас
Изменено: New - 28.04.2021 15:38:07
 
New,
Ну просто огромнейшее человеческое Вам спасибище!
 
Цитата
New написал:
корректирую его
Ключевое слово-то вот. Боюсь, у меня пока слишком мало опыта, чтобы правильно скорректировать  :(
 
Пиркафф, зато у Вас уже огромный опыт по троллингу форумов
 
в записи макроса я заменяю слово Selection на Range("A1"). Это не сложно и для вас
Изменено: New - 28.04.2021 15:42:47
 
vikttur, Вы ошибаетесь. Просто я пишу код в эксель аналогичный тому, который я писал также не без помощи в Опенофис.
Изменено: Шарик - 28.04.2021 15:43:36
 
New, Ещё раз Огромнейшее Спасибо!
 
Цитата
Шарик написал:
Хотя с Range(A1) пройдёт, наверное и Ваш вариант.
с этим точно не пройдет, но вроде я и не высмеивал, написал как есть.

Цитата
vikttur написал:
Пиркафф, зато у Вас уже огромный опыт по троллингу форумов
Если оно так , то почему еще жив?
По вопросам из тем форума, личку не читаю.
 
Никогда не использую нелатинские буквы для идентификаторов, но: :)
Код
Sub test()
  Dim конкретнаяячейка As Range
  Set конкретнаяячейка = Range("A1")
  MsgBox конкретнаяячейка.Interior.ColorIndex
End Sub
Владимир
 
Обучение прошло успешно. Ура!!!
Страницы: 1
Наверх