Вопросы: - если "данные надо перенести в акцесс и вычисления сделать там же" - то где хотя бы образец формата таблиц в акцессе? Потому что если это уже существующая БД - то надо же вписаться имеющийся формат - "в дальнейшем заменить исходные данные" - значит, не один раз такая операция будет производиться? То есть данные будут подкачиваться в Excel, а потом конвертироваться в Access? Или приведен образец таблиц, а решение должно быть сделано в самом Access? - Если данные все равно переносятся из Excel - то до переноса можно сделать расчеты средствами Excel. Или все же, решение - чистый Access?
Вопросы: - если "данные надо перенести в акцесс и вычисления сделать там же" - то где хотя бы образец формата таблиц в акцессе? Потому что если это уже существующая БД - то надо же вписаться имеющийся формат - "в дальнейшем заменить исходные данные" - значит, не один раз такая операция будет производиться? То есть данные будут подкачиваться в Excel, а потом конвертироваться в Access? Или приведен образец таблиц, а решение должно быть сделано в самом Access? - Если данные все равно переносятся из Excel - то до переноса можно сделать расчеты средствами Excel. Или все же, решение - чистый Access?AndreTM
- если "данные надо перенести в акцесс и вычисления сделать там же" - то где хотя бы образец формата таблиц в акцессе? Потому что если это уже существующая БД - то надо же вписаться имеющийся формат
БД не существующая. БД создается новая для обсчета этой задачи
- "в дальнейшем заменить исходные данные" - значит, не один раз такая операция будет производиться? То есть данные будут подкачиваться в Excel, а потом конвертироваться в Access? Или приведен образец таблиц, а решение должно быть сделано в самом Access?
Да, использование многоразовое. Исходники всегда в Excel, для каждого расчета в Access будет загружаться полностью новые исходники, но с той же структурой. То есть замена всех столбцов (кроме заголовков) в исходной таблице в Access.
- если "данные надо перенести в акцесс и вычисления сделать там же" - то где хотя бы образец формата таблиц в акцессе? Потому что если это уже существующая БД - то надо же вписаться имеющийся формат
БД не существующая. БД создается новая для обсчета этой задачи
- "в дальнейшем заменить исходные данные" - значит, не один раз такая операция будет производиться? То есть данные будут подкачиваться в Excel, а потом конвертироваться в Access? Или приведен образец таблиц, а решение должно быть сделано в самом Access?
Да, использование многоразовое. Исходники всегда в Excel, для каждого расчета в Access будет загружаться полностью новые исходники, но с той же структурой. То есть замена всех столбцов (кроме заголовков) в исходной таблице в Access.
Ещё раз. Чем расчеты, произведенные Акцессом, будут отличаться от расчетов, произведенных Экселем? (кстати, какие "сводные", если все равно макросы задействованы?) написать расчеты именно в Акцесс - можно, но зачем усложнять действия? Или Вы таким методом хотите получить себе код для таких расчетов в Акцессе, просто умалчиваете об этом? Ведь самый простой вариант - это сделать все в Excel (раз данные уже в Excel), а в Access просто подключить полученные таблицы.
"Не спрашивать почему"- это вообще как? Вы ставите задачу - исполнитель интересуется условиями и уточняет ТЗ - вы же ничего не хотите рассказывать. Ну или напишите в ЛС/на почту (контакты в профиле), если это "конфиденциально"...
Ещё раз. Чем расчеты, произведенные Акцессом, будут отличаться от расчетов, произведенных Экселем? (кстати, какие "сводные", если все равно макросы задействованы?) написать расчеты именно в Акцесс - можно, но зачем усложнять действия? Или Вы таким методом хотите получить себе код для таких расчетов в Акцессе, просто умалчиваете об этом? Ведь самый простой вариант - это сделать все в Excel (раз данные уже в Excel), а в Access просто подключить полученные таблицы.
"Не спрашивать почему"- это вообще как? Вы ставите задачу - исполнитель интересуется условиями и уточняет ТЗ - вы же ничего не хотите рассказывать. Ну или напишите в ЛС/на почту (контакты в профиле), если это "конфиденциально"...AndreTM
Нету у меня никаких секретов Я уже сделал в Excel следующим образом. Посчитал срок в днях для каждой строки исходник, ВПРом с относительной ссылкой присвоил признак по сроку (в текстовом формате, для интервалов), и далее сводной все сгруппировал по валюте, интервалам, и сумме значений, а ставку посчитал тоже сводной но как СРЕДНЕЕ, а не средневзвешенное. Ок. Но, можно сказать и так, что действительно хочу посмотреть как это можно реализовать в Access. Как я это понимаю, можно загрузить исходники, сделать вычисляемый столбец в конструкторе запросов, который посчитает сумму процентов и, второй такой же столбец посчитает срок для каждой строки. Но у меня у самого не получается разнести все это добро по срокам в том виде, как на Листе2, я понимаю как сделать фильтр по запросу, но это действительно для 1 интервала, а нужно для многих. Наверное в данном случае нужно полями сделать сами интервалы, а в строки выгрузить суммы значений, в общем не получилось, не знаю. А средневзвешенную рассчитать, в целом есть понимание что можно использовать также вычисляемый столбец (с помощью вычислителя), но без разнесенных значений по интервалам сделать этого тоже не могу. Поэтому корытсных целей посмотреть код у меня нет, я даже думал что здесь можно обойтись встроенными ресурсами самого Access без VBA. Но как это можно реализовать, в образовательных целях, действительно хочу посмотреть!
Нету у меня никаких секретов Я уже сделал в Excel следующим образом. Посчитал срок в днях для каждой строки исходник, ВПРом с относительной ссылкой присвоил признак по сроку (в текстовом формате, для интервалов), и далее сводной все сгруппировал по валюте, интервалам, и сумме значений, а ставку посчитал тоже сводной но как СРЕДНЕЕ, а не средневзвешенное. Ок. Но, можно сказать и так, что действительно хочу посмотреть как это можно реализовать в Access. Как я это понимаю, можно загрузить исходники, сделать вычисляемый столбец в конструкторе запросов, который посчитает сумму процентов и, второй такой же столбец посчитает срок для каждой строки. Но у меня у самого не получается разнести все это добро по срокам в том виде, как на Листе2, я понимаю как сделать фильтр по запросу, но это действительно для 1 интервала, а нужно для многих. Наверное в данном случае нужно полями сделать сами интервалы, а в строки выгрузить суммы значений, в общем не получилось, не знаю. А средневзвешенную рассчитать, в целом есть понимание что можно использовать также вычисляемый столбец (с помощью вычислителя), но без разнесенных значений по интервалам сделать этого тоже не могу. Поэтому корытсных целей посмотреть код у меня нет, я даже думал что здесь можно обойтись встроенными ресурсами самого Access без VBA. Но как это можно реализовать, в образовательных целях, действительно хочу посмотреть!de44
Послушайте совета - лучше обойдитесь ресурсами Excel, а в Access выгрузите данные и результат. Финансовые вычисления в таблицах/запросах, особенно средствами самой СУБД - задача более сложная для неспециалистов (если смотреть на перспективу), нежели использование специально сделанных для этого инструментов. Макросами в СУБД расчеты делать, конечно, можно, но, как вы правильно заметили - надо будет понимать весь код, плюс разнесение полученных результатов - тоже задача, плюс некоторые "простые" расчеты типа нарастающего итога, например, тоже нетривиальны...
То есть, как я выше сказал - делайте всё в Excel (формулами/сводными/макросами/PowerQuery/PowerPivot), результаты оформляйте в виде именованных диапазонов или Умных таблиц. Надеюсь, подключить готовые "таблицы" из Excel к Access'у - для вас сложностью не является?
Послушайте совета - лучше обойдитесь ресурсами Excel, а в Access выгрузите данные и результат. Финансовые вычисления в таблицах/запросах, особенно средствами самой СУБД - задача более сложная для неспециалистов (если смотреть на перспективу), нежели использование специально сделанных для этого инструментов. Макросами в СУБД расчеты делать, конечно, можно, но, как вы правильно заметили - надо будет понимать весь код, плюс разнесение полученных результатов - тоже задача, плюс некоторые "простые" расчеты типа нарастающего итога, например, тоже нетривиальны...
То есть, как я выше сказал - делайте всё в Excel (формулами/сводными/макросами/PowerQuery/PowerPivot), результаты оформляйте в виде именованных диапазонов или Умных таблиц. Надеюсь, подключить готовые "таблицы" из Excel к Access'у - для вас сложностью не является?AndreTM
Надеюсь, подключить готовые "таблицы" из Excel к Access'у - для вас сложностью не является?
Нет. Но рассчитать средневзвешенную ставку для каждого интервала (на основе значений строк которые туда попадают) при объеме 900тыс. с небольшим строк, Эксель ложится на несколько часов. Было подозрение что Access справится гораздо быстрее. Собственно по этой причине пришлось довольствоваться опцией расчета обычной средней powerpivot(
Надеюсь, подключить готовые "таблицы" из Excel к Access'у - для вас сложностью не является?
Нет. Но рассчитать средневзвешенную ставку для каждого интервала (на основе значений строк которые туда попадают) при объеме 900тыс. с небольшим строк, Эксель ложится на несколько часов. Было подозрение что Access справится гораздо быстрее. Собственно по этой причине пришлось довольствоваться опцией расчета обычной средней powerpivot(de44
Можно проводить все расчеты в массиве в памяти, но тогда код абсолютно одинаковый что для Access, что для Excel, и по быстродействию тоже. Можно задействовать средства Power* и формул DAX, вот примеры http://www.excelworld.ru/forum/2-34200-1
Единственный смысл, когда задачу надо решать прямо в Access - это большие объемы данных, которые могут перестать влезать в Excel. Но вы-то хотите все равно "сначала загрузить в Excel"... Да и при очень больших объемах и Access использовать не стОит.
Можно проводить все расчеты в массиве в памяти, но тогда код абсолютно одинаковый что для Access, что для Excel, и по быстродействию тоже. Можно задействовать средства Power* и формул DAX, вот примеры http://www.excelworld.ru/forum/2-34200-1
Единственный смысл, когда задачу надо решать прямо в Access - это большие объемы данных, которые могут перестать влезать в Excel. Но вы-то хотите все равно "сначала загрузить в Excel"... Да и при очень больших объемах и Access использовать не стОит.AndreTM