|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
05.10.2011, 10:13 | #11 |
Форумчанин
Регистрация: 16.04.2010
Сообщений: 695
|
Можно еще один вопрос
Можно ли при стандартном выпадающем списке как в примере, добавить код, при котором будет выполнятся действие, при нажатии на ячейку со списком (1-н раз лев. кнопкой мыши), допусти я ну буду выбирать значения со списка, а хочу ввести это значение с клавиатуры (заранее я помню какие есть значения в списке), и при нажатии на первую буква, список предлагал первое найденное совпадение по первому символу (и в самом списки перемещался к это первому найденному значению). Что именно меня интересует (исходя из примера), если допустим в ячейку с2 ввести с клавиатуры первую букву "d", происходило следующее, в ячейки появлялось значение из списка "dfgdg" (ячейка К20), и если много значений на букву "d", то нажимаем на стрелочку выпадающего списка (ячейки в которую ввели "d") и в выпадающем списки отображалось это первое совпадение по букве "d", а не начало списка. Такое возможно сделать? Саму идею я взял вот из этого примера. Посмотрите пожалуйста. Спасибо. Еще оно, вообщем я хотел бы чтобы стандартный выпадающий список эксель, работал на подобе jQuery Autocomplete. Такое возможно, кто не будь такое делал?
Единственный способ стать умнее, играть с более умным противником...
Последний раз редактировалось staniiislav; 05.10.2011 в 10:19. |
22.10.2012, 09:35 | #12 |
Форумчанин
Регистрация: 19.10.2012
Сообщений: 217
|
Помогите пожалуйста!
Нужно добавить в макрос функцию поиска по первым буквам. Чтобы я начал набирать фамилию, а она сортировалась в списке. Потом после выбора фамилии она добавлялась в ячейку. Список будет большой.Макрос у меня в колонке H, а мне нужно еще в колонки J , R , V . Помогите пожалуйста, уже неделю сижу и ничего не получается. |
22.10.2012, 14:42 | #13 |
Форумчанин
Регистрация: 19.10.2012
Сообщений: 217
|
Получилось сделать в нескольких столбцах
Как сделать поиск? Помогите с ответом Private Sub Worksheet_Change(ByVal Target As Range) Dim lReply As Long, i As Integer Dim counter As Integer, MyName As String, NameRange As String If Target.Cells.Count > 1 Then Exit Sub If Target.Column = "8" Then If IsEmpty(Target) Then Exit Sub counter = Len(Target) MyName = Left(Target, counter) For i = 1 To Range("People").Count NameRange = Left(Range("People").Cells(i), counter) If LCase(NameRange) = LCase(MyName) Then Application.EnableEvents = False Application.EnableEvents = True Exit For End If Next If WorksheetFunction.CountIf(Range("Pe ople"), Target) = 0 Then lReply = MsgBox("Добавить введенное имя " & _ Target & " в выпадающий список?", vbYesNo + vbQuestion) If lReply = vbYes Then Range("People").Cells(Range("People ").Rows.Count + 1, 1) = Target Range("People").Resize(Range("Peopl e").Rows.Count + 1).Name = "People" Range("People").Sort Key1:=Range("AD12"), _ Order1:=xlAscending, Header:=xlNo Else Target = "" End If End If End If If Target.Column = "10" Then If IsEmpty(Target) Then Exit Sub counter = Len(Target) MyName = Left(Target, counter) For i = 1 To Range("People").Count NameRange = Left(Range("People").Cells(i), counter) If LCase(NameRange) = LCase(MyName) Then Application.EnableEvents = False Application.EnableEvents = True Exit For End If Next If WorksheetFunction.CountIf(Range("Pe ople"), Target) = 0 Then lReply = MsgBox("Добавить введенное имя " & _ Target & " в выпадающий список?", vbYesNo + vbQuestion) If lReply = vbYes Then Range("People").Cells(Range("People ").Rows.Count + 1, 1) = Target Range("People").Resize(Range("Peopl e").Rows.Count + 1).Name = "People" Range("People").Sort Key1:=Range("AD12"), _ Order1:=xlAscending, Header:=xlNo Else Target = "" End If End If End If If Target.Column = "18" Then If IsEmpty(Target) Then Exit Sub counter = Len(Target) MyName = Left(Target, counter) For i = 1 To Range("People").Count NameRange = Left(Range("People").Cells(i), counter) If LCase(NameRange) = LCase(MyName) Then Application.EnableEvents = False Application.EnableEvents = True Exit For End If Next If WorksheetFunction.CountIf(Range("Pe ople"), Target) = 0 Then lReply = MsgBox("Добавить введенное имя " & _ Target & " в выпадающий список?", vbYesNo + vbQuestion) If lReply = vbYes Then Range("People").Cells(Range("People ").Rows.Count + 1, 1) = Target Range("People").Resize(Range("Peopl e").Rows.Count + 1).Name = "People" Range("People").Sort Key1:=Range("AD12"), _ Order1:=xlAscending, Header:=xlNo Else Target = "" End If End If End If If Target.Column = "22" Then If IsEmpty(Target) Then Exit Sub counter = Len(Target) MyName = Left(Target, counter) For i = 1 To Range("People").Count NameRange = Left(Range("People").Cells(i), counter) If LCase(NameRange) = LCase(MyName) Then Application.EnableEvents = False Application.EnableEvents = True Exit For End If Next If WorksheetFunction.CountIf(Range("Pe ople"), Target) = 0 Then lReply = MsgBox("Добавить введенное имя " & _ Target & " в выпадающий список?", vbYesNo + vbQuestion) If lReply = vbYes Then Range("People").Cells(Range("People ").Rows.Count + 1, 1) = Target Range("People").Resize(Range("Peopl e").Rows.Count + 1).Name = "People" Range("People").Sort Key1:=Range("AD12"), _ Order1:=xlAscending, Header:=xlNo Else Target = "" End If End If End If End Sub |
24.10.2012, 10:36 | #14 |
Форумчанин
Регистрация: 16.04.2010
Сообщений: 695
|
посмотрите два варианта, может подойдут... макросы писал не я, я только их переделал немного
Единственный способ стать умнее, играть с более умным противником...
|
01.11.2012, 10:16 | #15 |
Форумчанин
Регистрация: 19.10.2012
Сообщений: 217
|
Спасибо большое!!!!!
Очень помогли |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выпадающий список из БД | KorPaEv | PHP | 7 | 08.08.2011 19:31 |
Выпадающий список | Павел_Игоревич | Помощь студентам | 3 | 17.05.2011 23:29 |
Выпадающий список. | 0479 | Microsoft Office Access | 2 | 03.10.2010 23:19 |
Выпадающий список | tsergey | Помощь студентам | 2 | 24.01.2010 15:34 |
выпадающий список | Toxa | Microsoft Office Excel | 2 | 23.04.2007 09:40 |