Copy một vùng sang vị trí dữ liệu cuối cùng của sheets khác (1 người xem)

Liên hệ QC

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

huongtinh1929

Thành viên chính thức
Tham gia
6/10/11
Bài viết
61
Được thích
4
Giới tính
Nam
em mốn copy giá trị từ ô
 

File đính kèm

Lần chỉnh sửa cuối:
em muốn copy một vùng mà số dòng có thể thay đổi cột thì cố định sang một vị trí cells cuối cùng của sheets khác mà mo mãi không biết viết thế nào mong bác chỉ giúp
 
Upvote 0
Thử vầy xem sao:
Mã:
Sub Test()
  Sheets("data").[i16].CurrentRegion.Copy Destination:=Sheets("tes").[H65500].End(xlUp).Offset(1)
End Sub
 
Upvote 0
PHP:
Sub Test()
Dim lR As Long, aTmp(), eRow As Long
With Sheet2
    lR = .Range("I" & Rows.Count).End(xlUp).Row
    aTmp = .Range("I16:K" & lR).Value
End With
With Sheet1
    eRow = .Range("E" & Rows.Count).End(xlUp).Row + 1
    .Range("E" & eRow).Resize(UBound(aTmp, 1), UBound(aTmp, 2)) = aTmp
End With
End Sub
 
Upvote 0
Em xin chân thành cảm ơn 2 bác Hoang2013 và bác befaint
nhờ 2 bác mà em hiểu thêm được nhiều điều. vba đã chạy rồi 2 bác ạ!
 
Upvote 0
các bác cho em hỏi
Resize(UBound(aTmp, 1), UBound(aTmp, 2)) ý nghĩa là như thế nào với ạ. Em tim trên google mãi mà không hiêu? và số 1,2 để là gì với ạ
 
Upvote 0
các bác cho em hỏi
Resize(UBound(aTmp, 1), UBound(aTmp, 2)) ý nghĩa là như thế nào với ạ. Em tim trên google mãi mà không hiêu? và số 1,2 để là gì với ạ
Theo cách hiểu của tôi thì:
UBound(aTmp, 1): tương đương giá trị cuối của dòng(hoặc số dòng)
UBound(aTmp, 2): tương đương giá trị cuối của cột(hoặc số cột)
 
Lần chỉnh sửa cuối:
Upvote 0
các bác cho em hỏi
Resize(UBound(aTmp, 1), UBound(aTmp, 2))
ý nghĩa là như thế nào với ạ. Em tim trên google mãi mà không hiêu? và số 1,2 để là gì với ạ
Sao bạn không hỏi gần mà hỏi đâu xa xôi thế;
Trong những trường hợp tương tư, bạn hoàn toàn có thể nhờ MsgBox như:
MsgBox UBound(aTmp, 1), , UBound(aTmp, 2)
 
Upvote 0
các bác cho em hỏi cách khai báo arry mà chỉ có một cột với dòng cuối với ạ.
em khai báo arry=sheet1.range("b4:b"&1r).value lại báo lỗi
với 1r là vị trí dữ liệu cuối cùng của cột B ạ.
 
Upvote 0
các bác cho em hỏi cách khai báo arry mà chỉ có một cột với dòng cuối với ạ.
em khai báo arry=sheet1.range("b4:b"&1r).value lại báo lỗi
với 1r là vị trí dữ liệu cuối cùng của cột B ạ.

Luật VBA: biến không được bắt đầu bằng 1 số. Biến 1r trên phạm luật này.
Nếu bạn chịu khó đeo kính vào nhìn cho kỹ, sẽ thấy rằng bài #6 dùng lR (en lờ + e rờ) không phải 1R (1 + e rờ)
 
Upvote 0
dạ em xin đa tạ anh VetMini ạ. Khổ chác là mắt mờ chân chậm rồi.
 
Upvote 0
các bác cho em hỏi cách khai báo arry mà chỉ có một cột với dòng cuối với ạ.
em khai báo arry=sheet1.range("b4:b"&1r).value lại báo lỗi
với 1r là vị trí dữ liệu cuối cùng của cột B ạ.
Của người ta khai báo biến là lr bạn không hiểu lại gõ là 1r nên lỗi là phải rồi.

Với điều kiện phải có nó trong khai báo biến.
Dim lr As Long

Còn muốn biết dùng loại dữ liệu gì (chữ Long trong khai báo biến) cho phù hợp với biến lr thì tìm hiểu về Data Type.

Data_Type.PNG
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom