Tìm dòng cuối trong bảng dữ liệu

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

phanngoctrai1981

Thành viên chính thức
Tham gia
16/4/23
Bài viết
60
Được thích
0
Anh/chi xem giúp
Hiện em muốn tìm dòng cuối trong bảng dữ liệu tính từ A1:O21 (phía dưới vẫn có dữ liệu)
Kinh mong anh/chi xem file chỉ giúp.
Em cảm ơn
 

File đính kèm

  • tong hop.xlsx
    14.1 KB · Đọc: 21
Anh/chi xem giúp
Hiện em muốn tìm dòng cuối trong bảng dữ liệu tính từ A1:O21 (phía dưới vẫn có dữ liệu)
Kinh mong anh/chi xem file chỉ giúp.
Em cảm ơn
Trong VBA range có cái thuộc tính gọi là: CurrentRegion
Nếu bạn nắm được khái niệm này thì bạn giải quyết vấn đề của bạn dễ dàng.
Nếu tại ô A2 mà bạn dùng Range("A2").CurrentRegion, có nghĩa là bạn đang tham chiếu đến 1 vùng data liên tiếp của ô A2 (nghĩa là A1:O14)
Bạn test bằng code sau, vào cửa sổ Intermediate Window (Ctrl-G) xem kết qủa là gì nhé:

PHP:
Option Explicit
Sub test()
Dim rng As Range
Set rng = Range("A2").CurrentRegion
Debug.Print rng.Rows.Count
Debug.Print rng.Address
Debug.Print rng.Cells(rng.Rows.Count, rng.Columns.Count).Address
End Sub
 
Upvote 0
Bạn đọc không kỹ câu hỏi rồi, là "ô có dữ liệu cuối" cơ.
E6 là ô không có dữ liệu.
Nếu là ô có dữ liệu cuối thì phải nói rõ là ô cuối theo cột hay theo hàng, còn nói chung chung vậy là vô nghiệm. Nhưng như bảng của thớt gửi thì ô dữ liệu cuối 99% là theo hàng.
 
Upvote 0
Như vầy thì thằng nào được tính là "ô có dữ liệu cuối"?

View attachment 292247
TTHo & TenNgày SinhĐịa chỉ
1​
DFD00Dương Đức Dũng
4/6/1961​
128/21 Lê Lai
2​
FFD00Đỗ Đức Dung
2/24/1959​
12/21 Lê Lợi
3​
FJD00Đặng Dung
1/13/1957​
128/21 Lê Thái Tông
4​
LMD00Lại Thị Mỹ Dung
5/18/1963​
128/1A Lê Dục Tông
5​
LMD01Lê Mai Dung
6/28/1965​

PHP:
Sub TimDongDuLieuCuoi()
 Dim Rng As Range, sRng As Range
 
 Set Rng = Sheets("CSDL").UsedRange
 MsgBox Rng.Address, , "Msgbox 1"
 Set sRng = Rng.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows)
 If Not sRng Is Nothing Then
    MsgBox sRng.Address, , "MsgBox 2"
 End If
 Set sRng = Rng.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByColumns)
 If Not sRng Is Nothing Then
    MsgBox sRng.Address, , "MsgBox 3"
 End If
End Sub
 
Upvote 0
Web KT

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

Back
Top Bottom