Последний ряд на новый Последний ряд VBA

Используйте функцию order:

set.seed(1)
DF <- data.frame(ID= sample(letters[1:26], 15, TRUE),
                 num = sample(1:100, 15, TRUE),
                 random = rnorm(15),
                 stringsAsFactors=FALSE)
DF[order(DF[,'ID']), ]
   ID num      random
10  b  27  0.61982575
12  e   2 -0.15579551
5   f  78  0.59390132
11  f  39 -0.05612874
1   g  50 -0.04493361
2   j  72 -0.01619026
14  j  87 -0.47815006
3   o 100  0.94383621
9   q  13 -1.98935170
8   r  66  0.07456498
13  r  39 -1.47075238
15  u  35  0.41794156
4   x  39  0.82122120
6   x  94  0.91897737
7   y  22  0.78213630

Другое решение будет использовать функцию orderBy из пакета doBy:

> library(doBy)
> orderBy(~ID, DF)
0
задан Pᴇʜ 17 January 2019 в 09:24
поделиться

1 ответ

Просто определите NewLastRow в столбце D и вычислите RowSize:=NewLastRow - SourceRange.Row + 1

Dim SourceRange As Range
Set SourceRange = Cells(Rows.Count, 2).End(xlUp).Resize(1, 26)

Dim NewLastRow As Long 'get new last row in column D
NewLastRow = Cells(Rows.Count, "D").End(xlUp).Row

SourceRange.AutoFill Destination:=SourceRange.Resize(RowSize:=NewLastRow - SourceRange.Row + 1)
<час>

Обратите внимание, что вы говорите «что можно обнаружить в столбце A» но…

Set SourceRange = Cells(Rows.Count, 2).End(xlUp)

… обнаруживает в столбце 2 столбец B!
Если вы хотите обнаружение в столбце A вместо B, вы должны использовать…

Set SourceRange = Cells(Rows.Count, "A").End(xlUp).Offset(ColumnOffset:=1).Resize(1, 26)
0
ответ дан Pᴇʜ 17 January 2019 в 09:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: