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

Вход

Регистрация

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

 

= Мир MS Excel/Системная переменная цвета - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Системная переменная цвета (Макросы/Sub)
Системная переменная цвета
illios Дата: Понедельник, 07.07.2014, 14:16 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день,
есть отчет согласно которому выполняется изменение цвета шрифта и заливки в ячейке по определенному условию.
По умолчанию было выбрано инвертирование (черная заливка, белый шрифт), но части пользователей которые пользуются этим отчетом это не нравится
для упрощения им работы решил использовать установки палитры Экселя, которые применяются в обычной работе, т.е. какой там цвет шрифта и заливки установит пользователь, тем и отформатирует ячейку макрос.
Но нигде не могу найти переменные, которые содержат код цвета заливки и шрифта, прошу подсказать они вообще существуют?
из альтернативных вариантов в гуглении находил только добавление отдельной новой палитры в виде формы.
 
Ответить
СообщениеДобрый день,
есть отчет согласно которому выполняется изменение цвета шрифта и заливки в ячейке по определенному условию.
По умолчанию было выбрано инвертирование (черная заливка, белый шрифт), но части пользователей которые пользуются этим отчетом это не нравится
для упрощения им работы решил использовать установки палитры Экселя, которые применяются в обычной работе, т.е. какой там цвет шрифта и заливки установит пользователь, тем и отформатирует ячейку макрос.
Но нигде не могу найти переменные, которые содержат код цвета заливки и шрифта, прошу подсказать они вообще существуют?
из альтернативных вариантов в гуглении находил только добавление отдельной новой палитры в виде формы.

Автор - illios
Дата добавления - 07.07.2014 в 14:16
millik Дата: Понедельник, 07.07.2014, 15:43 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 2 ±
Замечаний: 0% ±

Excel 2010
если я правильно понял вопрос, то есть два метода
range().font - для параметров шрифта
range().interior - для параметров заливки

например
[vba]
Код
     
Range("A1").Select
With Selection.Interior
       .Pattern = xlSolid
       .PatternColorIndex = xlAutomatic
       .Color = 65535
       .TintAndShade = 0
       .PatternTintAndShade = 0
End With
With Selection.Font
       .Color = -16776961
       .TintAndShade = 0
       .Name = "Arial"
       .Size = 11
End With
[/vba]


Сообщение отредактировал millik - Понедельник, 07.07.2014, 15:45
 
Ответить
Сообщениеесли я правильно понял вопрос, то есть два метода
range().font - для параметров шрифта
range().interior - для параметров заливки

например
[vba]
Код
     
Range("A1").Select
With Selection.Interior
       .Pattern = xlSolid
       .PatternColorIndex = xlAutomatic
       .Color = 65535
       .TintAndShade = 0
       .PatternTintAndShade = 0
End With
With Selection.Font
       .Color = -16776961
       .TintAndShade = 0
       .Name = "Arial"
       .Size = 11
End With
[/vba]

Автор - millik
Дата добавления - 07.07.2014 в 15:43
illios Дата: Понедельник, 07.07.2014, 16:22 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
в вашем варианте, который записан с макрорекордера, цвет устанавливается вручную, в моем случае должны быть переменные, которые определяют цвет выбранный пользователем в панели Ексель


Сообщение отредактировал illios - Понедельник, 07.07.2014, 16:25
 
Ответить
Сообщениев вашем варианте, который записан с макрорекордера, цвет устанавливается вручную, в моем случае должны быть переменные, которые определяют цвет выбранный пользователем в панели Ексель

Автор - illios
Дата добавления - 07.07.2014 в 16:22
Rioran Дата: Понедельник, 07.07.2014, 18:01 | Сообщение № 4
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
illios, здравствуйте.

А почему бы не сделать так: пользователь красит сам отдельную тестовую ячейку с текстом. Тогда легко сработает окраска как по прямому образцу:

[vba]
Код
Sub Painter()

Cells(1, 1).Font.Color = Cells(2, 2).Font.Color
Cells(1, 1).Interior.Color = Cells(2, 2).Interior.Color

End Sub
[/vba]
Так и через переменную:

[vba]
Код
Sub Painter2()

Dim Color1 As Variant
Dim Color2 As Variant

Color1 = Cells(2, 2).Font.Color
Color2 = Cells(2, 2).Interior.Color

Cells(1, 1).Font.Color = Color1
Cells(1, 1).Interior.Color = Color2

End Sub
[/vba]


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
Сообщениеillios, здравствуйте.

А почему бы не сделать так: пользователь красит сам отдельную тестовую ячейку с текстом. Тогда легко сработает окраска как по прямому образцу:

[vba]
Код
Sub Painter()

Cells(1, 1).Font.Color = Cells(2, 2).Font.Color
Cells(1, 1).Interior.Color = Cells(2, 2).Interior.Color

End Sub
[/vba]
Так и через переменную:

[vba]
Код
Sub Painter2()

Dim Color1 As Variant
Dim Color2 As Variant

Color1 = Cells(2, 2).Font.Color
Color2 = Cells(2, 2).Interior.Color

Cells(1, 1).Font.Color = Color1
Cells(1, 1).Interior.Color = Color2

End Sub
[/vba]

Автор - Rioran
Дата добавления - 07.07.2014 в 18:01
illios Дата: Вторник, 08.07.2014, 11:02 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Спасибо, но проще в самой форме задать выбор цвета, чем объяснять каждому почему он должен красить о-он ту ячейку, благо пример нашел и буду расковыривать под свою форму
 
Ответить
СообщениеСпасибо, но проще в самой форме задать выбор цвета, чем объяснять каждому почему он должен красить о-он ту ячейку, благо пример нашел и буду расковыривать под свою форму

Автор - illios
Дата добавления - 08.07.2014 в 11:02
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Системная переменная цвета (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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