У меня есть этот лист Excel (изображение выше), и мне нужно обновлять его ежемесячно, и, как вы можете видеть, каждый месяц появляется новый столбец с новыми номерами. Потратив некоторое время, пытаясь разобраться с vba и расспросив, я с благодарностью получил этот код:
Sub Increment_Month()
Dim lngLastCol As Long, lngRow As Long
lngRow = ActiveCell.Row
lngLastCol = Cells(lngRow, Columns.Count).End(xlToLeft).Column
If IsDate(Cells(lngRow, lngLastCol)) Then
With Union(Cells(3, lngLastCol + 1), Cells(17, lngLastCol + 1), Cells(32, lngLastCol + 1))
.Value = DateAdd("M", 1, CDate(Cells(lngRow, lngLastCol)))
.NumberFormat = Cells(lngRow, lngLastCol).NumberFormat
End With
End If
End Sub
Это увеличивает месяцы для меня, поэтому я могу нажать на кнопку, и в качестве заголовка у него будет следующий месяц. Теперь я застрял на том, как вставить форматирование предыдущих месяцев для следующих месяцев, то есть есть один макрос, который обновляет формат, без необходимости копировать формат для каждого месяца (границы, цветовые заголовки и т. Д.), Но макрос я получил только переписывает данные за последние месяцы, не переходя на месяц.
Извините, если это не имеет смысла (не стесняйтесь, чтобы я разъяснил это).
Спасибо за любую помощь!