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

Вход

Регистрация

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

 

= Мир MS Excel/Перечисление данных через запятую - Мир MS Excel

  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин, _Boroda_, DrMini  
Перечисление данных через запятую
Slaventiy Дата: Понедельник, 19.03.2012, 08:43 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Доброго времени суток форумчанам.

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

ЗЫ: если кто-нибудь знает какой справочник по использованию формул в EXCEL с написанием примеров есть в инете, просьба - скиньте ссылочку. Желательно поменьше текста, побольше примеров.
К сообщению приложен файл: Post2.xls (18.5 Kb)


Есть вопрос? Спроси!
 
Ответить
СообщениеДоброго времени суток форумчанам.

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

ЗЫ: если кто-нибудь знает какой справочник по использованию формул в EXCEL с написанием примеров есть в инете, просьба - скиньте ссылочку. Желательно поменьше текста, побольше примеров.

Автор - Slaventiy
Дата добавления - 19.03.2012 в 08:43
nilem Дата: Понедельник, 19.03.2012, 09:00 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
UDF
[vba]
Code
Function InRow$(r As Range)
InRow = Join(Application.Transpose(r), ", ")
End Function
[/vba]
Справочник здесь же.
К сообщению приложен файл: _Post2.xls (31.5 Kb)


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеUDF
[vba]
Code
Function InRow$(r As Range)
InRow = Join(Application.Transpose(r), ", ")
End Function
[/vba]
Справочник здесь же.

Автор - nilem
Дата добавления - 19.03.2012 в 09:00
Slaventiy Дата: Понедельник, 19.03.2012, 09:30 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

