|
Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2013 - [решено] Exel 2013 - вставить примечание макросом |
|
|
2013 - [решено] Exel 2013 - вставить примечание макросом
|
Старожил Сообщения: 177 |
Профиль | Сайт | Отправить PM | Цитировать Всем привет
Можно ли вставить Конкретное примечание макросом в ТЕКУЩУЮ ячейку? Пробовал запись макроса, но так оно вставляется в КОНКРЕТНУЮ ячейку, а не в ТЕКУЩУЮ Было бы неплохо еще и форматировать сразу это примечание - шрифт, к примеру, увеличить и жирность добавить Range("I311").AddComment Range("I311").Comment.Visible = False Спасибо |
|
------- Отправлено: 11:37, 05-01-2017 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 12:00, 05-01-2017 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 177
|
Профиль | Сайт | Отправить PM | Цитировать Отлично, а можно форматировать само примечание и изменить размер рамки?
|
------- Отправлено: 12:09, 05-01-2017 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Maestro:
With ActiveCell.AddComment("Какой-то комментарий") .Visible = False With .Shape.TextFrame.Characters.Font .Bold = True .Size = 14 .ColorIndex = 8 End With End With Цитата Maestro:
|
||
Отправлено: 12:14, 05-01-2017 | #4 |
Старожил Сообщения: 177
|
Профиль | Сайт | Отправить PM | Цитировать СУПЕР! Как хорошо много знать
Ну и для ПОЛНОГО счастья размер рамки можно подкорректировать? Этим по идее как-то.... Selection.ShapeRange.ScaleWidth 0.73, msoFalse, msoScaleFromTopLeft |
|
------- Отправлено: 12:21, 05-01-2017 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Maestro, вот Вам более полный демонстрационный образец:
Скрытый текст
Option Explicit Sub Sample() Dim objComment As Comment With ActiveCell If .Comment Is Nothing Then Set objComment = .AddComment Else Set objComment = .Comment End If End With With objComment '.Visible = False .Visible = True With .Shape .Height = 100 .Width = 200 With .TextFrame With .Characters .Text = "Мама мыла раму." & vbLf & vbLf With .Font .Bold = True .Size = 14 .ColorIndex = 3 End With End With With .Characters(Len(.Characters.Text) + 1) .Text = "Рабы не мы, " With .Font .Bold = False .Size = 12 .ColorIndex = 4 End With End With With .Characters(Len(.Characters.Text) + 1) .Text = "Мы не рабы." With .Font .Bold = False .Italic = True .Size = 10 .ColorIndex = 5 End With End With End With End With End With Set objComment = Nothing End Sub |
Отправлено: 13:30, 05-01-2017 | #6 |
Старожил Сообщения: 177
|
Профиль | Сайт | Отправить PM | Цитировать в дополнение: как макросом к текстовому содержимому ячейки добавить в уонец определенные символы и всю ячейку потом отформатировать шрифтом и цветом?
Спасибо |
------- Последний раз редактировалось Maestro, 12-01-2017 в 12:51. Отправлено: 11:25, 12-01-2017 | #7 |
Динохромный Сообщения: 690
|
Профиль | Отправить PM | Цитировать Цитата Maestro:
код
Public Sub Add_text_sel() Dim rngCell As Range, strTxt As String, intCol As Integer Dim colobj strTxt = " Пример текста": 'Текст, который необходимо вставить в ячейку intCol = 5: 'цвет рамки ячейки colobj = RGB(255, 0, 0): 'цвет заливки ячейки For Each rngCell In Selection.Cells With rngCell .Value = .Value & strTxt .Font.Color = RGB(0, 255, 0): 'цвет текста в ячейке .Font.Bold = True: 'Полужирное начертание, если не нужен - значение false .Font.Underline = xlUnderlineStyleSingle: 'Подчеркнутый, если не нужен = xlUnderlineStyleNone .Font.Italic = True: 'курсив , если не нужен - значение false End With With rngCell.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = colobj .TintAndShade = 0 .PatternTintAndShade = 0 End With With rngCell.Borders(xlEdgeLeft) .LineStyle = xlContinuous .ColorIndex = intCol .TintAndShade = 0 .Weight = xlMedium End With With rngCell.Borders(xlEdgeTop) .LineStyle = xlContinuous .ColorIndex = intCol .TintAndShade = 0 .Weight = xlMedium End With With rngCell.Borders(xlEdgeBottom) .LineStyle = xlContinuous .ColorIndex = intCol .TintAndShade = 0 .Weight = xlMedium End With With rngCell.Borders(xlEdgeRight) .LineStyle = xlContinuous .ColorIndex = intCol .TintAndShade = 0 .Weight = xlMedium End With Next End Sub |
|
Отправлено: 13:39, 12-01-2017 | #8 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 05:54, 13-01-2017 | #9 |
Динохромный Сообщения: 690
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Maestro, в экселе есть инструмент "стиль ячейки", в вашем случае более удобно будет использовать его (вкладка "Главная"->сектор "стили"-> кнопка "Стили ячеек"). В выпадающем меню можно создать свой стиль ячейки, либо воспользоваться стандартными (в коде ниже использован стандартный стиль Excel 2010 "Хороший", если создадите свой стиль - измените название стиля в коде). Код ниже добавит ваш текст и присвоит вашим ячейкам указанный стиль "Хороший", соответственно преимущество будет в том, что оформление ячеек можно быстро изменить, поменяв один раз настройки в стиле, да и настраивать стиль будет гораздо удобнее в смысле визуального отображения, нежели вписывать параметры в код. В принципе - для разного вставляемого текста можно сделать несколько копий кода, и "повесить" их на разные кнопки (стилей нужно также несколько). |
|
Отправлено: 15:36, 13-01-2017 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2013 - Заполнение спецификации макросом | irkarimov | Microsoft Office (Word, Excel, Outlook и т.д.) | 5 | 30-11-2016 07:18 | |
2010 - [решено] помогите, пожалуйста, с макросом | vanoman | Microsoft Office (Word, Excel, Outlook и т.д.) | 2 | 23-12-2014 12:09 | |
2007 - Формула в примечание Excel | Michael Mikhail | Microsoft Office (Word, Excel, Outlook и т.д.) | 14 | 26-11-2012 10:13 | |
вставка формул в экселе макросом? | Naug | Программирование и базы данных | 2 | 22-09-2004 15:47 |
|