Вопрос по Excel

Список форумов Клуб Hard & Soft

Вопрос по Excel

Сообщение JWT » 19 июл 2007, 12:16 »

Есть такая табличка доходности по 6 рынкам: дата профит нетто :
Изображение
Хочется просуммировать профиты из соответствующих дат чтобы получить трек ежедневной доходности.
Для этого надо совместить даты по строкам,чтобы в итоге получилась такая таблица:
Изображение
Можно это как-то сделать автоматически?
Вложения
Shouldbe.jpg
(92.68 Кб) Скачиваний: 60
Now.jpg
(176.99 Кб) Скачиваний: 54
Каждую минуту любая мелочь пытается занять собой твое время-и часто ловишь себя на том,что день прошел,а вспомнить неч..
Аватара пользователя
JWT
Женя™
 
Сообщений: 5508
Регистрация: 27 фев 2003

Сообщение Marat » 19 июл 2007, 17:43 »

Женя, наверное проще всего экспортировать данные в Access, там манипулировать данные и вывести обратно в Эксель. Несложная процедура.
Аватара пользователя
Marat
Модератор™
 
Сообщений: 2668
Регистрация: 08 мар 2002

Сообщение HomerPyle » 19 июл 2007, 18:13 »

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

ЗЫ: замечу, что для очень больших массивов эксцэль слабоват будет
ЗЗЫ: Marat дело говорит, я так и поступаю - получается довольно быстро и нетрудоемко
Фондовый рынок - организованная продажа подержанного оборудования (с) А.Гринспен

HomerPyle
Приверженец
 
Сообщений: 626
Регистрация: 31 дек 2006

Re: Вопрос по Excel

Сообщение x4x » 19 июл 2007, 18:30 »

JWT писал(а): Можно это как-то сделать автоматически?


Разумеется можно. Стандартных средств правда нет, но сама процедура не сложна и легко кодится... ;-)
Сволочь - это состояние души...

x4x
Тракторист™
 
Сообщений: 2747
Регистрация: 22 ноя 2001
Откуда: в полях под Москвой

Сообщение JWT » 20 июл 2007, 07:24 »

В Access не хочется экспортировать,процедура не одноразовая,каждый раз туда-сюда гонять муторно.Да и не дружу я с аксесом.

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

Вот я и ищу что-то подобное.Не знаю,но подозреваю что есть в экселе какая-нить хитрая сортировка или фильтрация,хз...по сути процедура то типичная,сопоставление пар данных по одному столбцу,ну должно быть что-то....
Каждую минуту любая мелочь пытается занять собой твое время-и часто ловишь себя на том,что день прошел,а вспомнить неч..
Аватара пользователя
JWT
Женя™
 
Сообщений: 5508
Регистрация: 27 фев 2003

Сообщение x4x » 20 июл 2007, 07:37 »

JWT писал(а):Не знаю,но подозреваю что есть в экселе какая-нить хитрая сортировка или фильтрация,хз...по сути процедура то типичная,сопоставление пар данных по одному столбцу,ну должно быть что-то....


Попробуй "Сводную таблицу", но ИМХО, проще сделать специальную процедурку...
Сволочь - это состояние души...

x4x
Тракторист™
 
Сообщений: 2747
Регистрация: 22 ноя 2001
Откуда: в полях под Москвой

Сообщение Rosh » 20 июл 2007, 08:18 »

JWT, делается макросом в несколько проходов.
1. Считываются все столбцы(парными значениями) в соответствующие массивы
2. Синхронизируются по дате
3. а. Создается новая таблица, в которую входят данные всех массивов и в конце суммирующий столбец (не теряются исходные данные)
или
3.б делается сразу готовый вариант и опять выводятся данные.

Примерно как здесь - http://forum.mql4.com/ru/5524 (Обработка результатов оптимизации в Excel)
Жить в плену предубеждений - комфортно... до некоторого момента.
http://www.simple-testing.blogspot.com - Мой блог

Rosh
Энтузиаст
 
Сообщений: 381
Регистрация: 14 ноя 2004

Сообщение BullButcher » 20 июл 2007, 11:47 »

JWT
Жень, попробуй рядом с полным каледарным столбиком на другой странице прописать сумму функций SUMIF(...) для каждой из табличек Если таблицы не слишком огромные, то она полностью решит твои проблемы.
=SUMIF(tables!C1:C2,RC1,tables!C2)+SUMIF(tables!C3:C4,RC1,tables!C4)+SUMIF(tables!C5:C6,RC1,tables!C6)+SUMIF(tables!C7:C8,RC1,tables!C8 )+SUMIF(tables!C9:C10,RC1,tables!C10)+SUMIF(tables!C11:C12,RC1,tables!C12)
По мере заполнения таблиц, в сборной таблице можно заменять формулы на значения, облегчая расчет таблицы
Вложения
For_JWT.xls
Вот примерчик реализации
(18.5 Кб) Скачиваний: 69
Варкалось, хливкие шорьки пырялись по наве...

BullButcher
Эксперт
 
Сообщений: 2401
Регистрация: 25 авг 2003

Сообщение HomerPyle » 20 июл 2007, 13:30 »

но подозреваю что есть в экселе какая-нить хитрая сортировка или фильтрация,хз...по сути процедура то типичная,сопоставление пар данных по одному столбцу,ну должно быть что-то


не встречал, так что придется "ручками поработать" немного (ну или макрос на крайняк)

идея такова (на счет реализации думайте сами - как Вам будет удобней все это оформить):

исходные данные - множество N списков, элементы которых пары Дата-Профит.

Шаг первый: списки объединяем в один массив (на отдельном листе, папример):

список1
список2
...
списокN

Шаг второй: сортируем все по дате, команда из меню есть такая
Шаг третий: включаем итоги с суммами, и нажывмаем "кнопочку "+"" нужного уровня группировки

В итоге: на выходе имеем массив вида

Дата1 - Сумма профитов за Дату1
Дата2 - Сумма профитов за Дату2
...
ДатаT - Сумма профитов за ДатуT

ЗЫ: не сичтая генерацию случайных данных, решение подобной задачки вручную у меня заняло меньше пяти минут
ЗЗЫ: недостаток суммарная длина всех списков не должна превышать 2^16, а их количество (т.е. N) не более 2^8
ЗЗЗЫ: функциями тоже можно на отдельном листе в "автомате" оформить, но не жалательно - есть риск "убить" (на длительное время вывести из строя) оборудование
Фондовый рынок - организованная продажа подержанного оборудования (с) А.Гринспен

HomerPyle
Приверженец
 
Сообщений: 626
Регистрация: 31 дек 2006

Сообщение JWT » 20 июл 2007, 15:05 »

BullButcher гениально!
Спасибо всем,спасибо Юра!!!
Вот оно,простое встроенное решение:)
Все работает:)
Каждую минуту любая мелочь пытается занять собой твое время-и часто ловишь себя на том,что день прошел,а вспомнить неч..
Аватара пользователя
JWT
Женя™
 
Сообщений: 5508
Регистрация: 27 фев 2003

Сообщение JWT » 27 сен 2007, 22:14 »

Люди,как прибавить минуту в экселе?
Формат времени
17:30,
17:31
....
Надо прибавить в формуле 1 минуту к предыдущему значению.

все...нашел. A2+ВРЕМЯ(C2;0;0)
Каждую минуту любая мелочь пытается занять собой твое время-и часто ловишь себя на том,что день прошел,а вспомнить неч..
Аватара пользователя
JWT
Женя™
 
Сообщений: 5508
Регистрация: 27 фев 2003

Re: Вопрос по Excel

Сообщение JWT » 20 июл 2010, 12:25 »

Есть кто живой?...
Интересно,существует ли возможность экспортировать по DDE в эксель таблицу всех сделок по какому-либо инструменту(в Америке это tape называется) и при этом не забивать весь лист экселя этой таблицей,а просто парсить ее и в конкретную клетку выдавать значение цены тика для дальнейшего экспорта из этой клетки?
Каждую минуту любая мелочь пытается занять собой твое время-и часто ловишь себя на том,что день прошел,а вспомнить неч..
Аватара пользователя
JWT
Женя™
 
Сообщений: 5508
Регистрация: 27 фев 2003

Re: Вопрос по Excel

Сообщение JWT » 20 июл 2010, 19:50 »

Линк не подскажите?
Каждую минуту любая мелочь пытается занять собой твое время-и часто ловишь себя на том,что день прошел,а вспомнить неч..
Аватара пользователя
JWT
Женя™
 
Сообщений: 5508
Регистрация: 27 фев 2003

Re: Вопрос по Excel

Сообщение RedRat » 20 июл 2010, 20:15 »

Quik вроде как выдаёт сообщения в XLTable формате, а там идёт например
0, 65535, дата
65536, 99999 дата
99999, 100000 дата
100000, 100001 дата

то есть сперва полным буфером обмена, 65536 строк
потом остаток
потом текущие тики

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

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

С другой стороны, вы же подключили NDde, тогда зачем вообще эксель?
Мышки плакали, кололись, но продолжали грызть кактус.

RedRat
Завсегдатай
 
Сообщений: 1041
Регистрация: 01 дек 2005

Re: Вопрос по Excel

Сообщение RedRat » 20 июл 2010, 20:33 »

Никогда макросы для экселя не писал, сделал поиск
http://www.angelfire.com/biz7/julian_s/ ... macros.htm

к примеру
Deleting Empty Rows

там идёт от выделенной ячейки вниз
если ячейка пустая - удаляем строчку

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

RedRat
Завсегдатай
 
Сообщений: 1041
Регистрация: 01 дек 2005


След.

Вернуться в Hard & Soft

Сейчас в Клубе

Сейчас этот форум просматривают: MSN [Bot] и гости: 1

cron