beginerVBA
Thành viên mới

- Tham gia
- 10/7/15
- Bài viết
- 17
- Được thích
- 1
=OFFSET($A$1,ROUNDUP(ROW()/$D$1,0)-1,,,)
Sub cuchuoi()
N1 = Range("D1").Value
N2 = Application.Count(Range("A:A"))
For i = 1 To N2
For j = 1 To N1
Cells(N1 * (i - 1) + j, 2) = Cells(i, 1)
Next
Next
End Sub
Thử với code "tào lao" này xem sao:Nhờ các cao nhân giúp e code VBA này với, copy cột A có sẵn thành cột B mỗi hàng bên A thành 5 hàng bên B
Chân thành cảm ơn![]()
Sub GPE()
Dim I As Long
For I = 1 To 5
Range("A1:A5").Copy Range("B" & 5 * I - 4)
Next I
Range("B1:B100").Sort Range("B1:B100"), xlAscending, , , , , , xlGuess
End Sub
Bạn có cần thiết phải dùng VBA không vậy? Ở B1, bạn chỉ cần đặt công thức:
Vậy là bạn kéo xuống là có kết quả rồi.Mã:=OFFSET($A$1,ROUNDUP(ROW()/$D$1,0)-1,,,)
Nếu dùng code, bạn thử:
Mã:Sub cuchuoi() N1 = Range("D1").Value N2 = Application.Count(Range("A:A")) For i = 1 To N2 For j = 1 To N1 Cells(N1 * (i - 1) + j, 2) = Cells(i, 1) Next Next End Sub
Bạn xem lại file này nhé. Thứ nhất là code trong file này tôi chạy không thấy lỗi, không biết tại sao bạn lại bảo lỗi. Thứ 2 là công thức. Bản chất công thức ở cột C là tôi làm qua các bước từ cột E đến cột H. Bạn học thêm nhé.Bạn giải thích cho mình hàm offset đoạn sau có -1 và 3 dấu phẩy được không, mình không hiểu
Cảm ơn bạn trước
Chắc mình nhầm file. Bạn tải lại nhéFile bạn up lên trống rỗng đâu có công thức chi đâu bạn, hình như nhầm file rồi
Còn code lỗi mình có chụp hình đâyView attachment 167986