Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 13.01.2017
Сообщений: 5
1

Гиперссылка для добавления новой строки

09.10.2017, 11:00. Показов 1134. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
От бывшего работника достался файл. Вижу хорошую формулу, но не могу понять, что это за формул и как она работает. Суть в следующем, последняя строка таблицы (красным выделен текст - добавить) содержит гиперссылку для добавления новой строки, при нажатии добавляется новая строка и в ней можно из раскрывающего списка выбрать профессии. С раскрывающимся списком все понятно, но как добавляется новая строка понять не могу.
Помогите, пожалуйста. Файл прикладываю)
Вложения
Тип файла: xlsx Расчет 123.xlsx (28.7 Кб, 6 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.10.2017, 11:00
Ответы с готовыми решениями:

Событие добавления новой строки в DataGridView
Здравствуйте, не подскажите в datagrid заношу данные вручную, а как чтобы при добавлении новой...

Метод добавления новой строки в массив
У меня возникла одна проблема при выполнении одной задачи, требуется в динамический массив добавить...

Сортировка нового массива путем добавления к старому новой строки
const n=4; type mas=array of integer; mas1=array of integer; var a:mas; b:mas1; ...

SQL как при удалении строки из таблицы БД и потовторно добавления новой строки ID таблицы продолжить
вот я создал таблицу в БД SQL и там первичный ключ заполняется автоматически IDENTITY, скажем...

6
3897 / 2302 / 776
Регистрация: 02.11.2012
Сообщений: 6,119
09.10.2017, 11:11 2
начальный файл xlsx? У меня строчка не добавляется.
Подозреваю в оригинале прописан макрос на переход по гиперссылке.
0
0 / 0 / 0
Регистрация: 13.01.2017
Сообщений: 5
09.10.2017, 11:26  [ТС] 3
Да, извиняюсь. Прикладываю полный файл.
Вложения
Тип файла: rar Расчет нормативной численности.rar (351.3 Кб, 7 просмотров)
0
Динохромный
1375 / 749 / 271
Регистрация: 22.12.2015
Сообщений: 2,341
09.10.2017, 13:46 4
Цитата Сообщение от ksenia0510 Посмотреть сообщение
но как добавляется новая строка понять не могу.
ksenia0510, если зайти в vba редактор, то ожидаемо окажется, что в листе "Таблица профессий" есть код, выполняющийся после нажатия на гиперссылку (ячейка с надписью "Добавить").
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Private Sub Worksheet_FollowHyperlink(ByVal target As Hyperlink)
    
    Application.EnableCancelKey = xlDisabled
    On Error GoTo errhandler
    
    target.Range.Worksheet.Rows(target.Range.Row - 1).Select
    Selection.Copy
    Selection.Insert Shift:=xlDown
    Application.CutCopyMode = False
    
    Exit Sub
errhandler:
    MsgBox Err.Description, vbOKOnly, ActiveSheet.Name
End Sub
0
4134 / 2238 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
09.10.2017, 17:09 5
Тоже самое, но без лишних символов :

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    On Error GoTo ErrHandler
 
    Target.Range.EntireRow(0).Copy
    Target.Range.Insert
    Application.CutCopyMode = False
    Exit Sub
 
ErrHandler:
    MsgBox Err.Description, , Name
End Sub
1
Динохромный
1375 / 749 / 271
Регистрация: 22.12.2015
Сообщений: 2,341
09.10.2017, 17:34 6
Еще логично проверять, что нажата именно ссылка с надписью "Добавить", иначе код будет добавлять строку перед любой гиперссылкой, находящейся на листе "Таблица профессий". Хотя, полагаю, вопрос у ТС был больше риторический.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    On Error GoTo ErrHandler
    If Target.Range.Value = "Добавить" Then
        Target.Range.EntireRow(0).Copy
        Target.Range.Insert
        Application.CutCopyMode = False
    End If
    
    Exit Sub
    
ErrHandler:
    MsgBox Err.Description, , Name
End Sub
0
4134 / 2238 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
09.10.2017, 17:54 7
Если в этом листе необходимы и другие гиперссылки, то можно обойти и без посредника - гиперссылки. Проще говоря, можно создать кнопку, назначить ей макрос, "привязать" кнопку к ячейке(строке) <Перемещать объект вместе с ячейками> и при необходимости, снять флажок <Выводить объект на печать>
0
09.10.2017, 17:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.10.2017, 17:54
Помогаю со студенческими работами здесь

Форма для добавления новой записи
Здравствуйте. Помогите создать форму с возможностью ввода новой записи (контрагента) с указанием...

Форма для добавления новой записи
Добрый день! Помогите разобраться новичку. Задачка стандарная: из формы с гридом основной таблицы...

Создать скрипт для добавления новой переменной
Как создать скрипт для добавления новой переменной, указывающей путь к файлу, который должен быть...

Код VB для добавления новой записи в таблицу
Здравствуйте! Не могу найти код VB для добавления новой записи. Помогите


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru