|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
01.10.2008, 17:25 | #1 |
Форумчанин
Регистрация: 26.11.2006
Сообщений: 584
|
Любителям сложных формул посвящается!
Друзья,
Задание во вложении. Последний раз редактировалось ZORRO2005; 02.10.2008 в 11:50. |
02.10.2008, 10:01 | #2 |
Форумчанин
Регистрация: 28.07.2008
Сообщений: 119
|
Зачем городить мега формулы, если и так все просто...
У Вас, и так все там в порядке... Вопрос не поставлен, приходиться догадываться. Я так понял, необходимо написать функцию, которая использует в качестве параметра значения в ячейки заголовка таблицы (в вашем случае, то что выделено зеленым цветом). Если писать формулу то, я бы отдал предпочтение тем, которые есть. Зачем городить мега формулы, если и так все просто, понятно и компактно.
|
02.10.2008, 10:02 | #3 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Может быть Вам подойдет решение на VBA?
Просто измените значения заголовков столбцов с условиями (столбцы "J:L"). Обрабатывается любое количество строк. Можно обойтись и без предварительного разбиения текста по столбцам.
Чем шире угол зрения, тем он тупее.
Последний раз редактировалось SAS888; 02.10.2008 в 12:07. |
02.10.2008, 11:33 | #4 |
Форумчанин
Регистрация: 26.11.2006
Сообщений: 584
|
SAS888,
СУПЕР!Спасибо большое! Можно сделать чтобы лишние пробелы не съедались? Допустим я хочу сделать 3 пробела между словами 1 и 3 столбцов. |
02.10.2008, 11:39 | #5 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
А я наоборот, специально это делал. Но, если нужно, то из кода нужно выбросить функцию Application.Trim(...). Для этого, строки
Код:
Код:
Чем шире угол зрения, тем он тупее.
Последний раз редактировалось SAS888; 02.10.2008 в 12:03. Причина: Добавлено |
02.10.2008, 11:45 | #6 |
Пользователь
Регистрация: 22.08.2008
Сообщений: 65
|
в J2 формулу:
=СЦЕПИТЬ(ЕСЛИ(ЕЧИСЛО(ЗНАЧЕН(ПСТР(J$ 1;1;1)));ИНДЕКС($C2:$I2;1;ПОИСКПОЗ( ПСТР(J$1;1;1);$C$1:$I$1;0));ПСТР(J$ 1;1;1));ЕСЛИ(ЕЧИСЛО(ЗНАЧЕН(ПСТР(J$1 ;2;1)));ИНДЕКС($C2:$I2;1;ПОИСКПОЗ(П СТР(J$1;2;1);$C$1:$I$1;0));ПСТР(J$1 ;2;1));ЕСЛИ(ЕЧИСЛО(ЗНАЧЕН(ПСТР(J$1; 3;1)));ИНДЕКС($C2:$I2;1;ПОИСКПОЗ(ПС ТР(J$1;3;1);$C$1:$I$1;0));ПСТР(J$1; 3;1));ЕСЛИ(ЕЧИСЛО(ЗНАЧЕН(ПСТР(J$1;4 ;1)));ИНДЕКС($C2:$I2;1;ПОИСКПОЗ(ПСТ Р(J$1;4;1);$C$1:$I$1;0));ПСТР(J$1;4 ;1));ЕСЛИ(ЕЧИСЛО(ЗНАЧЕН(ПСТР(J$1;5; 1)));ИНДЕКС($C2:$I2;1;ПОИСКПОЗ(ПСТР (J$1;5;1);$C$1:$I$1;0));ПСТР(J$1;5; 1));ЕСЛИ(ЕЧИСЛО(ЗНАЧЕН(ПСТР(J$1;6;1 )));ИНДЕКС($C2:$I2;1;ПОИСКПОЗ(ПСТР( J$1;6;1);$C$1:$I$1;0));ПСТР(J$1;6;1 ))) и тянуть сначала вправо, а потом вниз ограничение формулы: только для 6-ти смволов из ячеек J1:L1 если надо больше заходите в СЦЕПИТЬ() щелкаете текст6, копируете, ставите ; вставляете, меняете во всех ПСТР(J$1;6;1) только что вставленного куска среднюю цифру на 7 и т.д. Последний раз редактировалось Konstantin_Z; 02.10.2008 в 11:47. |
02.10.2008, 20:01 | #7 |
Форумчанин
Регистрация: 26.11.2006
Сообщений: 584
|
Konstantin_Z,
спасибо |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
вопросам знатокам и просто любителям, нужно составить не сложный sql запрос | modz | SQL, базы данных | 3 | 14.08.2013 11:20 |
Любителям компонентного программирования | JTG | Софт | 1 | 08.04.2008 14:42 |