Copy dòng cách quãng

Liên hệ QC

hongphuong1997

Thành viên tiêu biểu
Tham gia
12/11/17
Bài viết
771
Được thích
321
Giới tính
Nữ
Nhờ thầy cô và các bác viết giúp code copy dòng cách quãng như file đính kèm.
 

File đính kèm

File đính kèm

Bài này có nhiều bài lắm rồi mà.
Cho trước một mảng, rồi chèn số dòng trống xen vào.
Viết một hàm, đầu vào là mảng gốc và số dòng cần xen vào. (Lưu ý là dùng mảng thì hợp lý cho bài này).
Rồi còn đố viết 1 vòng lặp...
 
Bài này có thể giải quyết khi ta lập bảng sau:
Ta fải copy từ dòng 2 tới dòng 20 (2+ 18)
Copy từ dòng 3 tới dòng 29 (có nghĩa là 2 + 27)
v.v . . . . .
Mà các con số 18 = 2 * 9;
27 = 9 * 3

Ta có thể For . . . Next là được thôi.
 
Bài này có thể giải quyết khi ta lập bảng sau:
Ta fải copy từ dòng 2 tới dòng 20 (2+ 18)
Copy từ dòng 3 tới dòng 29 (có nghĩa là 2 + 27)
v.v . . . . .
Mà các con số 18 = 2 * 9;
27 = 9 * 3

Ta có thể For . . . Next là được thôi.
Cháu biết thì nào cũng có cao nhân mà,
Bác Viết giúp cháu với.
 
Đây là sự chiếu cố người có ảnh đẹp đó nha:
PHP:
Sub CopyCach2uang()
 Dim J As Long, Col As Integer
 
 Col = [B2].CurrentRegion.Columns.Count
 For J = 2 To 8
    Cells(J, "B").Resize(, Col).Copy Destination:=Cells(2 + 9 * J, "C")
    Cells(2 + 9 * J, "B").Value = J - 1
 Next J
End Sub
 
Đây là sự chiếu cố người có ảnh đẹp đó nha:
PHP:
Sub CopyCach2uang()
Dim J As Long, Col As Integer

Col = [B2].CurrentRegion.Columns.Count
For J = 2 To 8
    Cells(J, "B").Resize(, Col).Copy Destination:=Cells(2 + 9 * J, "C")
    Cells(2 + 9 * J, "B").Value = J - 1
Next J
End Sub
Con cảm ơn bác, để con xem đã nhé!
Bài đã được tự động gộp:

@hongphuong1997 sau loạt bài trả lời trên, bạn thử viết không dùng vòng lặp được không?
Hu hu... nhưng cháu chưa biết phương pháp đó bác ui.
Bác chỉ dẫn cho cháu với.
 
Nếu không dùng vòng lặp thi Hong Phuong viết vo tư
Cứ thế copy và Pasd có gì đâu.
Đó cũng là 1 cách hay, đỡ phải suy nghĩ nhiều. Nhưng ý mình đố ở đây khi dữ liệu lớn hơn hoặc chưa biết trước số dòng cột thì không copy paste được. Gợi ý 1 chút nhé, bạn tạo thêm cột phụ A, điền toàn số 1 đến 7 rồi lặp lại 8 lần. Sort theo cột phụ này rồi xóa cột phụ. Bây giờ làm sao để điền cột phụ mà không dùng vòng lặp?
 
Đó cũng là 1 cách hay, đỡ phải suy nghĩ nhiều. Nhưng ý mình đố ở đây khi dữ liệu lớn hơn hoặc chưa biết trước số dòng cột thì không copy paste được. Gợi ý 1 chút nhé, bạn tạo thêm cột phụ A, điền toàn số 1 đến 7 rồi lặp lại 8 lần. Sort theo cột phụ này rồi xóa cột phụ. Bây giờ làm sao để điền cột phụ mà không dùng vòng lặp?
Thế bạn làm thử cho mình coi xem nào?
Bài đã được tự động gộp:

Đây là sự chiếu cố người có ảnh đẹp đó nha:
PHP:
Sub CopyCach2uang()
Dim J As Long, Col As Integer

Col = [B2].CurrentRegion.Columns.Count
For J = 2 To 8
    Cells(J, "B").Resize(, Col).Copy Destination:=Cells(2 + 9 * J, "C")
    Cells(2 + 9 * J, "B").Value = J - 1
Next J
End Sub
Bác
SA_DQ

ui, bác ui,
Chuẩn không cần chỉnh Bác à
Con cảm ơn Bác nhé!
 
Lần chỉnh sửa cuối:

File đính kèm

Lần chỉnh sửa cuối:
Dạy ra những người không thực tiển; kĩ sự điện không biết ráp nối khởi động từ để nó làm việc
Thậm chí rất nhiều kĩ sư & cao đẵng mà mình tiếp nhận vô cơ quan không biết bao nhiêu % thán khí trong khí quyển.

Nói rõ hơn sẽ là: Ngành GD của chúng ta đang dạy cho con cháu những kiến thức mà người thầy, người cô có; Chứ không fải dạy những kiến thức mà XH đang cần
Mở rọng ra; Nền GD nước nhà chưa chuyển mình theo cơ chế thị trường
 
Lần chỉnh sửa cuối:
Bạn chạy code, nhập số dòng cần giãn cách vào inputbox.
(Trong code mình dùng mảng nhưng chỉ cần copy paste range là được).
Anh oy, anh viết gì vậy?
Các khoảng trống đó người ta đều có dữ liệu hết mớ
Anh insert như vậy để mất hết dữ liệu àh.
anh xem và làm lại đi anh nhé!
Hi hi hi....
 
Web KT

Bài viết mới nhất

Back
Top Bottom