Excel vba цвет текста
VBA text box font color
I’m helping update Excel templates at my work and I need some help. I’m trying to format text in a textbox to be red and remove the border. I’m not sure how to add that property to my code. I’m not very good at coding. I was able to put the below together from dissecting other code I found.
I’ll eventually replace the absolute location values in the textbox code but I want it to work before I start making efficiency tweaks. Thanks for helping!
EDIT1: The below code works if I use either line 1 and 2 or Line 1 and 3. I’m not sure why I cannot use both in conjuction.
1 Answer 1
@ L L The way you are doing it with shapes.addtextbox do it like this:
If I keep typing in the text box then the rest is wrapped in red as well as whatever was in there with the first assignment, the command button in the screenshot executes the code above just to play around.
If you are going to keep adding and subtracting text to the textbox with code it is better if you get the shape named. Then you can grab the string that is in there and add to it . . This code below shows how you can name and then play around with your text box using VBA, adding text and so forth . . you can now change the color of certain text within the textbox as well, which is cool but another topic maybe?
So I hope this helps. The easiest way out if you have the developer tab is to add an ActiveX textbox (you will not be able to use .characters I don’t think) but you can assign the textbox name and many properties: text font, size, color (.forecolor) of that text box right in the properties tab or in vba as well with the name (easy to make all one color, hard to change only selected text in the textbox to a certain color in VBA this way), but for the whole box? easy.
If you do it this way and want to grab the contents of the textbox in vba, lets say you Dim a a comment string in your code and you name your activeX textbox TextBox1:
you have to use the first way of inserting a textbox (the way you are currently using and the first way in the answer) to change only selected text to a new color as far as I have found. Want to see it in action? Add this code below what is above but just before End Sub, now what was there previously is red, the string you define in the code block will be blue if found, in this case I lazily assign it to newText
I sincerely hope this helps you in your search of being a textBox jedi! Cheers – WWC
Источник: stackoverflow.com
Свойство Font. Color (Excel) Font.Color property (Excel)
Возвращает или задает основной цвет объекта, как показано в таблице в разделе “Примечания”. Returns or sets the primary color of the object, as shown in the table in the remarks section. Используйте функцию RGB для создания значения цвета. Use the RGB function to create a color value. Для чтения и записи, Variant. Read/write Variant.
Синтаксис Syntax
Expression. Color (цвет ) expression.Color
Expression (выражение ) Выражение, возвращающее объект Font . expression An expression that returns a Font object.
Примечания Remarks
Object Object | Цвет Color |
---|---|
Border Border | Цвет границы. The color of the border. |
Borders Borders | Цвет всех четырех границ диапазона. The color of all four borders of a range. Если они не имеют одинаковый цвет, то Color возвращает 0 (ноль). If they’re not all the same color, Color returns 0 (zero). |
Font Font | Цвет шрифта. The color of the font. |
Interior Interior | Цвет заливки ячейки или цвет заливки графического объекта. The cell shading color or the drawing object fill color. |
Tab Tab | Цвет вкладки. The color of the tab. |
Пример Example
В этом примере показано, как задать цвет подписей делений на оси значений в диаграммы Chart1. This example sets the color of the tick-mark labels on the value axis on Chart1.
Поддержка и обратная связь Support and feedback
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Have questions or feedback about Office VBA or this documentation? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь. Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.
Источник: docs.microsoft.com
VBA Excel. Цвет текста в ячейке
Изменение цвета текста (шрифта) в ячейке рабочего листа Excel с помощью кода VBA. Свойства .Font.Color, .Font.ColorIndex и .Font.TintAndShade
Использование цветовой палитры для присвоения цвета тексту в ячейке листа Excel аналогично присвоению цвета фону ячейки, только свойство диапазона .Interior меняем на свойство .Font.
Цвет текста и предопределенные константы
Цвет шрифту в ячейке можно присвоить с помощью предопределенных констант:
Напомню, что вместо индексов строк и столбцов можно использовать переменные. Список предопределенных констант смотрите здесь.
Цвет шрифта и модель RGB
Для изменения цвета текста в ячейке можно использовать цветовую модель RGB:
Аргументы функции RGB могут принимать значения от 0 до 255. Если все аргументы равны 0, цвет – черный, если все аргументы равны 255, цвет – белый. Функция RGB преобразует числовые значения основных цветов (красного, зеленого и синего) в индекс основной палитры.
Свойство .Font.ColorIndex
Свойство .Font.ColorIndex может принимать значения от 1 до 56. Это стандартная ограниченная палитра, которая существовала до Excel 2007 и используется до сих пор. Посмотрите примеры:
Таблица соответствия значений ограниченной палитры цвету:
Открывается в новом окне Стандартная палитра Excel из 56 цветов
Основная палитра
Основная палитра, начиная c Excel 2007, состоит из 16777216 цветов. Свойство .Font.Color может принимать значения от 0 до 16777215, причем 0 соответствует черному цвету, а 16777215 – белому.
Отрицательные значения свойства .Font.Color
При записи в Excel макрорекордером макроса с присвоением шрифту цвета используются отрицательные значения свойства .Font.Color, которые могут быть в пределах от -16777215 до -1. Отрицательные значения соответствуют по цвету положительному значению, равному сумме наибольшего индекса основной палитры и данного отрицательного значения. Например, отрицательное значение -8257985 соответствует положительному значению 8519230, являющегося результатом выражения 16777215 + (-8257985). Цвета текста двух ячеек из следующего кода будут одинаковы:
Свойство .Font.TintAndShade
Еще при записи макроса с присвоением шрифту цвета макрорекордером добавляется свойство .Font.TintAndShade, которое осветляет или затемняет цвет и принимает следующие значения:
- -1 – затемненный;
- – нейтральный;
- 1 – осветленный.
При тестировании этого свойства в Excel 2016, сравнивая затемненные и осветленные цвета, разницы не заметил. Сравните сами:
При тестировании в первых трех ячейках первого столбца должен быть одинаковый текст для удобства сравнения оттенков.
Источник: webhamster.ru
(VBA Excel) Цвет текста примечания
Visual Basic | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10.05.2017, 12:22 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
VBA-Excel Вытащить рисунок из примечания Excel Vba – замена текста по условию Перемещение текста закладок из Word в Excel, VBA Поиск и номер позиции текста в VBA (Excel) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10.05.2017, 13:03 | 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Решение
|