Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Перерасчёт, сумирование и удаление значений с помощью макросов
 
Да, отчётность по разным направлениям, но она однотипная, поэтому для обоих файлов должно подойти. Исчезать не буду)
Перерасчёт, сумирование и удаление значений с помощью макросов
 
Спасибо, посмотрю!
Перерасчёт, сумирование и удаление значений с помощью макросов
 
Здравствуйте, с помощью полученых рекомендаций здесь удалось написать макрос для организации базы данных по отчёту. Но вновь возникли вопросы, поэтому, прошу кто сможет подсказать, как разобратся в них.
В данном файле есть кнопка Delete которая должна удалять значение из базы данных и листа Отчёт, но удаляет только из БД. Что нужно ещё прописать в этом макросе ( мои варианты оказались не рабочими, поэтому здесь оставлен исходный вариант), чтоб он также и лист Отчёт очищал от данных.

Также, как можно увидеть, каждый склад передает значения поквартально по заданным параметрам. Необходимо, чтоб для квартала 0, которые дополнительно введён, выводилось сумарное значение показателей по кварталам по всем складам - тоесть сумарные значение всех показателей за 1 квартал, 2-й и т.д.

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

Все значения в отчёт занесенны произвольным образом.

Буду очень признательна за помощь, поскольку только этот  макрос писала месяц, правки соответсвенно буду вносить тоже не быстро, а форму уже нужно в понедельник предоставить для работы.
Запись данных для формирования отчёта с помощью макросов
 
Про очистку понятно, но не совсем понятно где её реализовать - после цикла?  
Запись данных для формирования отчёта с помощью макросов
 
Да, это не конечная цель. Чтоб всё было понятно, наверное распишу полностью задумку файла как это изначально планировалось. В электронной форме на протяжении года поквартально приходят отчёты от подразделений в виде 3-х сводных таблиц с заполненными параметрами. Эти данные с помощью кнопки SAVE собираемся  перенести на лист базы данных ( сформировать её), а на листе Отчёт изменяя код/год/квартал/название подразделения автоматически должны подтягивать данные согласно измененного условия. Лист Отчёт служит для просмотра данных по всем подразделениям за все периоды - чтоб не хранить миллион штук отчётных файлов и когда что-то нужно посмотреть за определенный период/по определенному подразделению не искать это. Также с помощью кнопки Delete планируется удалять данные с отчёта.  
Запись данных для формирования отчёта с помощью макросов
 
Модуляция данных - это профессиональное - имела ввиду что как пример, заполнения отчета можно увидеть на самой вкладке Отчёт. Спасибо!

Учитывая возможности человека, который будет использовать также этот файл кроме меня, то как я писала раньше, желательно организовать весь процесс вообще 2 кнопками - Сохранить и Удалить.
Изменено: lanasms - 18.09.2017 15:38:38
Запись данных для формирования отчёта с помощью макросов
 
Совет Kuzmich приняла во внимание, потому что кроме ппп1-ппп3 точно ничего не будет. А как Вы видите реализацию подтягивания файлов и выкачивания данных при, допустим модуляции данных как указано в закладке отчет?
Запись данных для формирования отчёта с помощью макросов
 
Цитата
отчёты будут к концу года,
Как так? Вы же писали
подразделения поквартально передают параметры
Задумались над автоматизацией только сейчас, соответственно в электронной форме отчеты получим только за 3-й квартал, а это уже будет в ноябре..
Спасибо, я действительно не обратила внимание, что учитываю только 1 строчку. За любые рекомендации спасибо.

По поводу столбца Наименование, то решила, что проще будет подтягивать название подразделения формулой в зависимости от его кода.  
Изменено: lanasms - 18.09.2017 11:23:41
Запись данных для формирования отчёта с помощью макросов
 
Всё, что касается первой таблицы у меня обозначено I010-I180,второй - Р010-Р030, третьей - Q020-Q090.А ппп1-ппп3 считалось, что прохожу заданным шагом 5. Или я неправильно сделала?
Запись данных для формирования отчёта с помощью макросов
 
В таком случае как пример что посоветуете (потому что отчёты будут к концу года, а сводный файл с макросами нужен уже сейчас:))? Показатели которые вытягиваються и есть вот эти 3 таблички.
Запись данных для формирования отчёта с помощью макросов
 
pton - всё верно, и да Kuzmich, Вы тоже всё верно поняли - для всех 57 пока что. Поэтому я и сомневаюсь, что иду правильным путём и свожу всё в одномерный массив (имею ввиду параметры).
Изменено: lanasms - 18.09.2017 00:05:21
Запись данных для формирования отчёта с помощью макросов
 
Поскольку моё знакомсто с макросами только началось, может не совсем правильно формулирую задачу и, поэтому у меня есть ошибки.
Суть в чём: подразделения поквартально передают параметры по сырью в форме заполненых таблиц предоставленных на листе Отчёт. Эти отчётные таблицы нужно свести в 1 файл с помощью макросов. Я планирую реализовать это с помощью кнопки Save - загрузить параметры на лист БД и оттуда уже их переносить на лист Отчёт. Хочу потом ещё кнопку Delete cделать, но тут с первой задачей разобратся бы..

