Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поиск строки в таблице .............. / 6 сообщений из 6, страница 1 из 1
28.11.2005, 22:28:56
    #33404604
EvgenyM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск строки в таблице ..............
на основании нескольких полей.
В таблице семь столбцов.
То есть если смотреть построчно, то получается в строке 7 полей.
Вот если значения первых шести полей совпадут со значениями полей из формы, то седьмое поле формы автоматически заполниться седьмым значением поля из строки таблицы.

Я здесь видел только подтвержения, что типа да такая строка в таблице есть, а вот чтобы вот так не нашел.
...
Рейтинг: 0 / 0
29.11.2005, 08:16:06
    #33404789
Поиск строки в таблице ..............
У тебя есть некая база (неплохо было бы узнать какая), есть VB unbound форма, с семью текстовыми полями на ней. Ты поочередно вводишь шесть полей, и хочешь, чтобы после ввода в последнее поле, в седьмом поле появлялась соответсвующая запись из таблицы, если, конечно, все шесть полей соответсвуют табличным данным?
...
Рейтинг: 0 / 0
29.11.2005, 10:36:25
    #33405051
EvgenyM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск строки в таблице ..............
Есть таблица, даже две с одинаковыми заголовками колонок. В них и надо найти строчку на основании шести полей со списком.
Т.е. поля заполнены из этих же таблиц т.к. они являются источниками строк. и в таблице обязательно есть одна строка в которой первые 6 полей совпадают со значениями из формы.

Юзер запускает форму заполняет неторопясь поля со спосками( вводить с клавы ничё не надо) а когда заполняет 6 поле со списком, то просто поле заполняется автоматически (полесосписком6_афтер_ абдейт()).
Вообщем там цена товара, не будет у юзера права выбрать цену.
...
Рейтинг: 0 / 0
29.11.2005, 11:31:10
    #33405235
Поиск строки в таблице ..............
Пробуй.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
Private cnn As New ADODB.Connection

Private Sub ComboBox6_Change()
    Dim strSQL As String
    
    strSQL = "SELECT Column7 " _
      & "FROM tblPrice " _
      & "WHERE Column1='" & Me.ComboBox1 & "' AND " _
      & "Column2='" & Me.ComboBox2 & "' AND " _
      & "Column3='" & Me.ComboBox3 & "' AND " _
      & "Column4='" & Me.ComboBox4 & "' AND " _
      & "Column5='" & Me.ComboBox5 & "' AND " _
      & "Column6='" & Me.ComboBox6 & "'"
    
    Me.TextBox7 = fnSqlLookup(strSQL)
End Sub

Private Sub UserForm_Activate()
    Dim rst As New ADODB.Recordset
    
    cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" _
      & "Data Source=D:\My Databases\dbTest.mdb;" _
      & "Persist Security Info=False"
    
    rst.Open "tblPrice", cnn, adOpenStatic, adLockOptimistic, adCmdTable
    
    Do Until rst.EOF
        Me.ComboBox1.AddItem rst!Column1
        Me.ComboBox2.AddItem rst!Column2
        Me.ComboBox3.AddItem rst!Column3
        Me.ComboBox4.AddItem rst!Column4
        Me.ComboBox5.AddItem rst!Column5
        Me.ComboBox6.AddItem rst!Column6
        rst.MoveNext
    Loop
    
    rst.Close
    Set rst = Nothing
End Sub

Private Function fnSqlLookup( _
  strSQL As String) As Variant
    Dim avarArray As Variant
    
    On Error GoTo HandleError
    
    avarArray = cnn.Execute(strSQL).GetRows
    
    fnSqlLookup = avarArray( 0 ,  0 )

ExitHere:
    Exit Function
HandleError:
    Select Case Err.Number
        Case  3021 
            fnSqlLookup = "Такой записи нет!"
        Case Else
            MsgBox Err.Number & " : " & Err.Description
            Resume ExitHere
    End Select
End Function
...
Рейтинг: 0 / 0
29.11.2005, 14:54:46
    #33406057
EvgenyM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск строки в таблице ..............
Да...................
Пожалейте, сжальтесь.......................
Это не для меня.
Я в этом никада не разберусь.
Вообщем я по-простому через рекордсет. Вроде работает как надо.
Наконец-то допёрло как рекордсет работает.
Почти как в 1с или в 1с почти как в аксесе.

Спасибо.
...
Рейтинг: 0 / 0
29.11.2005, 15:40:15
    #33406232
Поиск строки в таблице ..............
Да здесь, вроде, все предельно просто.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Поиск строки в таблице .............. / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]