Access VBA вывод сообщения

c006781
Дата: 27.12.2015 20:53:13
Здравствуйте!
Ситуация такова.
Экспериментировал с запросами и сообщениями в VBA.
Таблица:
ID_OK_PK - Счетчик
Kompitencia - Текстовый
OK_PK - Текстовый
Opisanie - Текстовый

Код на кнопку:
Dim MyTable_SQL
Dim MyTable As Object
MyTable_SQL = ""
MyTable_SQL = MyTable_SQL + "SELECT OK_PK.ID_OK_PK, OK_PK.Kompitencia, OK_PK.OK_PK, OK_PK.Opisanie "
MyTable_SQL = MyTable_SQL + " FROM OK_PK WHERE (((OK_PK.ID_OK_PK)=1));"
Set MyTable = CurrentDb.openrecordset(MyTable_SQL)

MsgBox (CStr(Round(MyTable.Fields(0))) + " ;")

При выводе 0 и 2 столбца ошибок нет.
Но при выводе 1 и 3 выдаётся ошибка "type mismatch"

Всяко-разно коверкал и таблицу и вывод сообщения но реакции нет ...
В чём секрет?
Akina
Дата: 27.12.2015 21:03:58
Наверное, в том, что Round ждёт число, и слегка офигевает, получая строку...
3063
Дата: 27.12.2015 21:09:38
c006781,

используй для конкатенации & вместо +
c006781
Дата: 27.12.2015 21:44:56
ооо! Я идиот! Пора поспать! благодарю. а знак "&" жрёт пробелы в начале и в конце. из-за этого запрос не правельный получается...
3063
Дата: 27.12.2015 23:01:09
c006781
знак "&" жрёт пробелы в начале и в конце. из-за этого запрос не правельный получается...
докажи
Akina
Дата: 27.12.2015 23:56:25
c006781
знак "&" жрёт пробелы в начале и в конце

Сказки.
ПЕНСИОНЕРКА
Дата: 28.12.2015 07:07:20
c006781
При выводе 0 и 2 столбца ошибок нет.
Но при выводе 1 и 3 выдаётся ошибка "type mismatch"


Попробуйте
MsgBox (MyTable.Fields(0) &" ;")