Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.09.2014, 09:56   #1
bkatk
Новичок
Джуниор
 
Регистрация: 07.09.2014
Сообщений: 2
По умолчанию использование FindFirst в access

Доброе время суток.
Часть кода
.....
Код:
Do While Not rs.EOF()
        fam = rs!Фамилия
        If (fam = fio) And (rs!Группа = grupa) And (rs!Предмет = predmet) Then
            If i = 0 Then
            ved.AddNew
            ved!grups = rs!Группа
            ved!fios = fam
            ved!predmet = rs!Предмет
            nom_rec = nom_rec + 1
            ved!id = nom_rec
            MsgBox nom_rec
            i = i + 1
         Else
         
  ' ved.FindFirst "ved!id =" & ved!id 
         
         ved.Edit
         End If
 Select Case rs!Íîìåð_ìåñÿöà
        Case Is = 9
        sum = 0
        sum = Nz(rs!d1) + Nz(rs!d2) + Nz(rs!d3) + Nz(rs!d4) + Nz(rs!d5) + Nz(rs!d6) + Nz(rs!d7) + Nz(rs!d8) + _
Nz(rs!d9) + Nz(rs!d10) + Nz(rs!d11) + Nz(rs!d12) + Nz(rs!d13) + Nz(rs!d14) + Nz(rs!d15) + Nz(rs!d16) + Nz(rs!d17) + _
Nz(rs!d18) + Nz(rs!d19) + Nz(rs!d20) + Nz(rs!d21) + Nz(rs!d22) + Nz(rs!d23) + Nz(rs!d24) + Nz(rs!d25) + _
Nz(rs!d26) + Nz(rs!d27) + Nz(rs!d28) + Nz(rs!d29) + Nz(rs!d30) + Nz(rs!d31)
        ved!m9 = sum
        Case Is = 10
        sum = 0
................
Если условие выполняется 1 раз то в Рекодсет ved (таблица Ведомость) добавляется запись и в поля записываются значения (Работает).
Когда условие выполняется 2,3 .... разы данные должны записываться в туже запись но в другие поля, Не работает -
код ved.Edit - eror3021 текущая запись отсутствует. Хотя в таблице запись есть, и данные записаны (первый шаг цикла сработал)
для установки в эту же запись Добавил
Код:
ved.FindFirst "ved!id =" & nom_rec
eror3251 Операция не поддерживается для объектов этого типа
nom_rec - Integer
поле id -целое.
Может синтаксис FindFirst не так записал, подозрения на кавычки.
Заранее спасибо.

Последний раз редактировалось Stilet; 12.09.2014 в 10:06.
bkatk вне форума Ответить с цитированием
Старый 12.09.2014, 13:15   #2
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,079
По умолчанию

попробуйте

Код:
ved.AddNew
            ved!grups = rs!Группа
            ved!fios = fam
            ved!predmet = rs!Предмет
            nom_rec = nom_rec + 1
            ved!id = nom_rec
         '' MsgBox nom_rec
            i = i + 1
ved.update
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Старый 12.09.2014, 13:56   #3
bkatk
Новичок
Джуниор
 
Регистрация: 07.09.2014
Сообщений: 2
По умолчанию

Уже есть в конце цикла
....
Case Is = 10
sum = 0
sum = Nz(rs!d1) + Nz(rs!d2) + Nz(rs!d3) + Nz(rs!d4) + Nz(rs!d5) + Nz(rs!d6) + Nz(rs!d7) + Nz(rs!d8) + _
Nz(rs!d9) + Nz(rs!d10) + Nz(rs!d11) + Nz(rs!d12) + Nz(rs!d13) + Nz(rs!d14) + Nz(rs!d15) + Nz(rs!d16) + Nz(rs!d17) + _
Nz(rs!d18) + Nz(rs!d19) + Nz(rs!d20) + Nz(rs!d21) + Nz(rs!d22) + Nz(rs!d23) + Nz(rs!d24) + Nz(rs!d25) + _
Nz(rs!d26) + Nz(rs!d27) + Nz(rs!d28) + Nz(rs!d29) + Nz(rs!d30) + Nz(rs!d31)
ved!m10 = sum

End Select
ved.Update

End If
rs.MoveNext
Loop
.....
bkatk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Access использование команды по типу limit из mysql Chicharrr Помощь студентам 0 26.06.2012 18:52
Использование SQL в Access Insightful Microsoft Office Access 3 29.04.2010 14:37
Использование CREATE TABLE для Access at0104 БД в Delphi 0 10.09.2009 11:16
findfirst aesoem Общие вопросы Delphi 7 14.04.2008 17:06
FindFirst matus Помощь студентам 2 21.02.2008 19:34