Giúp Copy dữ liệu Sheet2 sang Sheet1 và Insert cách đều 10 dòng trống (1 người xem)

  • Thread starter Thread starter tn06065
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

tn06065

Thành viên thường trực
Tham gia
21/8/13
Bài viết
241
Được thích
10
ở Sheet1 ô c3:e3 và lặp lại ở ô c14:e14 tương ứng với kết quả lấy từ Sheet2 với a3:c3 và lần lượt tiếp theo Sheet1 ô c25:e25 và lặp lại ở ô c36:e36 tương ứng với kết quả lấy từ Sheet2 với a4:c4 và cứ như vậy cho đến mãi mãi ở 2sheet ạ
file đính kèm em gửi dưới
nhờ mọi người viết hộ công thức giúp em ạ
cảm ơn ạ
 

File đính kèm

ở Sheet1 ô c3:e3 và lặp lại ở ô c14:e14 tương ứng với kết quả lấy từ Sheet2 với a3:c3 và lần lượt tiếp theo Sheet1 ô c25:e25 và lặp lại ở ô c36:e36 tương ứng với kết quả lấy từ Sheet2 với a4:c4 và cứ như vậy cho đến mãi mãi ở 2sheet ạ
file đính kèm em gửi dưới
nhờ mọi người viết hộ công thức giúp em ạ
cảm ơn ạ
Góp ý cho bạn:
1/ Muốn copy từ sheet này sang sheet khác và Insert 10 dòng thì chỉ có thể sử dụng VBA.
2/ Nếu muốn sử dụng VBA thì bạn nên đăng bài trong Box Lập trình với Excel, với tiêu đề là "Copy dữ liệu từ sheet này sang sheet khác và Insert cách đều 10 dòng"
 
Góp ý cho bạn:
1/ Muốn copy từ sheet này sang sheet khác và Insert 10 dòng thì chỉ có thể sử dụng VBA.
2/ Nếu muốn sử dụng VBA thì bạn nên đăng bài trong Box Lập trình với Excel, với tiêu đề là "Copy dữ liệu từ sheet này sang sheet khác và Insert cách đều 10 dòng"
do em chưa dùng đc vba a ạ, vậy có cách nào khác không a ?
 
do em chưa dùng đc vba a ạ, vậy có cách nào khác không a ?
1/ Tập làm quen với VBA đi, các thành viên sẽ giúp code trong File cho bạn, bạn chi cần biết thiết lập chế độ chạy Macro (nếu không biết thì hỏi) sau đó bạn chỉ việc nhấn nút 1 cái là xong luôn, nhanh, gọn, lẹ và giảm dung lượng File rất nhiều so với dùng hàm.

2/ Code trong File bạn tôi đã làm xong, nhưng do không đúng Box và tiêu đề lại vi phạm nội quy nên tôi không tải File lên.
 
Lần chỉnh sửa cuối:
ở Sheet1 ô c3:e3 và lặp lại ở ô c14:e14 tương ứng với kết quả lấy từ Sheet2 với a3:c3 và lần lượt tiếp theo Sheet1 ô c25:e25 và lặp lại ở ô c36:e36 tương ứng với kết quả lấy từ Sheet2 với a4:c4 và cứ như vậy cho đến mãi mãi ở 2sheet ạ
file đính kèm em gửi dưới
nhờ mọi người viết hộ công thức giúp em ạ
cảm ơn ạ
Mãi mãi là bao nhiêu?
PHP:
Public Sub sGpe()
Dim sArr(), dArr(), I As Long, K As Long, R As Long
sArr = Sheet2.Range("A3", Sheet2.Range("A3").End(xlDown)).Resize(, 3).Value
R = UBound(sArr)
ReDim dArr(1 To R * 2 * 11, 1 To 4)
K = -10
For I = 1 To R
        K = K + 11
    dArr(K, 1) = 1
    dArr(K, 2) = sArr(I, 1)
    dArr(K, 3) = sArr(I, 2)
    dArr(K, 4) = sArr(I, 3)
        K = K + 11
    dArr(K, 1) = 2
    dArr(K, 2) = sArr(I, 1)
    dArr(K, 3) = sArr(I, 2)
    dArr(K, 4) = sArr(I, 3)
Next I
Sheet1.Range("B3").Resize(K, 4) = dArr
End Sub
 
