Cách viết marco để khi nhập dữ liệu cần tìm sẽ hiển thị "danh sách tham gia khoá học" (1 người xem)

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

kieuchau

Thành viên mới
Tham gia
31/10/10
Bài viết
12
Được thích
1
Giới tính
Nữ
Chào các bác,
1) Mình có 1 list danh sách cần nhập rất dài nhưng mỗi lần in phải copy từng tên mất thời gian quá. Nhờ các bác giúp đỡ chỉ giúp cách chỉ nhập số thứ tự thì cả danh sách hiện ra luôn.

2) Khi danh sách quá dài thì tự nhảy sang trang khác và địa chỉ hiện ra ở trang sau.

Cám ơn các bác.
 

File đính kèm

Mình cho ẩn các dòng không chứa dữ liệu; Bạn xem trong file đính kèm

--=0--=0 --=0--=0
 

File đính kèm

Upvote 0
Cám ơn bạn ChanTQ@ rất nhiều.
Bạn có thể cho mình xin đoạn code được ko bạn?
 
Upvote 0
Cám ơn bạn ChanTQ@ rất nhiều.
Bạn có thể cho mình xin đoạn code được ko bạn?
Code Bạn ChanhTQ@ cho Bạn ở trong File rồi mà .Nếu chưa biết ở đâu thì xem đây nha
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim Sh As Worksheet, Rng As Range, sRng As Range
 Dim Rws As Long
 
 If Not Intersect(Target, [C2]) Is Nothing Then
    [B7].CurrentRegion.Offset(1, 1).ClearContents
    Rows("2:59").Hidden = False
    Set Sh = ThisWorkbook.Worksheets("DuLieu")
    Rws = Sh.[A65500].End(xlUp).Row
    Set Rng = Sh.[A2].Resize(Rws)
    Set sRng = Rng.Find(Target.Value, , xlFormulas, xlWhole)
    If Not sRng Is Nothing Then
        With Target
            .Offset(1).Value = sRng.Offset(, 1).Value
            .Offset(2).Value = sRng.Offset(, 2).Value
            Sh.Range(sRng.Offset(, 4), sRng.End(xlDown).Offset(-1, 4)).Copy Destination:=[c7]
            [C60].Value = sRng.Offset(, 3).Value
        End With
        Rows("58:" & [C60].End(xlUp).Offset(1).Row).Hidden = True
    End If
 End If
End Sub
 
Upvote 0
Chào các bác,

Cho mình hỏi thêm khi nhập STT thì hiện các dữ liệu, nhưng trong trường hợp khi nhập STT vào mà phải hiển thị 2 dữ liệu cùng lúc “phòng học” và “phòng dự bị” thì viết code như thế nào ạ?
Mong các bác chỉ giáo thêm.
Cám ơn nhiều.
 

File đính kèm

Upvote 0
/)òng lệnh mơi thêm đã được đánh dấu trong macro:
PHP:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim Sh As Worksheet, Rng As Range, sRng As Range
 Dim Rws As Long
 
 If Not Intersect(Target, [C2]) Is Nothing Then
    [B8].CurrentRegion.Offset(1, 1).ClearContents
    Rows("2:61").Hidden = False
    Set Sh = ThisWorkbook.Worksheets("DuLieu")
    Rws = Sh.[A65500].End(xlUp).Row
    Set Rng = Sh.[A2].Resize(Rws)
    Set sRng = Rng.Find(Target.Value, , xlFormulas, xlWhole)
    If Not sRng Is Nothing Then
        With Target
            .Offset(1).Value = sRng.Offset(, 1).Value
            .Offset(2).Value = sRng.Offset(, 2).Value
            .Offset(3).Value = sRng.Offset(1, 2).Value   '<=|'
            Sh.Range(sRng.Offset(, 4), sRng.End(xlDown).Offset(-1, 4)).Copy Destination:=[c8]
            [C61].Value = sRng.Offset(, 3).Value
        End With
        Rows("59:" & [C61].End(xlUp).Offset(1).Row).Hidden = True
    End If
 End If
End Sub
 
Upvote 0

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

Back
Top Bottom