Я пытаюсь взять приблизительный список данных, а затем скопируйте их в предварительно отформатированную организованную форму. Для этого у меня есть приблизительный список, чтобы каждый элемент в списке нумерулся по порядку, независимо от того, существуют ли пробелы между элементами. Макрос, который я пытаюсь сделать, возьмет этот грубый список и скопирует его в форму без пробелов. Потерпите меня, я пытался научить себя Visual Basic, поэтому код, который у меня есть, может быть ... грязным. В настоящее время проблема, что я имею что я получаю переполнение на I = I + 1.Проверьте, присутствует ли значение, затем скопируйте его на другой рабочий лист
Sub Print_Sheet_Populate()
'
' Print_Sheet_Populate Macro
' Takes Items from Raw Data sheet and puts them in Print Sheet sheet.
'
'
Dim wsS1 As Worksheet
Dim wsS2 As Worksheet
Dim ending As Long
Dim copy() As Long
Dim i As Long
Set wsS1 = Sheets("Raw Data")
Set wsS2 = Sheets("Print Sheet")
With wsS1.Range("A:A") 'To copy the item numbers in the rough data to an array
i = 1
Set c = .Find(i, LookIn:=xlValues)
If Not c Is Nothing Then
ReDim copy(i)
copy(i - 1) = c.Value
Do
i = i + 1
ending = i
Loop While Not c Is Nothing
End If
End With
With wsS2.Range("A24:A324") 'To paste the data from the array to the form
i = 1
If Not i = ending Then
Do
Worksheets("wsS2").Range("A" & i).Value = copy(i - 1)
i = i + 1
Loop While Not c Is Nothing
End If
End With
End Sub
Это произошло, спасибо EEM! –
Рад помочь! Вы пытались заменить первый первый цикл на некоторый вид данных и заменить второй цикл на что-то вроде 'Range.resize (ubound (array), ubound (array, 2)). Value = Array', чтобы опубликовать весь массив сразу? – EEM