Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mironov_gotovye_makrosy_v_vba_excel.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.41 Mб
Скачать

Перенос значений из ячейки в комментарий_1

Sub Добавить_комментарий_в_диапазоне()

'копирует значение ячейки в комментарий в видемом диапазоне

Dim c As Range, cc As Range

Dim i As Long

On Error GoTo ErrorHandler

Application.DisplayCommentIndicator = xlCommentIndicatorOnly

Set cc = Selection

'если выделили 1 ячейку, то выход

If cc.Rows.Count = 1 And cc.Columns.Count = 1 Then

MsgBox "Выделено слишком мало ячеек!", , "Ошибка"

End

End If

Set cc = Selection.SpecialCells(xlCellTypeVisible)

For Each c In cc

If c.Value <> Empty Then

c.AddComment CStr(c.Value)

i = i + 1

End If

Next

MsgBox "Добавлено " & i & " комментарий!"

Exit Sub

End Sub

Перенос значений из ячейки в комментарий_2

Sub Comment_in_Cell()

Dim c As Range

Dim r As Range

If ActiveSheet.Comments.Count = 0 Then MsgBox "Без комментариев!": Exit Sub

Set sh = ActiveSheet

Set shnew = Sheets.Add

sh.Select

Set r = Range(Cells(1, 1), Cells(Cells.Find("*", [A1], xlComments, , xlByRows, _

xlPrevious).Row, Cells.Find("*", [A1], xlComments, , xlColumns, _

xlPrevious).Column))

For Each c In r

If Not c.Comment Is Nothing Then

shnew.Range(c.Address) = c.Comment.Text

End If

Next

End Sub

Глава . Пользовательские вкладки на ленте

Дополнение панели инструментов

Sub AddCustomCommandBar()

' Добавление кнопки на панель инструментов

With Application.CommandBars(3).Controls.Add(Type:=msoControlButton)

.FaceId = 42 ' Значок Word

.Caption = "Кнопка"

.OnAction = "Макрос"

End With

End Sub

Добавление кнопки на панель инструментов

Sub AddCustomButton()

' Добавление кнопки на панель инструментов

With Application.Toolbars(1).ToolbarButtons.Add(button:=222)

.Name = "Кнопка"

.OnAction = "Макрос"

End With

End Sub

Панель с одной кнопкой

Sub CreateCustomControlBar()

' Создание панели инструментов

With Application.CommandBars.Add(Name:="Панель", Temporary:=True)

' Создание и настройка кнопки

With .Controls.Add(Type:=msoControlButton)

.Style = msoButtonIconAndCaption

.FaceId = 66

.Caption = "Просто кнопка"

End With

' Покажем панель

.Visible = True

End With

End Sub

Панель с двумя кнопками

Sub CreateCustomControlBar()

' Создание панели инструментов

With Application.CommandBars.Add(Name:="Панель", Temporary:=True, _

Position:=msoBarLeft)

' Создание и настройка первой кнопки

With .Controls.Add(Type:=msoControlButton)

.Style = msoButtonWrapCaption

.Caption = "Просто кнопка"

End With

' Создание и настройка второй кнопки

With .Controls.Add(Type:=msoControlButton)

.Style = msoButtonIconAndWrapCaption

.Caption = "Кнопка"

.FaceId = 225

End With

' Покажем панель

.Visible = True

End With

End Sub

Создание панели справа

Sub CreateCustomControlBar()

' Создание панели инструментов

With Application.CommandBars.Add(Name:="Правая панель", _

Temporary:=True)

' Создание и настройка кнопки

With .Controls.Add(Type:=msoControlButton)

.Style = msoButtonWrapCaption

.Caption = "Кнопка"

End With

' Задание позиции - справа

.Position = msoBarRight

' Покажем панель

.Visible = True

End With

End Sub

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]