1/ Tập làm quen với VBA đi, các thành viên sẽ giúp code trong File cho bạn, bạn chi cần biết thiết lập chế độ chạy Macro (nếu không biết thì hỏi) sau đó bạn chỉ việc nhấn nút 1 cái là xong luôn, nhanh, gọn, lẹ và giảm dung lượng File rất nhiều so với dùng hàm.

2/ Code trong File bạn tôi đã làm xong, nhưng do không đúng Box và tiêu đề lại vi phạm nội quy nên tôi không tải File lên.
dạ em cảm ơn ah, em đang tìm hiểu thêm về vba, em sẽ nhờ a chỉ giáo tư vấn thêm
Bài đã được tự động gộp:

Mãi mãi là bao nhiêu?
PHP:
Public Sub sGpe()
Dim sArr(), dArr(), I As Long, K As Long, R As Long
sArr = Sheet2.Range("A3", Sheet2.Range("A3").End(xlDown)).Resize(, 3).Value
R = UBound(sArr)
ReDim dArr(1 To R * 2 * 11, 1 To 4)
K = -10
For I = 1 To R
        K = K + 11
    dArr(K, 1) = 1
    dArr(K, 2) = sArr(I, 1)
    dArr(K, 3) = sArr(I, 2)
    dArr(K, 4) = sArr(I, 3)
        K = K + 11
    dArr(K, 1) = 2
    dArr(K, 2) = sArr(I, 1)
    dArr(K, 3) = sArr(I, 2)
    dArr(K, 4) = sArr(I, 3)
Next I
Sheet1.Range("B3").Resize(K, 4) = dArr
End Sub
sheet1 khoảng 1500 dòng b ah
 
Lần chỉnh sửa cuối:
ở Sheet1 ô c3:e3 và lặp lại ở ô c14:e14 tương ứng với kết quả lấy từ Sheet2 với a3:c3 và lần lượt tiếp theo Sheet1 ô c25:e25 và lặp lại ở ô c36:e36 tương ứng với kết quả lấy từ Sheet2 với a4:c4 và cứ như vậy cho đến mãi mãi ở 2sheet ạ
file đính kèm em gửi dưới
nhờ mọi người viết hộ công thức giúp em ạ
cảm ơn ạ
Mã:
B3 =MOD(ROWS($1:2),2)+1
Mã:
C3 =INDIRECT("Sheet2!"&ADDRESS(INT(ROWS($1:66)/22),COLUMNS($A:A)))
Copy ngang
Copy dòng 3 cho các dòng còn lại
 

File đính kèm

Mã:
B3 =MOD(ROWS($1:2),2)+1
Mã:
C3 =INDIRECT("Sheet2!"&ADDRESS(INT(ROWS($1:66)/22),COLUMNS($A:A)))
Copy ngang
Copy dòng 3 cho các dòng còn lại
sử dụng C3 theo công thức trên thì ảnh hưởng tới số liệu từ cột I (sheet1) trở đi bạn à, có cách nào khắc phục đạt mục đích mà không ảnh hưởng phần data còn lại từ cột I (sheet1) trở đi không ạ
 
sử dụng C3 theo công thức trên thì ảnh hưởng tới số liệu từ cột I (sheet1) trở đi bạn à, có cách nào khắc phục đạt mục đích mà không ảnh hưởng phần data còn lại từ cột I (sheet1) trở đi không ạ
Tại sao lại ảnh hưởng? Giải thích cụ thể, cho vd. cụ thể. Nói bâng quơ thế ai hình dung nổi?

Để đề phòng có sự hiểu lầm thì tôi lưu ý là người ta viết không cẩn thận
Copy dòng 3 cho các dòng còn lại
nhưng phải hiểu là "Copy B3:E3 cho các dòng còn lại"

Chỉ là đề phòng hiểu lầm thôi. Không có ý nói bất cứ ai chậm hiểu.

Có điều INT không cần thiết. Excel sẽ chỉ lấy phần nguyên
 
Lần chỉnh sửa cuối:
Mã:
B3 =MOD(ROWS($1:2),2)+1
Mã:
C3 =INDIRECT("Sheet2!"&ADDRESS(INT(ROWS($1:66)/22),COLUMNS($A:A)))
Copy ngang
Copy dòng 3 cho các dòng còn lại
bạn xem sửa giúp mình, sheet TH c3 khi = =INDIRECT("Sheet2!"&ADDRESS(INT(ROWS($1:66)/22),COLUMNS($A:A))) thì vùng cột I trở đi là bị xóa số liệu bạn ạ
file mình áp gửi dưới
 

