P
P
Pavel Kovalev2016-06-08 08:55:38
Visual Basic
Pavel Kovalev, 2016-06-08 08:55:38

Arrays in VBA. How to save values ​​at each step of the loop?

Essence. It is necessary to create N sheets with the format "01.06. - Sunday.06" and so on until the end of the month. I can't save found "Sundays" of the month in an array. At least kill.

Private Sub cmd_1_Click()
    
    Dim NeuPapier As Worksheet 'создание доп листа по неделям
    Dim NahmePapier As String ' имя этого листа
    'Dim PreFixDate As String 'нужен ли ноль перед числом
    Dim arrSonntag() As String
    
    Heute = DatePart("d", Now) 'возвращает сегодняшнюю дату
    Monate = MonthName(Month(Now - Heute)) 'предыдущий месяц для копирования
    DerTag = Day(DateAdd("d", -1, DateAdd("m", 1, Now - Heute + 1))) 'количество в месяце дней настоящего
    
    Sheets(Monate).Copy after:=Sheets(Monate)
    Nahme = Monate & " " & "(2)" 'задаем имя листу
    Sheets(Nahme).Name = MonthName(Month(Now))
    
    
   If DerTag = 30 Then
    
        Sheets(MonthName(Month(Now))).Range("B6:K35").ClearContents
        Sheets(MonthName(Month(Now))).Range("N19:N23").ClearContents
        Sheets(MonthName(Month(Now))).Rows("36:36").Delete
    
    For i = 0 To DerTag 'цикл для ввода даты
    
       Sheets(MonthName(Month(Now))).Cells(5 + i, 2) = Now - Heute + i
        
    Next i
    
    NewMonate = Day(Sheets(MonthName(Month(Now))).Cells(5 + 1, 2)) & "." & Month(Now)  'начало месяца
    EndMonate = Day(Sheets(MonthName(Month(Now))).Cells(5 + 30, 2)) & "." & Month(Now) 'конец месяца
    

    '1. нужно создать Н-ое кол-во листов формата "01.ММ - 1ВВ.ММ", "1ВВ+1.ММ - 2ВВ.ММ", "2ВВ+1.ММ - 3ВВ.ММ", "3ВВ+1.ММ - 4ВВ.ММ", "4ВВ.ММ - КК.ММ"
        '2. для этого нужно создать массив со всеми воскр. внутри
        '3.
     

     For i = 1 To DerTag
        
            
            If WeekdayName(Weekday(Sheets(MonthName(Month(Now))).Cells(5 + i, 2), vbMonday)) = "воскресенье" Then 'перебирает все ячейки в поисках воскресения
             

        End If
       
   
 
       Next i

Answer the question

In order to leave comments, you need to log in

1 answer(s)
P
Pavel Kovalev, 2016-06-08
@kovalevpa

Thanks everyone, solved through collections

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question