Nhờ giúp ListBox lấy 5 dòng cuối và nhiều cột

Liên hệ QC

thomtv

Thành viên hoạt động
Tham gia
10/5/10
Bài viết
120
Được thích
23
Do kiến thức hạn hẹp nên chỉ làm được listbox 5 dòng 1 cột.
Nhờ các bạn giúp đoạn code sau: thành 5 dòng nhiều cột.
Private Sub tao_ArrTen()
Dim i As Long
Last = Cells(Rows.Count, "B").End(xlUp).Row
For i = Last To 6 Step -1
With Me.ListBox1
.AddItem Cells(i, "B").Value
End With
If Me.ListBox1.ListCount = 5 Then Exit Sub
Next i
End Sub
Lấy từ cột B đến cột N
 

File đính kèm

  • Listbox dong cuoi.xls
    67.5 KB · Đọc: 14
Do kiến thức hạn hẹp nên chỉ làm được listbox 5 dòng 1 cột.
Nhờ các bạn giúp đoạn code sau: thành 5 dòng nhiều cột.
Private Sub tao_ArrTen()
Dim i As Long
Last = Cells(Rows.Count, "B").End(xlUp).Row
For i = Last To 6 Step -1
With Me.ListBox1
.AddItem Cells(i, "B").Value
End With
If Me.ListBox1.ListCount = 5 Then Exit Sub
Next i
End Sub
Lấy từ cột B đến cột N
Thử.
Mã:
Private Sub tao_ArrTen()
Dim i As Long
    last = Cells(Rows.Count, "B").End(xlUp).Row
    Me.ListBox1.List = Cells(last - 4, 2).Resize(5, 13).Value
End Sub
 
Upvote 0
Thử.
Mã:
Private Sub tao_ArrTen()
Dim i As Long
    last = Cells(Rows.Count, "B").End(xlUp).Row
    Me.ListBox1.List = Cells(last - 4, 2).Resize(5, 13).Value
End Sub
Bạn có thể giúp mình thêm đoạn code: khi add vào listbox chỉ add những dòng có dữ liệu, các dòng trống không add lên listbox.
 

File đính kèm

  • 04-02-2020 3-46-28 PM.png
    04-02-2020 3-46-28 PM.png
    20.9 KB · Đọc: 12
Lần chỉnh sửa cuối:
Upvote 0
Bạn có thể giúp mình thêm đoạn code: khi add vào listbox chỉ add những dòng có dữ liệu, các dòng trống không add lên listbox.

Bạn có thể giúp mình thêm đoạn code: khi add vào listbox chỉ add những dòng có dữ liệu, các dòng trống không add lên listbox.
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn có thể giúp mình thêm đoạn code: khi add vào listbox chỉ add những dòng có dữ liệu, các dòng trống không add lên listbox.
Chắc biết sơ về code rồi, nên xem hướng dẫn sau:
- Lọc từng dòng ngược vào Array, lấy 5 dòng có số liệu
- Gán Array đó cho List box, .List()
 
Upvote 0
Cả bảng luôn bạn ah.
Mình còn gà VBA nên nhờ các bạn viết và hướng dẫn, để mình được học hỏi thêm ạ.
cảm ơn các bạn đã quan tâm.
Thử.
Mã:
Private Sub tao_ArrTen()
Dim i As Long, arr, kq, a As Long, j As Long, lr As Long
    With Sheets("GP text")
         lr = .Range("B" & Rows.Count).End(xlUp).Row
         arr = .Range("b4:N" & lr).Value
         ReDim kq(1 To UBound(arr), 1 To UBound(arr, 2))
         For i = 1 To UBound(arr)
             If Len(arr(i, 1)) > 0 Then
                a = a + 1
                For j = 1 To UBound(arr, 2)
                    kq(a, j) = arr(i, j)
                Next j
            End If
        Next i
        If a Then Me.ListBox1.List = kq
   End With
End Sub
 
Upvote 0
Thử.
Mã:
Private Sub tao_ArrTen()
Dim i As Long, arr, kq, a As Long, j As Long, lr As Long
    With Sheets("GP text")
         lr = .Range("B" & Rows.Count).End(xlUp).Row
         arr = .Range("b4:N" & lr).Value
         ReDim kq(1 To UBound(arr), 1 To UBound(arr, 2))
         For i = 1 To UBound(arr)
             If Len(arr(i, 1)) > 0 Then
                a = a + 1
                For j = 1 To UBound(arr, 2)
                    kq(a, j) = arr(i, j)
                Next j
            End If
        Next i
        If a Then Me.ListBox1.List = kq
   End With
End Sub
Nhờ các bạn giúp tiếp đoạn Code, xóa các dòng trống trong listbox "hình và file đính kèm"
1596600703695.png
Xin cảm ơn
 

File đính kèm

  • xoa dong trong listbox.xls
    54.5 KB · Đọc: 12
Upvote 0
Nhờ các bạn giúp tiếp đoạn Code, xóa các dòng trống trong listbox "hình và file đính kèm"
View attachment 242426
Xin cảm ơn
Sửa thành thế này bạn nhé.
Mã:
Sub tao()
Dim i As Long, arr, kq, a As Long, j As Long, lr As Long
    With Sheet1
         lr = .Range("B" & Rows.Count).End(xlUp).Row
         arr = .Range("b3:G" & lr).Value
         UserForm1.ListBox1.Clear
         For i = 1 To UBound(arr)
             If Len(arr(i, 1)) > 0 Then
                UserForm1.ListBox1.AddItem arr(i, 1)
                For j = 1 To UBound(arr, 2) - 1
                    UserForm1.ListBox1.List(a, j) = arr(i, j + 1)
                Next j
                a = a + 1
            End If
        Next i
   End With
End Sub
 
Upvote 0
Nhờ các bạn giúp tiếp đoạn Code, xóa các dòng trống trong listbox "hình và file đính kèm"
View attachment 242426
Xin cảm ơn
Bạn thử code sau nhé:

Mã:
Private Sub CommandButton1_Click()
    Dim cn As Object, rst As Object
    Set cn = CreateObject("ADODB.Connection")
    Set rst = CreateObject("ADODB.Recordset")
    cn.Open ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0;HDR=NO""")
    rst.Open ("Select * From [Sheet1$B3:G100] where F1 is not null"), cn
    ListBox1.Column = rst.getrows

End Sub

Hoặc :

Mã:
Private Sub CommandButton1_Click()
    With CreateObject("ADODB.Connection")
        .Open ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0;HDR=NO""")
        ListBox1.Column = .Execute("Select * From [Sheet1$B3:G100] where F1 is not null").getrows
    End With
End Sub

Điều kiện là cột B không có cell rỗng.
 
Upvote 0
Web KT

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

Back
Top Bottom