Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886

Запрос на текст в поле со списком таблицы

26.02.2016, 00:32. Показов 5710. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Очень нужно решить вопрос!

Имеется:
Таблица. В ней поле со списком. В этом поле разрешено добавление нескольких значений.
В это поле я добавляю значения ключевых полей от других таблиц, но отображаются не ключевые поля, а тексты и т. п.

Вопрос: как сделать запрос на содержимое этих полей со списком, да так, чтобы в результате были не ключевые поля, а именно тексты и т. п.???
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.02.2016, 00:32
Ответы с готовыми решениями:

Поле со списком в форме. В таблице - текст, а в поле загружаются цифры
Добрый день! Кто знает, подскажите пожалуйста. По форуму искал, что-то не нашел. Вообщем, сделал поле со списком (запись -...

поле со списком в запрос
Ребята нужна помощь есть две таблици CREATE TABLE IF NOT EXISTS `table1` ( `k_obl` varchar(2) DEFAULT NULL, // код області ...

Из поле со списком в запрос
Ребят такой вопрос: у меня есть на форме поле со списком в котором выбирается какое то значение. Так вот это значение я хочу запихнуть в 3...

27
14 / 14 / 3
Регистрация: 02.03.2015
Сообщений: 37
26.02.2016, 01:00
Если работаете через форму, то то форму в режим конструктора, выделяете поле со списком и идете свойства,число столбцов/ширина столбцов. У ненужных столбцов ширина -0.
0
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
26.02.2016, 02:15  [ТС]
спасибо
но работаю через запрос, так как потом получившийся текст нужно через слияние с вордом использовать
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
26.02.2016, 02:28
Цитата Сообщение от GafarovIS Посмотреть сообщение
Имеется:
Таблица. В ней поле со списком.
Этого быть не должно. Поля подстановки в таблицах недопустимы (с)
0
Эксперт MS Access
26826 / 14506 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
26.02.2016, 02:38
Слишком много неизвестных для внятного ответа.
- поле таблицы многозначное? или обычное?
- источник строк поля (RowSource) это таблица/запрос или список значений?
- отображаемые в запросе ключевые поля это числа? или могут быть и текстовые значения?
- какой столбец в источнике строк является присоединенным (BoundColumn)
- если поле многозначное, то в запросе должна быть строка по всем выбранным значениям?

При всем неприятии полей подстановок в таблицах, и тем более многозначных полей, решения все же есть. Но не перечислять же ответы на все возможные варианты...

Добавлено через 1 минуту
Надо выложить таблицу и запрос. А также понятно объяснить, что должно быть на выходе
0
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
26.02.2016, 03:17  [ТС]
Цитата Сообщение от alvk Посмотреть сообщение
Этого быть не должно. Поля подстановки в таблицах недопустимы (с)
почему не допустимы, если поля со списком предусмотрены самой Access?
Я конечно тоже не особо люблю усложнять саму таблицу, но в запросах нет возможности сделать столбец подстановки с разрешением на выбор нескольких элементов, а в таблице можно.
0
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
26.02.2016, 03:28  [ТС]
БД и изображение вложены.
сможете помочь?

поле в таблице многозначное.
источник строк - другая таблица
ключевые поля - числа.
Миниатюры
Запрос на текст в поле со списком таблицы  
Вложения
Тип файла: rar Database1.rar (16.7 Кб, 12 просмотров)
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
26.02.2016, 03:32
Цитата Сообщение от GafarovIS Посмотреть сообщение
почему не допустимы
Поля подстановки в таблицах
0
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
26.02.2016, 06:51
Цитата Сообщение от GafarovIS Посмотреть сообщение
но в запросах нет возможности сделать столбец подстановки с разрешением на выбор нескольких элементов, а в таблице можно.
Обычными подстановками пользоваться можно. При условии, что вы четко помните, что поле осталось числовым, и что отображаемые на экране значения - это не то, что в поле хранится. Короче, осозненное использование. У многих есть тенденция забывать и считать поле текстовым и пытаться работать с ним как с текстовым.

Но вот как раз поле множественного выбора использовать нежелательно. Это фича для домохозяек.

Для разработчика базы это поле - элементарная лень, которая потом откликнется вам многими "ой, а как же выбрать", "ой, а как же скопировать", "ой, а как применить встроенный фильтр" и т.д.

Делайте связь много-ко-многим самостятельно, путем создания дополнительной таблицы. Заполняйте данные не в запросах, а в форме. Для связи много-ко многим используйте вложенные формы.
0
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
26.02.2016, 07:15
Лучший ответ Сообщение было отмечено GafarovIS как решение

Решение

Теперь по существу вашего вопроса "коды я скрыл, но не могу вытянуть текст в том виде, в каком он в поле".

Ответ: И не сможете. В таком виде, в каком вы видите его в поле, текст нигде не существует. Он временно создается "на лету" на время отображения запроса.

На самом деле ваше поле множественного выбора - эт скрытая еще одна таблица. Которую вы поленились создать лично, поэтому аксес создал ее за вас, и у вас теперь крайне ограничен к этой таблице доступ.

В режиме конструктора запроса вы можете нажать на "+" рядом с названием поля и получить список полей этой таблицы и пытаться работать с ними. Там будут строки, содержащий в отдельности каждый текст - т.е. одна строка "сумцеи", одна "срфырдб" и т.д. Пробуйте.

Почему-то мне кажется, что "удобства" такой работы вам не понравятся очень быстро.

Добавлено через 15 минут
Цитата Сообщение от mobile Посмотреть сообщение
При всем неприятии полей подстановок в таблицах, и тем более многозначных полей, решения все же есть.
Есть. Но решения для самостоятельно созданных таблиц проще и стройнее.
1
Эксперт MS Access
26826 / 14506 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
26.02.2016, 11:28
Лучший ответ Сообщение было отмечено GafarovIS как решение

Решение

Присоединяюсь ко всем оппонентам мульти-полей, да и сам высказывал то же самое. Но решения есть и для них. В выложенной БД 2 запроса: qSimple и qMulty. Запрос qSimple на каждую запись в т.Цитаты создает столько строк, сколько значений есть в мультиполе [Код гиперссылки]. Запрос qMulty с группировкой, конкатенирует отдельные значения для уникального поля Код и собирает в одну строку. Запрос qSimple работает без ВБА, в запросе qMulty функция конкатенации значений
Вложения
Тип файла: rar MultyName.rar (21.1 Кб, 48 просмотров)
2
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
26.02.2016, 15:35  [ТС]
Цитата Сообщение от texnik-san Посмотреть сообщение
не сможете. В таком виде, в каком вы видите его в поле, текст нигде не существует. Он временно создается "на лету" на время отображения запроса
а я мечтал, что смогу объединить строки в одну строку )

Цитата Сообщение от texnik-san Посмотреть сообщение
На самом деле ваше поле множественного выбора - эт скрытая еще одна таблица. Которую вы поленились создать лично, поэтому аксес создал ее за вас, и у вас теперь крайне ограничен к этой таблице доступ.
я уже умею создавать подтаблицы и работать с ними. к полю со списком пришёл так как в запросе нет возможности создавать поля с множественными выборами и в свою очередь объединять строки из этих полей. ну с объединением строк мне уже ясно. через запросы объединить всё, кроме короткого текста не возможно в Access. для этого нужно программирование, макросы, модули... жаль. в LibreOffice Base наверное так дела не обстоят? по крайней мере там нет ограничения на количество столбцов в таблицах и запросах.

Цитата Сообщение от texnik-san Посмотреть сообщение
Почему-то мне кажется, что "удобства" такой работы вам не понравятся очень быстро.
конечная цель - слияние с документом ворд. именно поэтому нужно не работа со списком, а объединение строк списка в одну строку. чтоб в ворде представлялось всё как текст через запятую, а не таблица.

Добавлено через 5 минут
Цитата Сообщение от mobile Посмотреть сообщение
в запросе qMulty функция конкатенации значений
видно, у Вас есть ответы на все вопросы, глубоко ассесс знаете. ну я не спец. для меня предпочтительней вместо использования модулей как в Вашей прикреплённой баз (не понятно что это за модуль: ВБА или другое что-то) использовать запросы на объединение строк в одну строку (перекрёстный) в либре оффис базе.
за ответ спасибо.
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
26.02.2016, 16:05
Цитата Сообщение от GafarovIS Посмотреть сообщение
конечная цель - слияние с документом ворд. именно поэтому нужно не работа со списком, а объединение строк списка в одну строку.
конкатенация это называется, почитайте в интернете и задайте поиск на форуме по этому слову, с полями подстановок в таблице не имеет ничего общего, много примеров на форуме есть и функции и модули и запросы в SQL

p.s. всё, что вы пытаетесь сделать, уже сделано до вас и давно, подумайте об этом.
0
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
26.02.2016, 16:44  [ТС]
Цитата Сообщение от alvk Посмотреть сообщение
p.s. всё, что вы пытаетесь сделать, уже сделано до вас и давно, подумайте об этом.
хорошо если так.
но например, если имеется столбец с неизвесным заранее количеством строк, как же мне сделать контатектацию, если я не знаю сколько строк объединить???
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
26.02.2016, 16:54
Цитата Сообщение от GafarovIS Посмотреть сообщение
если я не знаю сколько строк объединить???
а зачем знать точное количество записей для этого? единственное, что нужно знать - это ограничение тестового поля в 255 символов, его можно при желании обойти, зависит от вашей задачи.
0
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
26.02.2016, 16:57  [ТС]
Цитата Сообщение от alvk Посмотреть сообщение
можно при желании обойти, зависит от вашей задачи
буду рад узнать как это сделать !!!
ну вот например, имеется цитата и к ней могут приписать неизвестное количество гиперссылок. как на выходе иметь строку текста например "цитата" (гиперссылка1; гиперссылка2 ...)? это при том, что размер гиперссылок более 255 символов (а точнее формат длинного текста или формат гиперссылок)
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
27.02.2016, 01:39
А зачем вам перечислять гиперссылки через запятую? Это же винегрет какой-то, оно не читабельно и не применимо нигде. Это видимо опять какой-то способ решения поставленной задачи. А я хочу услышать саму задачу.
1
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
27.02.2016, 01:46  [ТС]
Цитата Сообщение от alvk Посмотреть сообщение
А зачем вам перечислять гиперссылки через запятую?
попытаюсь объяснить понятно.
на каждую цитату бывает несколько гиперссылок.
но когда в документе написан список цитат, то у каждой из цитат должен быть свой список гиперссылки на неё.
ну вот например хотелось бы такой результат:

"учиться учиться и ещё раз учиться!!!"
(гиперссылка1: ленин, гиперссылка2: сталин)

"работа не волк, в лес не убежит!"
(ссылка1, ссылка2, ссылка3)

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

надеюсь получилосб изложить мысль )
0
Эксперт MS Access
26826 / 14506 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
27.02.2016, 08:36
Лучший ответ Сообщение было отмечено GafarovIS как решение

