Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4   вперед  Ctrl      все
 Re: Проблема с date в VBA  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 186
Вместо запроса INSERT INTO ... VALUES ... открывайте Recordset и добавьте запись. И не понадобится ни форматирование даты, ни борьба с NULL.
3 янв 19, 17:54    [21777966]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Rikozenit
Member

Откуда:
Сообщений: 119
Swa111,
CurrentProject.Connection.Execute "INSERT INTO Онлайн (Финиш_компл_пл)" _
& "VALUES (" & iif(isNull(Финиш_компл_пл, " Null ", "#" & Format(Финиш_компл_пл, "mm\/dd\/yyyy") & "#") & ");"

Спасибо большое! Отлично работает!

Кривцов Анатолий
Вместо запроса INSERT INTO ... VALUES ... открывайте Recordset и добавьте запись. И не понадобится ни форматирование даты, ни борьба с NULL.

Если бы я ещё знал, как это делается... Как-то так?..
Dim Онлайн As DAO.Recordset 
Set Онлайн = CurrentDb.OpenRecordset("SELECT * FROM [Онлайн]") 
Онлайн.AddNew 
Онлайн![Финиш_компл_пл] = Me.Финиш_компл_пл.Value 
Онлайн.Update 
Онлайн.Close 
Set Онлайн = Nothing 
DoCmd.Close 
End Sub 
9 янв 19, 16:06    [21780732]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Rikozenit,
Private Sub cmb_Click() 'или другое событие
Dim rs As Recordset
Set rs = CurrentDb.OpenRecordset("tbl") 'таблица назначения
rs.AddNew
rs!дата = Me.полеСдатой 'форматировать не надо 
'аналогично для других полей
rs.Update
End Sub
9 янв 19, 17:56    [21780924]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Rikozenit
Member

Откуда:
Сообщений: 119
sdku, благодарю!! Ваш вариант для меня намного удобнее, ибо задача была скопировать 27 разноформатных полей и sql строка уже смотрелась дико)
10 янв 19, 10:03    [21781291]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 186
Rikozenit, я добавлю, что Recordset лучше открывать пустым (так быстрее):
Set rs = CurrentDb.OpenRecordset("tbl", dbOpenDynaset, dbAppendOnly)
или
Set rs = CurrentDb.OpenRecordset("SELECT * FROM tbl WHERE False")
10 янв 19, 16:08    [21781825]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Кривцов Анатолий
Rikozenit, я добавлю, что Recordset лучше открывать пустым (так быстрее):
Set rs = CurrentDb.OpenRecordset("tbl", dbOpenDynaset, dbAppendOnly)
или
Set rs = CurrentDb.OpenRecordset("SELECT * FROM tbl WHERE False")
для одой записи из 27 полей это крайне необходимо
10 янв 19, 18:18    [21782047]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Rikozenit
Member

Откуда:
Сообщений: 119
Кривцов Анатолий, спасибо!
sdku, это я копирую 27 полей, а всего у меня в этой таблице 196 полей, в этом случае пустой рекордсет более оправдан?
11 янв 19, 08:36    [21782406]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Кривцов Анатолий
Member

Откуда:
Сообщений: 186
sdku
Кривцов Анатолий
Rikozenit, я добавлю, что Recordset лучше открывать пустым (так быстрее):
Set rs = CurrentDb.OpenRecordset("tbl", dbOpenDynaset, dbAppendOnly)
или
Set rs = CurrentDb.OpenRecordset("SELECT * FROM tbl WHERE False")
для одой записи из 27 полей это крайне необходимо
Вопрос не в том, сколько полей, а в том, что Recordset открывается для добавления записи. Зачем тащить в него миллион существующих?
11 янв 19, 10:46    [21782520]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Кривцов Анатолий,
обычно добавляю в справочники, которые не большие,а если мильон записей-тогда конечно...
11 янв 19, 12:43    [21782686]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
Аксесс 2007 возникла проблема с прописанием типа данных в Модуле. Может кто сталкивался

К сообщению приложен файл. Размер - 48Kb
23 янв 19, 11:46    [21791948]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
RS открывается так:
Dim dbMy as Database, rst as Recordset
Set dbMy=CurrentDB
Set rst=dbMy.OpenRecordset("SELECT....")
23 янв 19, 12:14    [21791964]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Хотелось бы узнать: а что такое
NodeNM=Node.text
NodeNM1=Node.text
23 янв 19, 12:22    [21791969]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
NodeNM это переменные
23 янв 19, 13:06    [21792023]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
__Michelle
Member

Откуда:
Сообщений: 3011
Дар1,

Библиотеку подключить надо.
23 янв 19, 13:22    [21792041]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
В чем проблема
Хочу в форме Вставить Тривиью АктивХ
Все возможные библиотеки подключил
Если что подскажете буду благодарен
23 янв 19, 13:30    [21792052]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Дар1,
Не все так просто как кажется:

К сообщению приложен файл (treeviewP1.rar - 48Kb) cкачать
23 янв 19, 15:40    [21792333]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
Согласен с в 64 разрадных системах эти надстройки работают по непонятному алгоритму.
В одних приложениях функционируют нормально из под офиса 2007, в других нет Притом что однин и тот же проект работает и на Висте и под Вин 10 64. Хочу понять причину
24 янв 19, 10:37    [21793000]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
sdku,
База открылась, но при открытии формы Дерево, прекращается работа Акссесс
24 янв 19, 10:41    [21793012]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Дар1,
ну,не знаю, под win7(86),А-2007 работает нормально-а у Вас что?
24 янв 19, 11:02    [21793042]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
sdku,
У меня Вин 10 64 и Офис 2007
24 янв 19, 11:12    [21793055]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Дар1,
а это

К сообщению приложен файл (Treeview.zip - 85Kb) cкачать
24 янв 19, 11:15    [21793064]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Может коллеги посоветуют что-нибудь, более серьезное, кроме как проверить ссылки
24 янв 19, 11:35    [21793087]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
sdku,
Спасибо большое, но и это не работает
24 янв 19, 12:42    [21793210]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5601
Дар1
Согласен с в 64 разрадных системах эти надстройки работают по непонятному алгоритму.
В одних приложениях функционируют нормально из под офиса 2007, в других нет Притом что однин и тот же проект работает и на Висте и под Вин 10 64. Хочу понять причину
А вот что написано на сайте Microsoft:"Элементы управления ActiveX и надстройки COM, написанные для 32-разрядного Office, не будут работать в 64-разрядной версии" (Treeview-элемент ActiveX. Подчеркиваю-речь об Office а не о Windows. Хотя некоторые "спецы"(повбывал бы гадов) говорят что "если система 64 то и Office надо ставить 64")
В установке 64-разрядного Office не вижу никакой необходимости (разве что работать с гигантскими файлами свыше 2гб)
27 янв 19, 00:57    [21795046]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с date в VBA  [new]
Дар1
Member

Откуда:
Сообщений: 20
sdku,

Интересная мысль, как то не придавал этому значения.
Считал что раз система 64 то и приложения надо ставить 64 битное.
Спасибо за подсказку!!!
29 янв 19, 12:31    [21796702]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4   вперед  Ctrl      все
Все форумы / Microsoft Access Ответить