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

 

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

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

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

ник: osmor

Function ТелефАдрес(x)
Dim MyCriteria As String
Dim MyRst As Recordset
MyCriteria = "[НомерТел] = '" & x & "'"
Set MyRst = CurrentDb.OpenRecordset("Телефоны", dbOpenDynaset)
With MyRst
.FindFirst MyCriteria
If Not MyRst.NoMatch Then
k = MyRst![Код]
DoCmd.OpenForm "Телефоны",, ,"[Код] = " & k, acFormEdit
Else
   DoCmd.OpenForm "Телефоны",,,,acFormAdd,,x

End If
End With
MyRst.Close
End Function


В форме телефоны на событие загрузка пишем:

Private Sub Form_Load()
If Me.DataEntry And Nz(OpenArgs, "") <> "" Then Me!НомерТел= OpenArgs
End Sub


Общие рекомендации вместо


MyCriteria = "[НомерТел] = '" & x & "'"
Set MyRst = CurrentDb.OpenRecordset("Телефоны", dbOpenDynaset)
With MyRst
.FindFirst MyCriteria
....


я бы использовал dlookup

Dim MyRst As Recordset - желательно указывать тип рекордсета во избежании скрытых ошибок
в вашем случае

Dim MyRst As dao.Recordset


Ваше имя:

Пароль:

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

Сообщение:

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

Прикрепить:

 

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