ник: Егор
Сначала надо найти запись, удовлетворяющую условию, а потом только обновлять(или менять значение). Вот какой вопрос.
я использую вот что
Private Sub FindAndChange()
Dim strCriteria As String
Dim rst As Recordset
On Error GoTo FindAndChangeErr
'Открытие набора записей
Set rst = CurrentDb.OpenRecordset("TableName", dbOpenDynaset)
'Установка критериев поиска
strCriteria = "TextFieldName='Значение поля'"
With rst
If .EOF = True Then GoTo FindAndChangeEnd 'Если таблица пустая то на выход...
.MoveLast 'Заполнение набора записями
.MoveFirst 'Возврат в начало
'Поиск
.FindFirst strCriteria
If Not rst.NoMatch Then 'Если искомое найдено
'Вкл режим редактирования
.Edit
'Изменение значения поля
!CurrFieldName = 3.62
.Update 'Сохранение
Else
MsgBox "По указанным критериям запись не найдена!", vbInformation
End If
End With
FindAndChangeEnd:
On Error Resume Next
rst.Close
Set rst = Nothing
Exit Sub
FindAndChangeErr:
MsgBox "Процедура [...] привела к ошибке:" & vbCrLf & _
Err.Description & vbCrLf & " Err#" & Err.Number, vbCritical
Resume FindAndChangeEnd
End Sub
Но здесь изменяется только 1 запись, а у меня таких записей как минимум 2, вот и надо переделать, но у меня не выходит - Access виснет