Можно ли,сделать ячейку или форму,чтобы при наборе символов в ней происходил поиск по алфавиту без выборки,т.е. проосто переход к полям
этого ряда,без выборки вроде автофильтра. Как например в каком-нибудь электронном словаре.
Вот пример в присоединенном файле:
В единственном ряду названия городов.
Вверху TextBox
Хотелось бы так ,чтобы когда я пишу в TextBoxe'е
(он закреплен и не сдвигается скроллом),
в окне было видно именно этот город,причем название города в текстбоксе может быть введено не до конца.
Помогите с кодом на VB,очень надо...
Здравствуйте, D_o_c_t_o_r, Вы писали:
D__>Можно ли,сделать ячейку или форму,чтобы при наборе символов в ней происходил поиск по алфавиту без выборки,т.е. проосто переход к полям
D__>этого ряда,без выборки вроде автофильтра. Как например в каком-нибудь электронном словаре.
D__>Вот пример в присоединенном файле:
D__>В единственном ряду названия городов.
D__>Вверху TextBox
D__>Хотелось бы так ,чтобы когда я пишу в TextBoxe'е
D__>(он закреплен и не сдвигается скроллом),
D__>в окне было видно именно этот город,причем название города в текстбоксе может быть введено не до конца.
D__>Помогите с кодом на VB,очень надо...
Приветик! По твоему вопросу я так понял что где-то должен лежать пример НЕ нашел!
Если я тебя правильно понял то вот погляди...
Может быть есть и др. способ но я пока такого не заню.
Да а не проще твои данные в Access'овскую Базу перекинуть и там с ними колбаситься там будет проще с поиском
Option Explicit
Public objExcel As Object
Public objWorkbook As Object
Public objWorksheet As Object
Public x As Long
Private Sub cmdStart_Click()
Unload Me
End Sub
Private Sub Form_Load()
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Add(App.Path & "\List_1.xls")
objExcel.Visible = True
Set objWorksheet = objWorkbook
End Sub
Private Sub Form_Unload(Cancel As Integer)
objExcel.displayalerts = False
objExcel.Quit
Set objExcel = Nothing
End Sub
Private Sub Text1_Change()
Dim i As Long
Dim lenStr As Long
x = UBound(objWorksheet.ActiveSheet.UsedRange.Value)
lenStr = Len(Text1.Text)
For i = 1 To x
If Left(objExcel.Cells(i, 1), lenStr) = Text1.Text Then
label1.Caption = objExcel.Cells(i, 1)
objExcel.Cells(i, 1).Select
Exit For
End If
Next i
End Sub
Нельзя смеяться над патриархами.
"Патриархи"
nnnnn
| — _ |
| O o |
[ '\(_) /`]
\___/