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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2012, 03:20   #11
АлИван
Пользователь
 
Регистрация: 13.03.2012
Сообщений: 21
По умолчанию

Я думаю справочник (или данные в другой какой-то форме) по членам семьи работника используется практически в любой базе, связанной с персоналом. В примитиве как правило это просто поле "члены семьи". Дело в том что различные организации в каком только формате не требуют эти данные данные. То просто имена детей, то еще год рождение (или полную дату), то фамилия, имя, отчество - вобщем фантазии хватает. Вот поэтому возник такой справочник с разбивкой информации на составляющие. Просто соединить информацию можно практически всегда, а вот разбить... Там могут быть и данные о документах, удостоверяющих родство (св.о рождении, решения суда и т.п.) Ведь кроме детей могут быть иждевенци и т.п.
А что касается структуры, когда ее создаешь сам она постоянно совершенствуется...
АлИван вне форума Ответить с цитированием
Старый 04.01.2014, 16:12   #12
GrawnUp
 
Регистрация: 04.01.2014
Сообщений: 9
По умолчанию

Здравствуйте

В главной форме есть "подчиненная форма Keywords" -
Создана запросом
SELECT Keywords.Код, Keywords.Адрес, Keywords.Слово
FROM Keywords;

Код, в данном случае - ключевое неповторяющееся поле из Keywords
Адрес - поле объединения с текущим полем главной формы
Слово - уникальное String

Что хочется:
1. В отдельном поле главной формы необходимо вывести строку из всех "слов" входящих
в подчиненную форму Keywords с разделителем ", "


Самостоятельно не смог, заблудился в синтаксисе Access совершенно
GrawnUp вне форума Ответить с цитированием
Старый 04.01.2014, 17:54   #13
GrawnUp
 
Регистрация: 04.01.2014
Сообщений: 9
По умолчанию

Сделал так:

Данные =СоставСемьи([Адрес])

Модуль

Function СоставСемьи(Адрес As String) As String
Dim R As Recordset
Set R = CurrentDb.OpenRecordset("select [Слово] from [Keywords] WHERE [Адрес]='" & Адрес & "'")
While Not R.EOF
СоставСемьи = СоставСемьи & R.Fields("Слово") & ", "
R.MoveNext
Wend
Set R = Nothing
End Function

Не работает: #Имя?

видимо я не способен, сделайте мне за "пиво" плз
GrawnUp вне форума Ответить с цитированием
Старый 04.01.2014, 23:51   #14
Myhaylo
Форумчанин
 
Регистрация: 19.07.2012
Сообщений: 520
По умолчанию

Function СоставСемьи(Адрес As String) As String
Dim S As String
Dim R As Recordset
Set R = CurrentDb.OpenRecordset("select [Слово] from [Keywords] WHERE [Адрес]='" & Адрес & "'")
While Not R.EOF
S = S & R!Слово & ", "
R.MoveNext
Wend
СоставСемьи = S
Set R = Nothing
End Function
Окупант, руки прочь от Украины!!! Слава Героям!
Myhaylo вне форума Ответить с цитированием
Старый 05.01.2014, 04:02   #15
GrawnUp
 
Регистрация: 04.01.2014
Сообщений: 9
По умолчанию

Опс. Спасибо. Заработало.
GrawnUp вне форума Ответить с цитированием
Старый 10.01.2014, 00:13   #16
GrawnUp
 
Регистрация: 04.01.2014
Сообщений: 9
По умолчанию

Hi, вдруг возник вопрос))

Если получаю результат более 255 символов, как присвоить самой Функции типа данных Memo и оный же для S.
Компилятор Аксес ругается на Memo.. или это просто не возможно?

спс
GrawnUp вне форума Ответить с цитированием
Старый 10.01.2014, 10:54   #17
Myhaylo
Форумчанин
 
Регистрация: 19.07.2012
Сообщений: 520
По умолчанию

Нічого не збагнув...
Кто - Memo, кто - String, а кто - 255 символов?
Покажите текст программы, текст сообщения об ошибке и место её возникновения...
Окупант, руки прочь от Украины!!! Слава Героям!
Myhaylo вне форума Ответить с цитированием
Старый 10.01.2014, 11:45   #18
GrawnUp
 
Регистрация: 04.01.2014
Сообщений: 9
По умолчанию

#14

Function СоставСемьи(Адрес As String) As Memo
Dim S As Memo
Dim R As Recordset
Set R = CurrentDb.OpenRecordset("select [Слово] from [Keywords] WHERE [Адрес]='" & Адрес & "'")
While Not R.EOF
S = S & R!Слово & ", "
R.MoveNext
Wend
СоставСемьи = S
Set R = Nothing
End Function

Там где исправил String на Memo - и ругается

Текст - Compile error. User deined type not defined

Последний раз редактировалось GrawnUp; 10.01.2014 в 11:47.
GrawnUp вне форума Ответить с цитированием
Старый 10.01.2014, 12:47   #19
Myhaylo
Форумчанин
 
Регистрация: 19.07.2012
Сообщений: 520
По умолчанию

И правильно ругается - ведь в VBA не существует типа Memo для переменных... Такой тип данных есть только в таблицах.
А что Вы делаете? Какова цель сбора длинной текстовой последовательности?
Окупант, руки прочь от Украины!!! Слава Героям!
Myhaylo вне форума Ответить с цитированием
Старый 10.01.2014, 16:06   #20
GrawnUp
 
Регистрация: 04.01.2014
Сообщений: 9
По умолчанию

Здравствуйте, Myhaylo

базку нарисовал для : генерирую комбинации ключевых слов по сайту. Для каждой страницы (адрес) получается набор уникальных ключевых слов (Слово). Далее вывожу поле для копипаста текстом из последовательности Слов чрез запятую.
Поле выводится в виде гиперссылки для последующего копирования в 1 клик.
Иногда комбинация получается длинная и не все влезает..!!??
GrawnUp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объединение текстовых значений из полей таблицы (Access 2010) Mjaso Microsoft Office Access 7 28.04.2012 21:18
Объединение полей. Lena220 Microsoft Office Access 3 06.12.2010 21:45
При удалении записей значения полей с type:=Autoincrement (т.е+) в оставшихся полей не изменяются kenta БД в Delphi 2 29.10.2009 08:28
Объединение 2-х полей таблицы SNUPY SQL, базы данных 2 04.10.2009 22:53
Объеденение полей запроса в для отображения нескольких полей в одном списке mrCreator Microsoft Office Access 3 08.08.2009 00:53