Страницы: 1
RSS
Надстройка "nerv_DropDownList_1.6", мелкие неудобства
 
Доброго времени суток!

Есть вопрос, возможно кто-то из знатоков форума сталкивался.
Существует надстройка Excel "nerv_DropDownList_1.6" (автора к сожалению не знаю), которая позволяет настроить выпадающий список с поиском на листе. Работает по нажатию "Cntr+Enter".

Так вот вопрос, как заменить сочетание клавиш на щелчек мыши по кнопке?
При попытке сымитировать - Application.SendKeys "^{ENTER}" ничего не происходит.

Буду благодарен за совет.
 
Alexey0185, напишите автору.
 
К сожалению, я не знаю автора.
А есть другие способы сымитировать "Cntr + Enter" кроме вышеуказанного?
 
Я тоже с ним лично не знаком, но он легко находится поиском среди пользователей.
 
Спасибо.
Направил ему письмо.
 
Alexey0185, вроде как автор давно её не поддерживает…  :sceptic:
Я в своих 2ух темах (1 и 2) создал что-то похожее, но без листа настроек и прочего. Смотрите и создавайте свою тему  ;)
Изменено: Jack Famous - 17.09.2018 11:54:29
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Спасибо за помощь. Вопрос решился просто:
имитация по Application.SendKeys "^{ENTER} - не работает, но
имитация по                    SendKeys "^{ENTER} - РАБОТАЕТ!!!
 
оставлю здесь. может кому пригодиться.
nerv 08.05.2016, 18:53 | Сообщение № 1
Цитата
Несколько лет назад мною было создано пару надстроек, которые, как оказалось, могут быть полезны при работе в excel.
Одна из них называется "Надстройка выпадающий список с поиском (source code)". Почитать описание и скачать ее можно тут и тут.
В  связи с тем, что ко мне периодически обращаются с просьбами открыть  исходный код этих надстроек и/или модифицировать их, а с экселем я уже  давным давно не имею макрописательных отношений, счел необходимым  выложить исходный код данных надстроек в том неизменном виде, в котором  они доступны на сайтах для скачивания.

Имя архива должно было быть nerv_DropDownList_1.x_no_protect.tar.gz, но форум оставляет право за собой на переименование.
Чтобы правильно его извлечь, обратите внимание, что это *.tar.gz архив.
           
К сообщению приложен файл: nerv_DropDownLi.gz(49.8 Kb)

Марина: 03.07.2015 в 16:49  
Цитата
мне тоже надстройка нравится но не подходит - она игнорит листы с  цифровым название, и постоянно вносить в таблицу десятки новых листов  которые используют список не реально ((( печалька
для того чтобы надстройка работала в листах только с цифровым названием нужно на вкладке настроек "DDLSettings" перед именем листа поставить апостроф. например лист у вас называется 2019, а в настройках должно быть '2019


PS. Давайте использовать эту отдельную тему по этой надстроке где обсуждаются ее проблемы и решения и если у кого возникает подобная задача отправлять в эту тему? Чтобы все было в одном месте, а не рыскать искать по всему форуму и интеренету.
Прошу модераторов переименовать тему в "Надстройка выпадающий список с поиском nerv_DropDownList_1.6"
Изменено: Армен - 31.01.2021 17:14:45
 
Семь лет назад переделывал под себя надстройку.
На вскидку добавлены: форма настроек; возможность создавать правила для разных файлов; возможность формировать списки с учетом условий (до 4-х условий); переход на следующую ячейку при вводе из формы (настраивается куда переходить) и т.д.

Тогда получилось так - скачать можно тут

Код открытый - в принципе можно допилить  :)  по желанию.
Файл .ini должен лежать в папке с файлом надстройки и определяет путь к файлу настроек правил (для примера в файле заполнены два правила для разных файлов).
 
Александр Макаров,не получается затестить,  
Microsoft Visual Basic for Applications
Compile error:
The  The code in this project must be updated for use on 64-bit systems.  Please review and update Declare statements and then mark them with the  PtrSafe attribute.
 
Армен,
подкорректировал для работы с х64 версией и перезалил архив
 
А у меня вопрос, можно ли как нибудь сделать так, чтобы не приходилось каждый раз нажимать Ctrl+Enter для  вызова надстройки?  чтобы форма поиска при вводе и переходе на следующее положение  открывалась бы снова  автоматически, если это положение оказалось в  диапазоне указанном в  диапазоне работы надстройки во вкладке настройки  "DDLSettings"  надстройки?
Т.к. я не разбираюсь в макросах, нашел  код из другого примера, запускающий надстройку при установлении курсора в  заданной в ячейке (настроил на B10:B20)
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     If Target.Cells.Count = 1 Then
        If Not Application.Intersect(Target, Range("B10:B20")) Is Nothing Then
            Application.Run "nerv_DropDownList.DropDownListShow"
        End If
     End If
End Sub

или (не разбираюсь в чем разница)

Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     If Target.Cells.Count = 1 Then
        If Not Intersect(Target, Range("B10:B20")) Is Nothing Then
            Application.Run "nerv_DropDownList.DropDownListShow"
        End If
     End If
End Sub
но, почему то не работает должным образом. находит,  обрабатывает, но в конце после ввода и перехода на следующую ячейку  выдает ошибку
Изменено: Армен - 12.01.2021 15:05:57
 
сам себе отвечу. чтобы запускать эту надстройку автоматически без нажатия Ctrl+Enter надо вставить в модуль листа такой код (настроил на B10:B20)
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     If Target.Cells.Count = 1 Then
        If Not Intersect(Target, Range("B10:B20")) Is Nothing Then
            SendKeys "^~"
        End If
     End If
End Sub

еще добавил в DDLSettings!E столбец E , типо мою задумку нереализованную (надеюсь кто то сможет реализовать), что очень было бы круто если бы вышеописанный код как то можно было запихнуть не в модуль листа, чтобы не настраивать каждый лист, а в надстройку, и использовать логику что то типа: если выделенная ячейка попадает в диапазон и соответствует настройкам в DDLSettings, т.е. имя листа(столбец A)&диапазон(столбец B)&атозапуск=ИСТИНА(столбец E), тогда выполнялся бы этот код автоматически запускающий надстройку без нажатия Ctrl+Enter

Изменено: Армен - 07.04.2022 18:53:09
Страницы: 1
Наверх