Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Активация элемента Texbox по нажатию клавиши средствами VB
 
Я сделал так:

Код
If KeyCode = vbKeyTab Then
        Me.TextBox1.Activate
End If
 
Активация элемента Texbox по нажатию клавиши средствами VB
 
При такой конструкции:

Код
If KeyCode = vbKeyTab Then
        TextBox1.SetFocus
End If
 

Выдает ошибку "Run-time error '438' Object doesn't support this property or method". Может что не так делаю?
Изменено: gogi - 11.10.2014 20:08:31
Активация элемента Texbox по нажатию клавиши средствами VB
 
Доброго времени суток!
Есть 3 TextBox-a (TextBox1, TextBox2 и TextBox3). Как сделать чтобы по событию Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) при нажатии клавиши (например TAB) , активировался элемент TextBox2?
Фильтрованный выпадающий список средствами VBA
 
Всех приветствую!
Благодаря вашим советам получилось то, что я хотел. Но вот вот возникла следующая идея - своими силами к сожалению реализовать это не могу.
Собственно вопрос: Как в ListBox-е сделать так, чтобы отображались данные не только того столбца, который мы ищем, а столбцы с А по D. Тоесть сечас в ListBox-е выводятся данные только столбца s/n, а хотелось бы, чтобы чтобы выводились данные из столбцов ID - model - s/n - inv.

Прикрепляю файл.
Фильтрованный выпадающий список средствами VBA
 
Код
x = Sheets("Лист1").Columns(cl).SpecialCells(2).Value
 
Если простыми словами то эту строку можно расшифровать примерно так: лист=>столбец =>ячейка формата "текст" => значение, Правильно понимаю?

Пошел экспериментировать.
Спасибо ребята!
Изменено: gogi - 02.10.2014 22:51:50
Фильтрованный выпадающий список средствами VBA
 
C IIf - разобрался. IIf( условие, условие выполняется, условие не выполняется). примерно так. Но если поиск строк для списка будем производить только по одному столбцу, я так думаю что,  IIf сюда уже не подходит. Тогда как правильно написать код чтобы произвести поиск только по одному столбцу?
Фильтрованный выпадающий список средствами VBA
 
При вводе данных в ячейки столбцов D и Q находятся совпадения по первым символам из данных столбцов V и Y, и формируется список из найденных строк. При выборе строки из списка эта строка записыватеся в активную ячейку.

1. Как сделать, чтобы код работал только когда вводишь данные в столбец А?
2. Как сделать, чтобы поиск, для формирования списка, происходил на другом листе, например по столбцу B на "Лист1", а не на V и Y на текущем листе?

Не совсем понимаю что делает эта строка:
Код
cl = IIf(Target.Column = 4, 22, 25): bu = False
 
и почему там три параметра "4, 22, 25". 22 и 25 - это столбцы, для поиска данных для формирования списка. И если мы будем искать строки для формирования списка только по одному столбцу, то как тогда будет выглядеть данная строка?
Изменено: gogi - 02.10.2014 22:43:48
Фильтрованный выпадающий список средствами VBA
 
Доброго времени суток, форумчане!
Недавно нашел интересный пример поиска по базе данных.

Помогите пожалуйста разобраться с кодом и немного модифицировать его.
Модифицировать нужно следующее: поиск для списка(listbox), должен проходить на другом листе а не на одном, как в примере.
Вот часть кода:
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.CountLarge > 1 Then Exit Sub
Select Case Target.Column
    Case 4, 17 'столбцы на которых срабатывает макрос
        If Target.Row > 3 Then 'строка после которой начинает работать макрос
            bu = True
            With Me.TextBox1
                .Top = Target.Top: .Left = Target.Left: .Text = Target.Value: .Activate 'позиция текстбокса ?????????
            End With

            With Me.ListBox1
                .Top = Target.Top - 10: .Left = Target.Left + 143: .Clear 'позиция листбокса
            End With
            cl = IIf(Target.Column = 4, 22, 25): bu = False           'почему в IIf(Target.Column = 4, 22, 25) три параметра "4,22,25" - я так понимаю что это столбцы для поиска в список, 
                                              ' но если искать только по 1 столбцу, все равно надо эти три параметра?

            Me.TextBox1.Visible = True: Me.ListBox1.Visible = True
        End If
    Case Else
        Me.TextBox1.Visible = False: Me.ListBox1.Visible = False
End Select
End Sub
Если я где-то неправильно закомментировал, прошу поправить.
В VBA  я недавно, поэтому прошу помощи у Вас.
VBA фильтрованный список и вставка данных в ячейку
 
Второй вариант ближе
VBA фильтрованный список и вставка данных в ячейку
 
Дело в том что на листах device1 и device2 будет от 1500 строк с данными. Если делать формулами, то файл будет перегружен и медленным. Для чего хочу сделать выпадающий список -
1.Не всегда известный s/n полностью, а искать это все в 1500 строках данных не очень весело, даже формулами.
     2.список создается с несколькими столбцами, для более полной картины выбираемого поля device

Если бы все ограничивалось формулами, я бы вас не просил о помощи... ))
Изменено: gogi - 23.09.2014 18:21:39
VBA фильтрованный список и вставка данных в ячейку
 
Похоже. А возможно ли сделать, чтобы в любое поле столбца A вводить данные а в а в столбце С той-же строки записывался id ?
Изменено: gogi - 23.09.2014 17:48:23
VBA фильтрованный список и вставка данных в ячейку
 
с 20 по 29 для примера. Естественно, выборка должна больше
VBA фильтрованный список и вставка данных в ячейку
 
ВПР не подходит. Если бы все было так просто ))
Надеюсь в этом примере будет более понятно, если что, спрашивайте  ))
VBA фильтрованный список и вставка данных в ячейку
 
Доброго времени суток, форумчане.
Пользовался поиском, подобного не нашел. Если такая тема уже есть, прошу перенаправить туда.

Задача состоит в следующем: есть 3 листа. На первых 2-х данные. На 3 листе нужно сделать так чтобы при вводе данных в ячейку определенного столбца формировался фильтованный список из определенного столбца листа 1 или 2, но список должен содержать данные не только одного столбца, а нескольких. Тоесть поиск, для списка, по одному столбцу, а список формируется из нескольких столбцов.  И при выборе значения из списка, в ячейку записывалось ID данного значения.
Страницы: 1
Наверх