5- это шаг. В первой таблице 1 строчка, во второй - тоже 1, в третьей - 3 строчки. Прохожусь по всем значениям 5 строк.
Запись данных для формирования отчёта с помощью макросов
 
Я поняла, что цыкл:
Код
 ReDim araydb1(1 To UBound(araydb) + 5, 1 To collN("Q090")) 
       For i = 1 To UBound(araydb) 
        For j = 1 To LBound(araydb) 
           araydb1(i, j) = araydb(i, j) 
       Next i 
вообще смысла действительно не имеет - удалила его. Получается , что значения тогда выводим так:
Код
DB.Range("A1", "AJ" & tend).Clear 
 DB.Range("A1", "AJ" & tend + 5).Value = araydb.

А вот что касается цыкла
Код
For i = 2 To UBound(araydb) Step 5 
           If collN("quarter") = quarter And collN("year") = year And collN("code") = сode Then 
               For ii = collN("quarter") To collN("Q090") 
               Next ii 
           End If 
       Next i 
то тут планировалось, что при изменении квартала/года/подразделения (выборе из выпадающего списка соответсвующего значения на листе Отчёт) будут выводится соответсвующие выбору значения параметров. Тогда как правильней организовать?
Изменено: lanasms - 17.09.2017 18:12:08
Запись данных для формирования отчёта с помощью макросов
 
Окончательный вариант должен быть таким, насколько понимаю. Сейчас проверю в файле - пока что только сюда записала)
Код
Private Sub SAVE_Click()
Dim year
    year = otchet.Range("year").Value
    code = otchet.Range("code").Value
    quarter = otchet.Range("quarter").Value
     ArrL = Array(quarter year code I010    I020    I030    I040    I050    I055    I060    I070    I080    I090    I100    I105    I110    I120    I130    I140    I150    I155    I160    I170    I175    I180    P010    P020    P030    Q020    Q030    Q040    Q050    Q060    Q070    Q080    Q090)
    Dim araydb()
    Dim araydb1()
    tend = IIf(DB.Range("A65500").End(xlUp).Row, DB.Range("A65500").End(xlUp).Row + 1, 1)
    If tend = 1 Then
        araydb = DB.Range("A1:Aj6").Value
    Else
        araydb = DB.Range("A1", "AJ" & tend).Value
        For i = 2 To UBound(araydb) Step 5
            If collN("quarter") = quarter And collN("year") = year And collN("code") = Kod Then
                For ii = collN("quarter") To collN("Q090")
                Next ii
            End If
        Next i
        ReDim araydb1(1 To UBound(araydb) + 5, 1 To collN("Q090"))
        For i = 1 To UBound(araydb)
         For j = 1 To LBound(araydb)
            araydb1(i, j) = araydb(i, j)
        Next j
        DB.Range("A1", "AJ" & tend).Clear
        DB.Range("A1", "AJ" & tend + 5).Value = araydb1
    End If
End Sub
Запись данных для формирования отчёта с помощью макросов
 
Да, это имела ввиду. Спасибо!
Запись данных для формирования отчёта с помощью макросов
 
Спасибо, попробую таким образом как Вы подсказали - я новичок, вторую неделю пытаюсь только во всём разобраться. В таком случае ещё вопрос - необходимо или нет вводить очистку (в макросе запланировала строчку Call deleteblankrows) и если да, то каким образом её лучше реализовать?  
Запись данных для формирования отчёта с помощью макросов
 
В созданной ранее теме (http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=95884&amp...) не совсем правильно подан вопрос по организации отчетности, приношу извинения! Всё же необходима помощь по реализации макросов. На первом листе будет находится база показателей, которые должны быть перенесены в таблицы листа Otchet. В части макроса (организовано кнопкой сберечь), есть попытка сделать это одномерным массивом, но возможно подскажите и другие варианты? Если же нет, то что в существующем макросе возможно ещё прописать? Файл прикреплён.
Сохранение данных с помощью VBA
 
Здравствуйте! Данные на первый лист внесла. Обозначения mi, mf, ci - имя, присвоенные ячейкам в виде одномерного массива в которые нужно перенести показания, а именно для ячейек с нумерацией:
10203040505560708090100105110120130140150155
Проблема ещё в том, что незнаю правильно ли будет сделать так же для продолжения таблицы, где вместо 1 идет три строчки - думаю, что этот вариант не подходит.
Изменено: lanasms - 14.09.2017 22:53:18
Сохранение данных с помощью VBA
 
Возник вопрос с написанием макроса для реализации следующей задачи. Есть перечень подразделений предприятия которые поквартально передают данные параметров cырья и их кодировка.  На первом листе будет находится база показателей, которые должны быть перенесены в желтые ячейки таблицы листа Otchet.  
Изменено: lanasms - 17.09.2017 12:30:28
Страницы: 1
Наверх