File đính kèm

bạn xem sửa giúp mình, sheet TH c3 khi = =INDIRECT("Sheet2!"&ADDRESS(INT(ROWS($1:66)/22),COLUMNS($A:A))) thì vùng cột I trở đi là bị xóa số liệu bạn ạ
file mình áp gửi dưới
Người ta làm cho tập tin ví dụ mà trong đó dữ liệu ở Sheet2. Bây giờ dữ liệu ở sheet ngw thì phải sửa lại. Ít ra thì tư duy lôgíc nó bắt phải thế. Chịu khó suy nghĩ thì ra thôi.
Mã:
=INDIRECT("ngw!"&ADDRESS(ROWS($1:66)/22,COLUMNS($A:A)))
 
Người ta làm cho tập tin ví dụ mà trong đó dữ liệu ở Sheet2. Bây giờ dữ liệu ở sheet ngw thì phải sửa lại. Ít ra thì tư duy lôgíc nó bắt phải thế. Chịu khó suy nghĩ thì ra thôi.
Mã:
=INDIRECT("ngw!"&ADDRESS(ROWS($1:66)/22,COLUMNS($A:A)))
cám ơn b
 
.............................
sheet1 khoảng 1500 dòng b ah
1/ Bạn sử dụng đến 1500 dòng mà dùng hàm chắc kéo mõi tay.
2/ Nên sửa tiêu đề là "Giúp Copy dữ liệu Sheet2 sang Sheet1 và Insert cách đều 10 dòng trống", hoặc Insert và Copy xuống 11 dòng giống nhau.
3/ Chưa hiểu ý bạn muốn thế để làm gì?
 
Lần chỉnh sửa cuối:
1/ Bạn sử dụng đến 1500 dòng mà dùng hàm chắc kéo mõi tay.
2/ Nên sửa tiêu đề là "Giúp Copy dữ liệu Sheet2 sang Sheet1 và Insert cách đều 10 dòng trống"
1/ Đối với người khác thì vài ngàn dòng kéo chả là gì hết. Nhưng đối với thớt thì có lẽ mỏi tay thật. Chỉ có mấy câu hỏi mà cũng lười biếng gõ cho trọn chữ, viết tắt tùm lum.
2/ Xem '1' ở trên. Sửa tiêu đề mỏi tay lắm.
 
dạ em cảm ơn ah, em đang tìm hiểu thêm về vba, em sẽ nhờ a chỉ giáo tư vấn thêm
Bài đã được tự động gộp:


sheet1 khoảng 1500 dòng b ah
Muốn VBA thì thử sử dụng File sau, vào Sheet1 nhấn nút và xem kết quả.
Tôi cải thiện để tăng tốc độ, bạn tải File bài 18.
 
Lần chỉnh sửa cuối:
1/ Bạn sử dụng đến 1500 dòng mà dùng hàm chắc kéo mõi tay.
2/ Nên sửa tiêu đề là "Giúp Copy dữ liệu Sheet2 sang Sheet1 và Insert cách đều 10 dòng trống", hoặc Insert và Copy xuống 11 dòng giống nhau.
Dạ coppy mỏi lắm ạ. Sheet 1 của em hiện tại thì lên tới 298×11×2+3 = 6 559 dòng b à. Đến khổ ạ :(
 
Dạ coppy mỏi lắm ạ. Sheet 1 của em hiện tại thì lên tới 298×11×2+3 = 6 559 dòng b à. Đến khổ ạ :(
Vào Sheet2 thêm 1000 dòng và sang sheet1 chỉ tốn công nhấn nút (thì đâu có mõi tay) nó sẽ Insert đến 11.000 dòng.
 

File đính kèm

phiền mn xem lại hộ ô db3:hg21
như tiêu đề, mn xem lại giúp mình xem lỗi sai ở đâu nhé
file đính kèm ở bên dưới
1. hàng
db5:hg12
db15:hg16
db18:hg19
là kết quả đúng
2. hàng
db3:hg4
db13:hg14
db20:hg21
là kết quả sai
 

File đính kèm

Web KT

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

Back
Top Bottom