Cách hiển thị TextBox trong UserForm theo bảng dữ liệu. (1 người xem)

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

Tôi tuân thủ nội quy khi đăng bài

Trần_Minh_5695

Thành viên mới
Tham gia
27/9/21
Bài viết
34
Được thích
4
Chào anh/chị trong diễn đàn,
Em đang cần hiển thị các TextBox trong bảng UserForm theo 1 bảng dữ liệu có sẵn.
Hiện tại em đang viết như sau:
Private Sub CommandButton1_Click()
txt_l1_m1 = Range("B2").Value
txt_l1_m2 = Range("C2").Value
txt_l1_m3 = Range("D2").Value

txt_l2_m1 = Range("B3").Value
txt_l2_m2 = Range("C3").Value
txt_l2_m3 = Range("D3").Value

txt_l3_m1 = Range("B4").Value
txt_l3_m2 = Range("C4").Value
txt_l3_m3 = Range("D4").Value

txt_l4_m1 = Range("B5").Value
txt_l4_m2 = Range("C5").Value
txt_l4_m3 = Range("D5").Value
End Sub
Mình có cách nào để viết rút gọn lại để không phải ghi từng textbox và ô giá trị không ạ?
Mong anh/chị giúp đỡ, em cảm ơn!
1723773530321.png

1723773594106.png
 

File đính kèm

Chào anh/chị trong diễn đàn,
Em đang cần hiển thị các TextBox trong bảng UserForm theo 1 bảng dữ liệu có sẵn.
Hiện tại em đang viết như sau:
Private Sub CommandButton1_Click()
txt_l1_m1 = Range("B2").Value
txt_l1_m2 = Range("C2").Value
txt_l1_m3 = Range("D2").Value

txt_l2_m1 = Range("B3").Value
txt_l2_m2 = Range("C3").Value
txt_l2_m3 = Range("D3").Value

txt_l3_m1 = Range("B4").Value
txt_l3_m2 = Range("C4").Value
txt_l3_m3 = Range("D4").Value

txt_l4_m1 = Range("B5").Value
txt_l4_m2 = Range("C5").Value
txt_l4_m3 = Range("D5").Value
End Sub
Mình có cách nào để viết rút gọn lại để không phải ghi từng textbox và ô giá trị không ạ?
Mong anh/chị giúp đỡ, em cảm ơn!
View attachment 303198

View attachment 303200
Sửa code cũ bằng code này xem sao?
Mã:
Private Sub CommandButton1_Click()
    Dim i%, j%, txt$
    For i = 1 To 4
        txt = "txt_l" & i & "_m"
        For j = 1 To 3
            Me.Controls(txt & j).Value = Cells(i + 1, j + 1).Value
        Next
    Next
End Sub
 
Upvote 0
Sửa code cũ bằng code này xem sao?
Mã:
Private Sub CommandButton1_Click()
    Dim i%, j%, txt$
    For i = 1 To 4
        txt = "txt_l" & i & "_m"
        For j = 1 To 3
            Me.Controls(txt & j).Value = Cells(i + 1, j + 1).Value
        Next
    Next
End Sub
Code đã chạy đúng rồi anh.
Em cảm ơn anh rất nhiều!
 
Upvote 0

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

Back
Top Bottom