Giúp đỡ về copy các dòng trong excel (1 người xem)

  • Thread starter Thread starter matna1
  • Ngày gửi Ngày gửi

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

matna1

Thành viên mới
Tham gia
8/1/11
Bài viết
8
Được thích
0
Picture1.jpg
Mình có file excel như hình trên
Tại ô G2 mình nhập vào 1 số bất kì VD=5
sau khi nhập xong thì khối ô từ A1 đến E10 sẽ được sao chép thành 5 bản mỗi bản cách nhau 1 hàng trắng
 
Upvote 0
file mẫu đây cảm ơn bạn

Bạn thử sub này xem sao.

Mã:
    Sub myCopy()    
    Dim rRng As Range, rTarget As Range
    Dim lSL As Long, i As Long
    
    Set rRng = Sheet3.Range("A1:E10")
    lSL = Sheet3.Range("G2").Value
    
    rRng.Copy
    For i = 1 To lSL
        Set rTarget = Sheet3.Range("A65000").End(xlUp).Offset(2)
        rTarget.Select
        ActiveSheet.Paste
    Next i
    Application.CutCopyMode = False
    
End Sub
 

File đính kèm

Upvote 0
Mình làm theo bạn rồi nhưng khi thay đổi thì nó không chạy gì cả
 
Upvote 0
ý mình là chỉ cần nhập vào số 1 số là nó tự động copy luôn
 
Upvote 0
ý mình là chỉ cần nhập vào số 1 số là nó tự động copy luôn
Thử vầy coi sao. Đang đứng tại sheet cần thực hiện copy, bấm Alt F11, copy code cho vào cửa sổ nhìn thấy.
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$2" Then
   Dim i&
   For i = 1 To Target.Value
      [A1:E10].Copy [A65536].End(3)(3)
   Next
End If
End Sub
 
Upvote 0
Cảm ơn bạn bạn có cách nào khi mình nhập vào số 0 thi các hanh copy truớc đó bị xóa hết không chi còn lại những dòng ban đầu
 
Upvote 0
Cảm ơn bạn bạn có cách nào khi mình nhập vào số 0 thi các hanh copy truớc đó bị xóa hết không chi còn lại những dòng ban đầu
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$2" Then
   Dim i&
   If Target > 0 Then
      For i = 1 To Target.Value
         [A1:E10].Copy [A65536].End(3)(3)
      Next
   Else
     Range([A11], [E65536].End(3)).Clear
   End If
End If
End Sub
 
Upvote 0

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

Back
Top Bottom