Страницы: 1
RSS
Как сделать циклический перебор дат в месяце
 
Уважаемые форумчане, прошу заранее не судить строго. Есть код который с помощью автофильтра выбирает определенный день в месяце и производит операцию. Вопрос следующий как правильно прописать цикл, что бы после выбора 1 числа в месяце и проведения действий,  выбиралось второе число месяца и так же производились действия , третье и так до конца месяца. В данный момент прописал код 30 раз на каждый день.
Код
Sub AAОтчетПервоеПоследнееСобытие()

LastRow = Cells(1, 1).End(xlDown).Row
Rows("1:1").Select
Selection.AutoFilter

Application.ScreenUpdating = False

On Error Resume Next
ActiveSheet.Range("$A$1:$G$" & LastRow).AutoFilter Field:=1, Operator:= _
        xlFilterValues, Criteria2:=Array(2, "11/1/2019")
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
Range("A2:G" & LastRow).SpecialCells(xlCellTypeVisible).Select
Selection.Copy
Sheets("Лист2").Select
Range("A1").Select
ActiveSheet.Paste
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
       i = LastRow - 1
Range("A2:G" & i).Select
Selection.Delete Shift:=xlUp
Range("A1:G2").Select
Selection.Cut
Sheets("Лист3").Select
Cells(Rows.Count, 1).End(xlUp).Offset(2).Select
ActiveSheet.Paste
Sheets("Лист1").Select
 
прибавляйте к 1-му числу по единичке
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
пробовал не работает
 
Код
    For dt = DateSerial(2019, 11, 1) To DateSerial(2019, 11, 30)
        ActiveSheet.Range("$A$1:$G$" & LastRow).AutoFilter Field:=1, Operator:=xlFilterValues, Criteria2:=Array(2, Replace(Format(dt, "mm-dd-yyyy"), "-", "/"))
        'Ваш код
        '...
    Next
Изменено: МатросНаЗебре - 11.12.2019 11:37:32
 
МатросНаЗебре, Вы волшебник. Спасибо все работает!
Страницы: 1
Наверх