Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Конкатенация значений одного поля (всех записей) - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Конкатенация значений одного поля (всех записей)
EvgenyD Дата: Четверг, 28.05.2015, 09:58 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 74
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
Добрый день! Никак не могу найти способ объединения всех записей одного поля в строку, желательно с переносом значения каждой записи в новую строку ячейки. Помогите разобраться, пожалуйста. Пример прикладываю. По примеру: мне нужно получить одну ячейку в которой будет "курьер - 1000 & Chr(10) & монтаж - 2000" - 'это если в экселе писать, а вот как запросом такое сделать?
К сообщению приложен файл: 3667555.rar (23.8 Kb)
 
Ответить
СообщениеДобрый день! Никак не могу найти способ объединения всех записей одного поля в строку, желательно с переносом значения каждой записи в новую строку ячейки. Помогите разобраться, пожалуйста. Пример прикладываю. По примеру: мне нужно получить одну ячейку в которой будет "курьер - 1000 & Chr(10) & монтаж - 2000" - 'это если в экселе писать, а вот как запросом такое сделать?

Автор - EvgenyD
Дата добавления - 28.05.2015 в 09:58
Pelena Дата: Четверг, 28.05.2015, 10:14 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19403
Репутация: 4554 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
Можете объяснить, зачем? Какова конечная цель?


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
Можете объяснить, зачем? Какова конечная цель?

Автор - Pelena
Дата добавления - 28.05.2015 в 10:14
EvgenyD Дата: Четверг, 28.05.2015, 10:36 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 74
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
В конечном виде это будет выводиться в текстовом поле формы и собрать их таким образом необходимо для наглядного представления.
 
Ответить
СообщениеВ конечном виде это будет выводиться в текстовом поле формы и собрать их таким образом необходимо для наглядного представления.

Автор - EvgenyD
Дата добавления - 28.05.2015 в 10:36
KSV Дата: Четверг, 28.05.2015, 11:01 | Сообщение № 4
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
попробуйте
К сообщению приложен файл: 5222270.zip (35.6 Kb)


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщениепопробуйте

Автор - KSV
Дата добавления - 28.05.2015 в 11:01
EvgenyD Дата: Четверг, 28.05.2015, 11:14 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 74
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
KSV, Спасибо, да через перекрестный запрос была мысль но я в другую сторону полез. У меня к Вам вопрос, а как сделать перенос строки - аналог Chr(10) между соединяемыми значениями?

Я смог собрать такую функцию:
[vba]
Код
Function Concatenate_Field()
Dim rcs As DAO.Recordset
Dim strX As String
Dim dbs As DAO.Database
Dim i As Integer
Set dbs = CurrentDb
Set rcs = dbs.OpenRecordset("Concat_Costs", dbOpenDynaset)
i = 0
rcs.MoveFirst
Do Until rcs.EOF
i = i + 1
strX = strX & rcs.Fields("itog").Value & Chr(10)
rcs.MoveNext
Loop
Set rcs = Nothing
Debug.Print (strX)
End Function
[/vba]


Сообщение отредактировал EvgenyD - Четверг, 28.05.2015, 11:17
 
Ответить
СообщениеKSV, Спасибо, да через перекрестный запрос была мысль но я в другую сторону полез. У меня к Вам вопрос, а как сделать перенос строки - аналог Chr(10) между соединяемыми значениями?

Я смог собрать такую функцию:
[vba]
Код
Function Concatenate_Field()
Dim rcs As DAO.Recordset
Dim strX As String
Dim dbs As DAO.Database
Dim i As Integer
Set dbs = CurrentDb
Set rcs = dbs.OpenRecordset("Concat_Costs", dbOpenDynaset)
i = 0
rcs.MoveFirst
Do Until rcs.EOF
i = i + 1
strX = strX & rcs.Fields("itog").Value & Chr(10)
rcs.MoveNext
Loop
Set rcs = Nothing
Debug.Print (strX)
End Function
[/vba]

Автор - EvgenyD
Дата добавления - 28.05.2015 в 11:14
Pelena Дата: Четверг, 28.05.2015, 11:32 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 19403
Репутация: 4554 ±
Замечаний: ±

Excel 365 & Mac Excel
это будет выводиться в текстовом поле формы

Два варианта с выводом сразу на форму: подчиненная форма и свободное поле
К сообщению приложен файл: 2430680.rar (40.1 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение
это будет выводиться в текстовом поле формы

Два варианта с выводом сразу на форму: подчиненная форма и свободное поле

Автор - Pelena
Дата добавления - 28.05.2015 в 11:32
EvgenyD Дата: Четверг, 28.05.2015, 11:40 | Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 74
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
Pelena, Вариант со свободным полем - то что нужно. Спасибо!
 
Ответить
СообщениеPelena, Вариант со свободным полем - то что нужно. Спасибо!

Автор - EvgenyD
Дата добавления - 28.05.2015 в 11:40
KSV Дата: Четверг, 28.05.2015, 12:35 | Сообщение № 8
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
как сделать перенос строки - аналог Chr(10) между соединяемыми значениями?

Честно говоря, не совсем понял, что вам нужно...
(ваш код я бы написал так:)
[vba]
Код
    ...
      rcs.MoveFirst
      Do Until rcs.EOF
          i = i + 1
          strX = strX & vbLf & rcs.Fields("itog").Value
          rcs.MoveNext
      Loop
      Debug.Print Mid$(strX, 2)
      ...
[/vba]

[p.s.]константы:
vbCr - эквив. Chr(13)
vbLf - эквив. Chr(10)
vbCrLf - эквив. Chr(13) & Chr(10)[/p.s.]


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333


Сообщение отредактировал KSV - Четверг, 28.05.2015, 12:35
 
Ответить
Сообщение
как сделать перенос строки - аналог Chr(10) между соединяемыми значениями?

Честно говоря, не совсем понял, что вам нужно...
(ваш код я бы написал так:)
[vba]
Код
    ...
      rcs.MoveFirst
      Do Until rcs.EOF
          i = i + 1
          strX = strX & vbLf & rcs.Fields("itog").Value
          rcs.MoveNext
      Loop
      Debug.Print Mid$(strX, 2)
      ...
[/vba]

[p.s.]константы:
vbCr - эквив. Chr(13)
vbLf - эквив. Chr(10)
vbCrLf - эквив. Chr(13) & Chr(10)[/p.s.]

Автор - KSV
Дата добавления - 28.05.2015 в 12:35
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!