Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2013, 12:58   #1
SMShrek
Пользователь
 
Аватар для SMShrek
 
Регистрация: 02.03.2010
Сообщений: 43
По умолчанию Функция для сбора всех значений в поле в одну запись

Добрый день!

Нужно "тело" функции, которая бы собирала в запросе из всех непустых записей поля, в одну запись через ("," или ";" или ...)

Мне кажется, что это должен быть цикл - но как его написать я не знаю

Пример: Есть таблица "Таб1" с полями: "Код", "Текст1", "Признак" и т.д. общее количество записей хранимых в таблице более 2000 (будет увеличиваться)…
далее, есть запрос с группировкой данных по некоему признаку из поля "Признак".
Нужно, чтобы функция в этом запросе вывела, все значения из поля "Текст1" которые >"" через запятую в одном значении… (не знаю как объяснить понятнее, если нужны еще какие нибудь пояснения спрашивайте буду пробовать…)

Добавил пример:...
Вложения
Тип файла: rar Database1.rar (12.2 Кб, 11 просмотров)

Последний раз редактировалось SMShrek; 16.12.2013 в 18:41.
SMShrek вне форума Ответить с цитированием
Старый 16.12.2013, 18:03   #2
Myhaylo
Форумчанин
 
Регистрация: 19.07.2012
Сообщений: 520
По умолчанию

Примеров много:
http://am.rusimport.ru/msaccess/topic.aspx?ID=672
http://am.rusimport.ru/msaccess/topic.aspx?ID=688
http://am.rusimport.ru/msaccess/topic.aspx?ID=293
А вопросов - ещё больше:
1. А что именно Вы пытаетесь сделать?
2. Складывать значения нужно всегда только по полю "Текст1"?
3. Нужно ли брать в кавычки текстовые значения?
Предупреждение: в переменную типа string нельзя поместить более 32 кБ. Поэтому фраза

общее количество записей хранимых в таблице более 2000 (будет увеличиваться)…

быстро убеждает в необходимости задуматься над задачей...

А як там у Вас на полтавському Майдані?
Окупант, руки прочь от Украины!!! Слава Героям!
Myhaylo вне форума Ответить с цитированием
Старый 16.12.2013, 18:36   #3
SMShrek
Пользователь
 
Аватар для SMShrek
 
Регистрация: 02.03.2010
Сообщений: 43
По умолчанию

Цитата:
Сообщение от Myhaylo Посмотреть сообщение
А вопросов - ещё больше:
1. А что именно Вы пытаетесь сделать?
нужно собрать значения из поля "Текст1" через запятую по определенному признаку..

2. Складывать значения нужно всегда только по полю "Текст1"?
нет эту же операцию нужно проделывать и для других полей "Текст2" и т.д. ...

3. Нужно ли брать в кавычки текстовые значения?
нет не нужно, можно просто перечислить через "," ...
Предупреждение: в переменную типа string нельзя поместить более 32 кБ. Поэтому фраза

общее количество записей хранимых в таблице более 2000 (будет увеличиваться)…

быстро убеждает в необходимости задуматься над задачей...
я думаю проблем не будет (много пустых строк а значения очень короткие)...

Сделал базу-пример сейчас загружу...

А як там у Вас на полтавському Майдані?
Намет стоїть цілодобово - людей небагато, під вечір більшає... (слідкуємо за Києвом)

Последний раз редактировалось SMShrek; 16.12.2013 в 22:23.
SMShrek вне форума Ответить с цитированием
Старый 17.12.2013, 00:49   #4
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте SMShrek.
"..которая бы собирала в запросе из всех непустых записей поля.." - в ADO существует функция GetString,
которая может быть использована в VBA конструкции пользовательской функции.

Успехов Вам.
Евгений.
Вложения
Тип файла: rar Database1.rar (13.6 Кб, 54 просмотров)
Teslenko_EA вне форума Ответить с цитированием
Старый 17.12.2013, 10:46   #5
SMShrek
Пользователь
 
Аватар для SMShrek
 
Регистрация: 02.03.2010
Сообщений: 43
По умолчанию

Цитата:
Сообщение от Teslenko_EA Посмотреть сообщение
Здравствуйте SMShrek.
"..которая бы собирала в запросе из всех непустых записей поля.." - в ADO существует функция GetString,
которая может быть использована в VBA конструкции пользовательской функции.

Успехов Вам.
Евгений.
Это то, что нужно... Спасибо огромное!!!
-------------


И "Myhaylo" спасибо...

Задача выполнена, тема закрыта.
SMShrek вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Извлечение значений из всех колонок списка в одну строку в Access jamol Microsoft Office Access 1 14.11.2012 20:35
Запись значений в поле Soton БД в Delphi 1 15.05.2012 09:26
Функция OR но для шести значений Флина Microsoft Office Excel 12 13.11.2010 14:35
Экспорт значений из нескольких документов Word в одну таблицу Excel для дальнейших расчетов. YJYNGK Microsoft Office Excel 0 30.10.2010 13:42
Запись всех строк в одну. Lazio Помощь студентам 1 10.10.2009 21:44