Есть ли способ вставить строку, нажав на символ +, который у меня есть на одной из моих клеток.
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
If Target.Parent.Value = "+" Then
Insert.Row
Exit Sub
End If
End Sub
2 ответа
Предполагая, что вам нужно добавить строку под гиперссылкой (ниже в модуле «Рабочий лист»):
Option Explicit
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
If Target.Parent.Value = "+" Then Rows(Target.Parent.Row + 1).Insert
End Sub
Дело в том, нужно ли создавать еще одну гиперссылку на этот новый ряд? Это недальновидный дизайн, так как у вас есть ограничение в 66 530 гиперссылок на лист.
Любопытно, почему командная кнопка не вариант?
Это ново для меня. У вас есть гиперссылка, назначенная на знак "+"? Макрос followhyperlink не будет работать, если у вас нет гиперссылки в этой ячейке.
Следующее будет работать с любой текстовой ячейкой, вы можете использовать знак плюс или «Добавить строку», или любой другой текст, который вы хотите. Затем, если эта ячейка выбрана, она добавит новую строку ниже. Если вы хотите быть уверенным, что не выбрали ячейку случайно, вы можете использовать вместо этого «Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)», что заставит вас дважды щелкнуть знак «+», чтобы добавить строка.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Value = "+" Then
Rows(Target.Row + 1).Insert
Cells(Target.Row + 1, Target.Column).Value = "+"
Cells(Target.Row + 1, Target.Column).Select
End If
End Sub
Или быть в безопасности с двойным щелчком мыши
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Value = "+" Then
Rows(Target.Row + 1).Insert
Cells(Target.Row + 1, Target.Column).Value = "+"
Cells(Target.Row + 1, Target.Column).Select
End If
End Sub
Похожие вопросы
Новые вопросы
vba
Visual Basic для приложений (VBA) — это управляемый событиями объектно-ориентированный язык программирования для написания макросов, используемый для всего пакета Office, а также для других приложений. VBA не эквивалентен VB.NET или VBS; если вы работаете в Visual Studio, используйте [vb.net]. Если ваш вопрос конкретно касается программирования какого-либо приложения MS Office, также используйте соответствующий тег: [excel], [ms-access], [ms-word], [outlook], [visio] или [ms-project].