Sub Cycle_with_Massive_zalivka_bez_cycles()
Dim Naimenovanie As Variant
Dim i%, j%
Set Analiz = Workbooks("Vecher.xlsm").Sheets(Лист1.Name)
Set TDSheet = Workbooks("ArtAlex.xlsx").Sheets("стр2 (2)")
Application.ScreenUpdating = False
For j = 1 To 238
' Загружаем данные в массив
With Analiz
Naimenovanie = .Range(.Cells(1, 2), .Cells(21, 2)).Value
Serial = .Range(.Cells(1, 7), .Cells(21, 7)).Value
Postavchik = .Range(.Cells(1, 3), .Cells(21, 3)).Value
Nomer_Dogovora = .Range(.Cells(1, 5), .Cells(21, 5)).Value
Data_Dogovora = .Range(.Cells(1, 6), .Cells(21, 6)).Value
Nomer_Scheta = .Range(.Cells(1, 11), .Cells(21, 11)).Value
Data_Scheta = .Range(.Cells(1, 12), .Cells(21, 12)).Value
Nomer_Nacladnaya = .Range(.Cells(1, 4), .Cells(21, 4)).Value
Summa = .Range(.Cells(1, 13), .Cells(21, 13)).Value
End With
' Кидаем данные из массива в шаблон TDSheet
For i = 1 To 21
TDSheet.Cells(i + 3, 3) = Naimenovanie(i, 1)
TDSheet.Cells(i + 3, 4) = Serial(i, 1)
TDSheet.Cells(i + 3, 7) = Postavchik(i, 1)
TDSheet.Cells(i + 3, 8) = Nomer_Dogovora(i, 1)
TDSheet.Cells(i + 3, 9) = Data_Dogovora(i, 1)
TDSheet.Cells(i + 3, 10) = Nomer_Scheta(i, 1)
TDSheet.Cells(i + 3, 11) = Data_Scheta(i, 1)
TDSheet.Cells(i + 3, 12) = Nomer_Nacladnaya(i, 1)
TDSheet.Cells(i + 3, 17) = Summa(i, 1)
Next i
' Удаляем 21 строку с данными
For r = 1 To 21
Analiz.Rows(1).Delete
Next r
' Сохраняем шаблон с именем Иванов и время текущее
Workbooks("ArtAlex.xlsx").Activate
strPath = "C:\Users\Отчеты Еженедельные\февраль"
On Error Resume Next
x = GetAttr(strPath) And 0
If Err = 0 Then
strDate = Format(Now, "hh-mm-ss-ms")
FileNameXls = strPath & "\" & "Иванов " & " " & strDate & ".xlsx"
ActiveWorkbook.SaveCopyAs Filename:=FileNameXls
Else
MsgBox "Папка " & strPath & " недоступна или не существует!", vbCritical
End If
Next j
Application.ScreenUpdating = True
End Sub |