Здравствуйте! Помогите решить проблему. Есть макрос по заполнению ячеек по условию, при наступлении нового календарного года , заполненные листы сохраняются, после чего данные стираются и записываются данные уже за следующий год.
Проблема в том, что при выполнении условия с сохранением и очисткой данных, новые данные в таблицу не записываются.
Проблема в том, что при выполнении условия с сохранением и очисткой данных, новые данные в таблицу не записываются.
Код |
---|
Dim target As Worksheet Dim n, f, t, q, qw, nar As Long Dim d As Date Dim AddPapka, az() As String Dim wb As Workbook d = Format(Date + 1, "dd") For t = 5 To 16 If Sheets("Áàçà Äàííûõ").Range("X3") > dd Then Application.ScreenUpdating = 0 AddPapka = ThisWorkbook.Path & "\Ëèñòû íàðÿäîâ çà " & dd & " ãîä\" MkDir AddPapka For qw = 5 To 16 nn = "Ëèñò íàðÿäîâ çà " & qw - 4 & "." & dd ThisWorkbook.Sheets(qw).Copy ww = ThisWorkbook.Path & "\Ëèñòû íàðÿäîâ çà " & dd & " ãîä\" & nn & ".xlsx" ActiveWorkbook.SaveCopyAs ww ActiveWorkbook.Close SaveChanges:=False Sheets(qw).Range("C6:M36").ClearContents Sheets(qw).Range("P6:Z36").ClearContents Next qw MsgBox "Ëèñòû íàðÿäîâ çà " & dd & " ãîä ñîõðàíåíû!" Exit For Application.ScreenUpdating = 1 If Sheets("Áàçà Äàííûõ").Range("X2") = t - 4 Then Set target = Sheets(t) target.Range("A2") = "íà " + MonthName(Month(Date + 1)) + " " + Format(Date + 1, "yyyy") + " ãîäà" For nar = 0 To 2 For f = 6 To 36 If target.Cells(f, 1) = Me.Controls("pd_" & nar).Text Then For n = 16 To 20 If target.Cells(f, n) = d Then target.Cells(f, n) = d az = Split(ng.Text, " ", 2) target.Range("D39") = az(1) target.Range("M39") = az(2) Exit For Else If IsEmpty(target.Cells(f, n)) = True Then target.Cells(f, n) = d az2 = Split(ng.Text, " ", 2) target.Range("D39") = az2(1) target.Range("M39") = az2(2) Exit For End If End If Next n Exit For End If Next f Next Exit For Exit For End If End If Next t |