Привет, это мой первый пост, и я новичок, когда дело доходит до VBA.
Итак, я пытался последние 6 часов, чтобы выполнить одну задачу.
Мне уже удалось получить код для цикла «Для каждого», и он работает и копирует значение в существующую книгу. Но я не мог понять, почему он всегда копирует значение в A2, а не дальше в A3 / A4 / A5 и т. Д.
Я попробовал этот кусок кода "range = range + 1", но я продолжаю получать ошибки времени выполнения, и он все равно копирует значения в A2 и перезаписывает его, когда получает новое значение из цикла.
Я думаю, что нужно всего лишь небольшое изменение, но я не могу понять это. (
Sub copie1()
Dim ws As Worksheet
Dim cell As Range
Dim targetsheet As Worksheet
Dim target As Range
Dim rngTemp As Range
Set wkba = ActiveWorkbook
Worksheets("cop1").Activate
LR = Cells(Rows.Count, "A").End(xlUp).Row
LT = Cells(Rows.Count, "X").End(xlUp).Row
Set rngTemp = Range("X2:X" & LT)
Workbooks.Open Filename:="C:\Users\path......."
Set targetsheet = Worksheets("Data")
Set target= targetsheet.Range("A1")
For Each cell In rngTemp
If cell > 0 Then
target.Offset(1, 0) = cell.Value
End If
target = target+1 '// is this right?
Next cell
End Sub
моя цель - пройти по столбцу X в рабочей книге и скопировать все данные, которые больше 0 (потому что есть пустые ячейки и ячейки со значением 0)
и вставьте его в существующую книгу в диапазоне A2 / A3 / A4 и т. д.