Мы должны четко обозначить цель.Вы хотите «просто» привести или изменить тип столбца, возвращенный в запросе, или хотите изменить фактический тип столбца в таблице базы данных?Это две ОЧЕНЬ разные цели.
Чтобы использовать код для изменения типа столбца, вы должны создать (добавить) новый тип столбца, перенести данные, а затем удалить старый столбец и затем переименовать его.столбец возвращается к старому типу.
Другими словами, вы не можете просто изменить тип данных, так как Access будет ТО затем обновлять каждую строку до нового типа данных.
Система пользовательского интерфейса фактически делает вышеописанное за кулисами.
Если вы используете код DAO, вам понадобится следующий код, обозначенный здесь:
http://accessblog.net/2007/03/how-to-change-field-type-using-dao.html
Однаковыше приведено довольно много кода.Вместо кода DAO для добавления столбца вы МОЖЕТЕ использовать команду DDL.
(язык определения данных SQL) для изменения типа.Таким образом, в коде вы можете сделать это:
Dim db As dao.Database
Dim strSQL As String
Set db = CurrentDb
strSQL = "ALTER TABLE dbo_tblHotels1 ALTER COLUMN MyAmount currency"
db.Execute strSQL, dbFailOnError
Итак, выше мы меняем столбец «MyAmount» на тип валюты.