Добить "нулями" отсутствующие данные - VBA

Узнай цену своей работы

Формулировка задачи:

Добрый день, уважаемые коллеги База данных на предприятии выдает статистические результаты в CSV формате. Но делает это не самым хорошим образом, те месяца где было "пусто" просто пропускает, а это плохо для постройки графика, потому как где ноль, ноль и должен быть, а не должна быть "сглаженная прямая" на диаграмме. В приложении файл парсер CSV и два CSV файла для примера. Один полный 36 месяцев, второй с пропусками. Задача состоит в том, что бы в место пропуска вклинить "пропущенный месяц" и ниже в таблице нарисовать нолик. В файле уже имеются наработки, но как то работать они не хотят... Заранее благодарен за любую помощь!

Решение задачи: «Добить "нулями" отсутствующие данные»

textual
Листинг программы
For c = Cells(2, 2).End(xlToRight).Column - 1 To 2 Step -1
    a = Split(Cells(2, c + 1), "-")
    dt = DateSerial(a(0), a(1), 1)
    While Format$(DateAdd("m", -1, dt), "yyyy-mm") > Cells(2, c)
        dt = DateAdd("m", -1, dt)
        Range(Cells(2, c + 1), Cells(3, c + 1)).Insert xlShiftToRight
        Cells(2, c + 1) = Format$(dt, "yyyy-mm")
        Cells(3, c + 1) = 0
    Wend
Next

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

13   голосов , оценка 4.308 из 5