Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> создание новой таблицы через SQL, проблема с форматом 
:(
    Опции темы
киса2009
Дата 24.4.2010, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 21.9.2009
Где: Москва))

Репутация: нет
Всего: нет



И еще раз здравствуйте!Появилась проблемка,связанная с vba в access.
Имеется следующее

создаю динамическую таблицу с новым именем,вот так:

Dim New_Name As String
Dim MyK As ADODB.Command
Set MyK = New ADODB.Command
MyK.ActiveConnection = CurrentProject.Connection
MyS = Trim$(DLookup("ОКУД", "t1", "[Use]=True")) <-здесь смотрю какой ОКУД активен (но это не важно)
New_Name = Original_Name & "_" & Наименование
MyK.CommandText = "SELECT * Into " & New_Name & " FROM " & Original_Name & " WHERE " & True
MyK.Execute

Хочу на выходе получить вот такое имя таблицы(к примеру)-t3_11111_14.12.2001, где 11111 - номер активного ОКУДа, а 14.12.2001 - дата его редакции.
И вот проблема - аксесс не может создать такую таблицу,так как он ругается на точки между цифрами,если дату задать так 14дек2001,то все шикарно создается таблица t3_11111_14дек2001, но это не "кашерно", так как форматом такое не запихнуть в название. И покажу как все происходит,как я не билась,все равно ВСЕ знаки препинания превращаются в точки!!!
Вижу два решения:
1)Как-то заставить его убирать точки и склеивать дату
2)писать так - 14дек2001,но не знаю как прописать под это дело формат

Внизу приложила небольшие картинки - как оно все происходит. Буду рада любой помощи.Спасибо большое! 

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  __________1.rar 22,05 Kb
PM MAIL ICQ   Вверх
Данкинг
Дата 24.4.2010, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 1
Всего: 130



Цитата(киса2009 @  24.4.2010,  23:54 Найти цитируемый пост)
1)Как-то заставить его убирать точки и склеивать дату

Ну так напиши функцию, которая меняет точки на, к примеру, подчёркивания:
Код

Public Function strreplace(sss)
res = ""
 For j = 1 To Len(Trim(sss))
  If Mid(sss, j, 1) = "." Then res = res + "_" Else res = res + Mid(sss, j, 1)
 Next
strreplace = res
End Function

(если в VBA такой функции нет, в чём я сильно сомневаюсь).


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
киса2009
Дата 24.4.2010, 23:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 21.9.2009
Где: Москва))

Репутация: нет
Всего: нет



Кстати, что-то даже и не подумала по поводу функции,спасибо)сейчас попробую
PM MAIL ICQ   Вверх
киса2009
Дата 25.4.2010, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 21.9.2009
Где: Москва))

Репутация: нет
Всего: нет



а sss j 1 это мои dd/mm/yyyy?
и куда лучше функцию прилепить?
PM MAIL ICQ   Вверх
киса2009
Дата 25.4.2010, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 21.9.2009
Где: Москва))

Репутация: нет
Всего: нет



в каком моменте применить эту функцию?
PM MAIL ICQ   Вверх
киса2009
Дата 25.4.2010, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 72
Регистрация: 21.9.2009
Где: Москва))

Репутация: нет
Всего: нет



Проблема решена
PM MAIL ICQ   Вверх
Данкинг
Дата 25.4.2010, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 1
Всего: 130



Цитата(киса2009 @  25.4.2010,  01:05 Найти цитируемый пост)
а sss j 1 это мои dd/mm/yyyy?

Да, это параметр функции.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Akina
Дата 25.4.2010, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 26
Всего: 454



Цитата(киса2009 @  24.4.2010,  23:54 Найти цитируемый пост)
проблема - аксесс не может создать такую таблицу,так как он ругается на точки между цифрами,

А то, что длинные имена следует брать в кавычки, и при наличии точки в имени явно указывать расширение, нам неведомо... для этого же справку прочитать надо...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0931 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.