nilem, спасибо огромное... негодяй Ворд не предоставил описания данной функции (((

Тема закрыта, всем спасибо.



Есть вопрос? Спроси!
 
Ответить
Сообщениеnilem, спасибо огромное... негодяй Ворд не предоставил описания данной функции (((

Тема закрыта, всем спасибо.


Автор - Slaventiy
Дата добавления - 19.03.2012 в 09:30
Slaventiy Дата: Понедельник, 19.03.2012, 09:40 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Отставить "тема закрыта"... у меня какой-то косяк: почему-то не работает, может проблема в том, что данные находятся на другом листе? Или макросы не хотят запускаться?


Есть вопрос? Спроси!
 
Ответить
СообщениеОтставить "тема закрыта"... у меня какой-то косяк: почему-то не работает, может проблема в том, что данные находятся на другом листе? Или макросы не хотят запускаться?

Автор - Slaventiy
Дата добавления - 19.03.2012 в 09:40
nilem Дата: Понедельник, 19.03.2012, 09:49 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
С другого листа тоже работает. Макросы д.б. разрешены.
Кстати, Вы пытаетесь в Ворде работать?


Яндекс.Деньги 4100159601573

Сообщение отредактировал nilem - Понедельник, 19.03.2012, 09:51
 
Ответить
СообщениеС другого листа тоже работает. Макросы д.б. разрешены.
Кстати, Вы пытаетесь в Ворде работать?

Автор - nilem
Дата добавления - 19.03.2012 в 09:49
Slaventiy Дата: Понедельник, 19.03.2012, 09:56 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

Хм, странно, либо я дурак, либо лыжи не катят... скорее первое в мое случае((( Все время выдает ошибку "#ИМЯ?" - к чему это? Хочет со мной познакомиться? biggrin Или все же где-то чего-то я упустил?

В смысле в Ворде?

А, понял, не Ворд, excel)) Не то выше написал...


Есть вопрос? Спроси!

Сообщение отредактировал Slaventiy - Понедельник, 19.03.2012, 09:58
 
Ответить
СообщениеХм, странно, либо я дурак, либо лыжи не катят... скорее первое в мое случае((( Все время выдает ошибку "#ИМЯ?" - к чему это? Хочет со мной познакомиться? biggrin Или все же где-то чего-то я упустил?

В смысле в Ворде?

А, понял, не Ворд, excel)) Не то выше написал...

Автор - Slaventiy
Дата добавления - 19.03.2012 в 09:56
nerv Дата: Понедельник, 19.03.2012, 09:58 | Сообщение № 7
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

[vba]
Code
=UJoin(A1:A6;",") ' пример использования

Function UJoin(rng As Range, sep As String) As String
      Dim elem, arr(), i As Long
      ReDim arr(1 To rng.Cells.Count)
      For Each elem In IIf(rng.Cells.Count = 1, Array(rng.Value), rng.Value)
          i = i + 1
          arr(i) = elem
      Next
      UJoin = Join(arr, sep)
End Function
[/vba]

Почему не работает Join ?


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba


Сообщение отредактировал nerv - Понедельник, 19.03.2012, 09:59
 
Ответить
Сообщение[vba]
Code
=UJoin(A1:A6;",") ' пример использования

Function UJoin(rng As Range, sep As String) As String
      Dim elem, arr(), i As Long
      ReDim arr(1 To rng.Cells.Count)
      For Each elem In IIf(rng.Cells.Count = 1, Array(rng.Value), rng.Value)
          i = i + 1
          arr(i) = elem
      Next
      UJoin = Join(arr, sep)
End Function
[/vba]

Почему не работает Join ?

Автор - nerv
Дата добавления - 19.03.2012 в 09:58
Slaventiy Дата: Понедельник, 19.03.2012, 10:17 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

nerv, я "немного", не в теме (касательно макрописания). По поводу твоего сообщения - пробовал вставить функцию UJoin в своей работе, в примере, пытался создать с чистого листа... не работает.


Есть вопрос? Спроси!
 
Ответить
Сообщениеnerv, я "немного", не в теме (касательно макрописания). По поводу твоего сообщения - пробовал вставить функцию UJoin в своей работе, в примере, пытался создать с чистого листа... не работает.

Автор - Slaventiy
Дата добавления - 19.03.2012 в 10:17
nilem Дата: Понедельник, 19.03.2012, 10:33 | Сообщение № 9
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Видимо, непонятка в следующем: InRow, так же как и UJoin - это пользовательские функции (UDF), а не стандартные функции листа в Excel. Чтобы UDF работала в новой книге, нужно скопировать модуль с этой UDF в свою рабочую книгу. Ну и макросы д.б. разрешены.
Например, в моем файле нажмите Alt+F11, увидите Модуль1, и там записана функция InRow. Вот этот модуль и надо скопировать в свою книгу.
Копировать - просто перетащить мышкой Модуль1 из одного файла в другой. Хотя это, наверное, знаете.


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеВидимо, непонятка в следующем: InRow, так же как и UJoin - это пользовательские функции (UDF), а не стандартные функции листа в Excel. Чтобы UDF работала в новой книге, нужно скопировать модуль с этой UDF в свою рабочую книгу. Ну и макросы д.б. разрешены.
Например, в моем файле нажмите Alt+F11, увидите Модуль1, и там записана функция InRow. Вот этот модуль и надо скопировать в свою книгу.
Копировать - просто перетащить мышкой Модуль1 из одного файла в другой. Хотя это, наверное, знаете.

Автор - nilem
Дата добавления - 19.03.2012 в 10:33
Serge_007 Дата: Понедельник, 19.03.2012, 10:40 | Сообщение № 10
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Функция nerv не работает и у меня, а вот UDF nilem работает отлично.
Slaventiy, Вы код в стандартный модуль вставляете?

Quote (nilem)
Чтобы UDF работала в новой книге, нужно скопировать модуль с этой UDF в свою рабочую книгу.

Или запихать код в Personal


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеФункция nerv не работает и у меня, а вот UDF nilem работает отлично.
Slaventiy, Вы код в стандартный модуль вставляете?

Quote (nilem)
Чтобы UDF работала в новой книге, нужно скопировать модуль с этой UDF в свою рабочую книгу.

Или запихать код в Personal

Автор - Serge_007
Дата добавления - 19.03.2012 в 10:40
Hugo Дата: Понедельник, 19.03.2012, 10:53 | Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3854
Репутация: 814 ±
Замечаний: 0% ±

365
У меня работают обе функции.
Если запихать код в Personal, то на листе функцию нужно писать с указанием файла, где она находится:
=PERSONAL.XLS!UJoin(A1:A6;",")


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеУ меня работают обе функции.
Если запихать код в Personal, то на листе функцию нужно писать с указанием файла, где она находится:
=PERSONAL.XLS!UJoin(A1:A6;",")

Автор - Hugo
Дата добавления - 19.03.2012 в 10:53
Slaventiy Дата: Понедельник, 19.03.2012, 10:57 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

nilem, спс за разъяснения, порой мне приходится разжёвывать, что-бы "фтыкнуть", что к чему biggrin
Сейчас вроде работает, потом, ели буду вопросы, вернусь сюда.

Но пока что - всем спасибо, кто принял участие в судьбе этой формулы



Есть вопрос? Спроси!
 
Ответить
Сообщениеnilem, спс за разъяснения, порой мне приходится разжёвывать, что-бы "фтыкнуть", что к чему biggrin
Сейчас вроде работает, потом, ели буду вопросы, вернусь сюда.

Но пока что - всем спасибо, кто принял участие в судьбе этой формулы


Автор - Slaventiy
Дата добавления - 19.03.2012 в 10:57
Serge_007 Дата: Понедельник, 19.03.2012, 11:05 | Сообщение № 13
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (Hugo)
У меня работают обе функции.


К сообщению приложен файл: 8075232.gif (21.1 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (Hugo)
У меня работают обе функции.



Автор - Serge_007
Дата добавления - 19.03.2012 в 11:05
Hugo Дата: Понедельник, 19.03.2012, 11:07 | Сообщение № 14
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3854
Репутация: 814 ±
Замечаний: 0% ±

365
[vba]
Code
=UJoin(A1:A6,", ")
[/vba]
Сергей, разделитель нужно указать.
P.S/ Т.к. Эксель английский - у меня между аргументами запятая.


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
Сообщение[vba]
Code
=UJoin(A1:A6,", ")
[/vba]
Сергей, разделитель нужно указать.
P.S/ Т.к. Эксель английский - у меня между аргументами запятая.

Автор - Hugo
Дата добавления - 19.03.2012 в 11:07
Serge_007 Дата: Понедельник, 19.03.2012, 11:15 | Сообщение № 15
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Сори, ступил smile
Просто автор просил
Quote (Slaventiy)
тобы они выстроились в строку через запятую.

Я и не подумал, что будет возможность выбора


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеСори, ступил smile
Просто автор просил
Quote (Slaventiy)
тобы они выстроились в строку через запятую.

Я и не подумал, что будет возможность выбора

Автор - Serge_007
Дата добавления - 19.03.2012 в 11:15
Slaventiy Дата: Понедельник, 19.03.2012, 11:35 | Сообщение № 16
Группа: Пользователи
Ранг: Новичок
Сообщений: 43
Репутация: 0 ±
Замечаний: 0% ±

ЗЫ. Версия nerv тоже работает.


Есть вопрос? Спроси!
 
Ответить
СообщениеЗЫ. Версия nerv тоже работает.

Автор - Slaventiy
Дата добавления - 19.03.2012 в 11:35
Денис Дата: Понедельник, 30.09.2013, 15:42 | Сообщение № 17
Группа: Гости
а можно ли оставить только крайние числа, сделать так 1-6, вместо 1, 2, 3, 4, 5, 6?
 
Ответить
Сообщениеа можно ли оставить только крайние числа, сделать так 1-6, вместо 1, 2, 3, 4, 5, 6?

Автор - Денис
Дата добавления - 30.09.2013 в 15:42
Hugo Дата: Понедельник, 30.09.2013, 16:11 | Сообщение № 18
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3854
Репутация: 814 ±
Замечаний: 0% ±

365
Можно. Почтиайте про стандартные строковые функции - отрезаете по одному символу с концов, между ними добаляете " - "


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеМожно. Почтиайте про стандартные строковые функции - отрезаете по одному символу с концов, между ними добаляете " - "

Автор - Hugo
Дата добавления - 30.09.2013 в 16:11
Денис Дата: Понедельник, 30.09.2013, 16:16 | Сообщение № 19
Группа: Гости
а можно ли это сделать в VBA?
 
Ответить
Сообщениеа можно ли это сделать в VBA?

Автор - Денис
Дата добавления - 30.09.2013 в 16:16
Pelena Дата: Понедельник, 30.09.2013, 17:04 | Сообщение № 20
Группа: Админы
Ранг: Местный житель
Сообщений: 19513
Репутация: 4632 ±
Замечаний: ±

Excel 365 & Mac Excel
Денис, прочитайте Правила форума и создайте свою тему в соответствующем разделе


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

Автор - Pelena
Дата добавления - 30.09.2013 в 17:04
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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