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

 

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

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

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

ник: Аноним
Пожалуйста, помогите разобраться. Я создала функцию, которая по имеющимся в таблице полям Фамилия, Имя, Отчество, Инициалы формирует полное ФИО. Делаю так:

Public Function ФИО(Код As Integer)
Dim StrSQL As String
Dim MyRst As DAO.Recordset
StrSQL = "SELECT Фамилия, Имя, Отчество, Инициалы FROM Люди WHERE Код = " + CStr(Код)
Set MyRst = CurrentDb.OpenRecordset(StrSQL, dbOpenDynaset)
ФИО = MyRst![Фамилия]
If IsNull(MyRst![Имя]) Then
If Not IsNull(MyRst![Инициалы]) Then
ФИО = ФИО + " " + MyRst![Инициалы]
End If
Else
ФИО = ФИО + " " + MyRst![Имя]
If Not IsNull(MyRst![Отчество]) Then
ФИО = ФИО + " " + MyRst![Отчество]
End If
End If
End Function

При обработке относительно большого числа записей (200-300) возникает заметная задержка. Вариант Фамилия+пробел+Имя+пробел+Отчество работает очень быстро, но не обрабатывает записи, в которых не хватает данных.
Можно ли как-то оптимизировать эту обработку? Спасибо.


Ваше имя:

Пароль:

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

Сообщение:

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

Прикрепить:

 

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