Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: П.Полиграфович
Да Osmor вы как всегда правы! Все зависит от номера присоединенного столбца, его типа данных и совместимого типа данных поля, к которому прикрепляем => код соответсвующий.
Делал через поле подстановки (Access организует связь и прикрепяет индекс. поле)

 lSum = Nz(DLookup("S", "Группы", "[Код] = '" & Me.Группа & "'"), 0)

выдавал типичную ошибку для DlookUp "Предыдущая операция прервана пользователем"

При использовании селекта выбирающего только одно поле (в моем случае) [группы]работает, как

lSum = Nz(DLookup("SumInDay", "Группы", "Группа = " & Me!Группа), 0) 
 Me![Сумма].Value = lSum

так и:

Private Sub Группа_AfterUpdate()
Dim recst As Recordset
    Set recst = CurrentDb.OpenRecordset("SELECT [SumInDay] FROM [Группы] WHERE [Группа] ='" & Me.Группа & "'")
    If recst.RecordCount <> 0 Then
        Me!Сумма = recst!SumInDay
    End If
    recst.Close
    Exit Sub
End Sub

НО что не могу понять?:
При использовании этих двух способов при выполнении кода:

strSQL = "INSERT INTO [detail] ...
...
         "" & Me!Сумма & ", " & Me!Группа& ");"
                       With DoCmd
                       .SetWarnings False
                       .RunSQL strSQL

выдает следующее: файл параметр.bmp
т.е. поле "группа" он обрабатывает, как параметр. ПОЧЕМУ?
Спасибо за информацию


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.