Решение

GafarovIS, поскольку Вам не хочется по разным причинам использовать ВБА, предлагаю вариант конкатенации вообще без ВБА. Но с использованием дополнительной таблицы t2 и трех запросов. В таблице t2 поле Код числовое, уникальное, но не счетчик. Поле Гипер мемо. Запрос q01 очищает t2, запрос q02 записывает в t2 уникальный набор кодов из таблицы Цитаты, запрос q03 записывает в поле t2.Гипер слияние всех гиперссылок из Цитаты (из запроса qSimple). Выполнять их надо в последовательности их номеров: первым q01, далее q02 и последним q03.
Идея алгоритма слияния принадлежит Митину (http://hiprog.com/index.php?op... iew&id=334, метод 3)
Вложения
Тип файла: rar MultyName.rar (23.5 Кб, 22 просмотров)
1
24 / 23 / 0
Регистрация: 10.10.2014
Сообщений: 886
27.02.2016, 08:59  [ТС]
Цитата Сообщение от mobile Посмотреть сообщение
предлагаю вариант конкатенации вообще без ВБА
Module1 разве не является VBA? Тогда что это? Или его удалить как лишнюю часть?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.02.2016, 08:59
Помогаю со студенческими работами здесь

Поле со списком источник запрос (+)
в запросе выбирается два поля ключевое и тесктовое. так вот при изменение в форме в таблицу ставится ключевое поле, а в поле со списком...

Поле со списком и связанные таблицы
Здравствуйте. Две таблицы созданы. Сделал в таблице ТО редукторов поле со списком из таблицы редукторы. Все работает, но почему-то...

Поле со списком (занесения данных с таблицы)
Привет всем! У меня есть в таблице столбик в котором отображаются цыфры от 5 до 9! Вопрос : Как эти цыфры поместить в поле со...

Смена подстановочной таблицы в поле со списком
Может быть, кто то - из опытных Acess-мастеров, подскажет, как можно реализовать следующую функцию: 1.Есть форма 'Main' 2.Есть на...

Поле со списком заполняется по значению из таблицы
С наступающим Новым годом!!! - В форме "Данные иностранного гражданина" (рис.1/1) вбиваем данные гражданина (таблица...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru