Hi folks,
I have this situation, where i need to copy the whole sheet to a blank sheet but only the cells with information. i have the below code but i cant get it to work correctly. i've tried to do it per column but that doesnt work either.
any help greatly appreciated.
I have this situation, where i need to copy the whole sheet to a blank sheet but only the cells with information. i have the below code but i cant get it to work correctly. i've tried to do it per column but that doesnt work either.
any help greatly appreciated.
test_rc1.xlsx | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | |||
1 | start | first | sec | thr | oper | start first | haps | oper | start | sec | third | start | first | sec | thr | oper | start first | haps | oper | start | sec | third | ||||
2 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
3 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
4 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
5 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
6 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||
7 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||
8 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||
9 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||||||
10 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||||||
11 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||||||
12 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
13 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
14 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
15 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||
16 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||||||||
17 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||||||||
18 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||
19 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||||||||||||
20 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | ||||||||||||||
21 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||||||
22 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||||||||||
23 | xx | xx | xx | xx | xx | xx | xx | |||||||||||||||||||
24 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||||||||||
25 | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | xx | |||||||||||||||
26 | xx | xx | xx | xx | ||||||||||||||||||||||
27 | xx | xx | xx | xx | ||||||||||||||||||||||
28 | xx | xx | xx | xx | ||||||||||||||||||||||
29 | xx | xx | xx | xx | ||||||||||||||||||||||
30 | xx | xx | xx | xx | ||||||||||||||||||||||
Sheet1 |
VBA Code:
Dim Ary As Variant, Nary As Variant
Dim r As Long, c As Long, nr As Long
Ary = Intersect(Sheets("sheet1").UsedRange, Sheets("sheet1").Range("A:K"))
ReDim Nary(1 To UBound(Ary), 1 To 16)
For r = 1 To UBound(Ary)
If Ary(r, 1) <> "" Then
nr = nr + 1
For c = 1 To UBound(Ary, 2)
Nary(nr, c) = Ary(r, c)
Next c
End If
Next r
Sheets("sheet2").Range("A1").Resize(nr, 16).Value = Nary
' End Sub
'Private Sub CopyItOver()
Set NewBook = Workbooks.Add
Workbooks("test_rc1.xlsm").Worksheets("sheet2").Range("A1:P1000").Copy
NewBook.Worksheets("Sheet1").Range("A1").PasteSpecial (xlPasteValues)
Last edited by a moderator: