Я пытаюсь взять значения из определенных ячеек и сделать их заполняемым столбцом. У меня есть несколько листов с разными значениями.
Этот код работает должным образом с одним листом:
Sub Formatting_one()
Range("A12").Value = Range("M6").Value
Range("A12:A" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
End Sub
Затем я начал пробовать то же самое, но с циклическим просмотром листов. Вот в чем я застрял. Вот мой код для этого:
Sub Formatting_many()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.[A1].Resize(, 6).EntireColumn.Insert
ws.Range("A12").Value = ws.Range("M6").Value
ws.Range("A12:A" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
ws.Range("B12").Value = ws.Range("M7").Value
ws.Range("B12:B" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
ws.Range("C12").Value = ws.Range("M8").Value
ws.Range("C12:C" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
ws.Range("D12").Value = ws.Range("I5").Value
ws.Range("D12:D" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
ws.Range("E12").Value = ws.Range("I4").Value
ws.Range("E12:E" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
ws.Range("F12").Value = ws.Range("I6").Value
ws.Range("F12:F" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
ws.Range("G12").Value = ws.Range("I7").Value
ws.Range("G12:G" & Cells(Rows.Count, 7).End(xlUp).Row).FillDown
Next ws
End Sub
Я сделал шаг за шагом, и в результате ячейка копируется в первую ячейку диапазона заполнения, но затем удаляется. Кто-нибудь может помочь?
Cells(Rows.Count, 7).End(xlUp).Row
вам нужно указать рабочий лист:ws.Cells(ws.Rows.Count, 7).End(xlUp).Row
Также обратите внимание, что7
означает столбец G. Убедитесь, что это правильный столбец для поиска последней использованной строки. - person Pᴇʜ   schedule 15.11.2018