Страницы: 1
RSS
Макрос для переделывания данных из 1с, Макрос строчную таблицу переделывает в столбцы и по критериям выборки
 
Добрый день форумчане! Есть задача непосильная, самому до макросов далеко как не знаю до какой планеты...экселя или луны( Есть выгрузка из 1с формирующая себестоимость....но там каша и в ручную выбирать тихий ужас....прошу помочь написать код для такого макроса. В файле примера есть 1 и 2 листы- 1 лист это сама выгрузка, 2- лист это та форма которая нужна....на самом деле там в выгрузке куча строк....и столбцы в форме должны добавляться соответственно.... как сделать так чтобы получилась читабельная таблица? Почему именно макрос а не формула или сводная таблица зададутся некоторые... дело в том что данные для выборки могут повторяться по строкам...типа названия счетов и переделов...поэтому нужен макрос, и в сводной таблице по цехам не получается выгрузить так как он повторяющиеся данные лишь суммирует
Изменено: Алмас - 22.02.2018 11:23:12
 
Грустная форма выгрузки. Ручками тут не обойтись. Либо к шаблону приводить небольшому, чтобы зацепки макроса были.
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Цитата
Alemox написал:
Либо к шаблону приводить небольшому, чтобы зацепки макроса были.
Грустнее некуда, шаблон я на втором листе приложил...цехов где то 10 на самом деле а не 2 как в примере(((
 
Шаблон я сделал на 3 листе, собрать через макрос можно?
 
Можно кое-что придумать. Сейчас покумекаю.
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Я думал проставить какое то "если" которое будет справа коды ставить для вытаскивания через всяких впр-ов.... например код цеха & передела.... но что то голова не голова)))
 
Макрос на коллекциях/словарях может помочь.
Сперва перебрать всю выписку и собрать списки всех этих УГ и позиций, и сразу в словарь данные.
Ну а затем выгружать.
И да, с последним шаблоном работать легче ибо логичнее.
 
А как? в макросах слабоват(
 
Тут на форуме уже много примеров кода с таким алгоритмом было, можно поискать по слову dictionary.
Эта конкретная задача не так сложная, как муторная - и конкретно эту муть мне сейчас выписывать некогда, работа... может после обеда будет часик, ближе к вечеру.
 
Вот пока наработка, сохраню пока тут - позже может доделаю
Скрытый текст

Как видите (если выполнить) - осталось только то, что выводится в окно отладки раскидать по итоговому листу.
И это самый гемор...
Для этого ещё нужно дописать цикл в цикле по коллекциям, и раскидывать их по шапкам, а в таблицу данные из словаря.
Изменено: Hugo - 22.02.2018 15:24:02
 
Цитата
Hugo написал:
позже может доделаю
спасибо! конечно как доработать этот код это не про меня)
 
Уф... Но без рамочек.
Проверьте что правильно всё собрал.
Работает на активном листе, код может быть в любом файле.
Скрытый текст

На работе нет Indenter'а, т.ч. отступы как есть...
Кстати, если хочется - можно обе эти коллекции (или только "вертикальную") перед выгрузкой отсортировать.
Или если только вертикальную - можно сортировать весь диапазон прямо на листе в самом конце.
Изменено: Hugo - 22.02.2018 18:09:11
 
OFF: Hugo, вот щас Indenter  нашёл)))) отступы расставляет? а я всё ручками))
кстати, я использую Code VBA. Бесплатная и куча всего в ней  ;)
Изменено: Jack Famous - 22.02.2018 18:09:47
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Дома есть, хорошая штука. А на работе админы всё зарезали...
 
Во вложении вариант макроса. На нужном листе, на котором надо обработать данные, запускаете макрос Preobrazovanie.
Окно макросов можно вызвать нажав ALT+F8.
За капитальную правильность выполнения не ручаюсь.
Скрытый текст
Изменено: Alemox - 22.02.2018 19:44:37 (Удалил повторную строку в коде)
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Цитата
Hugo написал:
Уф... Но без рамочек.
Баззара нет))) А если строк еще больше то где последняя i строчку копировать да просто? там два обзаца начинающиеся с i?
 
Цитата
Alemox написал:
За капитальную правильность выполнения не ручаюсь.
Alemox огромное спасибо, только вот что то у меня не сработало(((
 
Цитата
Алмас написал:
А если строк еще больше то где последняя i строчку копировать да просто? там два обзаца начинающиеся с i?
- вот вроде все слова понятны, а всё вместе - нет :)
 
Jack Famous,, подскажите, пожалуйста, где Вы нашли бесплатный Code VBA?
На их сайте написано 20 days free trial. Prices starting at 79.95 € / US$ 90.35
 
Сергей Эм, сорян))) у меня триал)))
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Алмас написал:
только вот что то у меня не сработало(((
Что именно не сработало? ССЫЛКА
Изменено: Alemox - 23.02.2018 17:46:06
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Всем огромное спасибо два макроса и обе рабочие!!! Выручили)
 
Добрый день, знатоки Экселя! Есть еще один отчет в 1с для материалов....16000 строк(((( помогите сделать макросом?
 
Может надо не стандартный отчет по счету запускать, а поковыряться в универсальном отчете СКД в 1С? И выгрузить нужные данные в нужном формате, а не через одно место делать то, что написано у меня в подписи...
Изменено: wowick - 14.03.2018 12:20:48
Если автоматизировать бардак, то получится автоматизированный бардак.
 
wowick, +
щас будет что-то вроде: нет доступа к настройкам выгрузки/никто не хочет ничего менять/нет прав… и так далее)))
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Алмас, а вы вот так не пробовали?
Вот горшок пустой, он предмет простой...
 
Цитата
wowick написал:
в универсальном отчете СКД в 1С?
Спасибо, неплохой вариант)
Цитата
PooHkrd написал:
Алмас , а вы  вот так  не пробовали?
так не получиться, так как у меня нет доступа к настройкам(
 
Цитата
Алмас написал:
так не получится, так как у меня нет доступа к настройкам
А СисАдмины 1С для чего?!
Они же получают ЗряПлату!  :D  
Страницы: 1
Наверх