Nhờ các anh/ chị/ bạn giúp đỡ nhập giá trị từ textbox vào vùng excel

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

phamdinhnha

Thành viên mới
Tham gia
17/8/12
Bài viết
36
Được thích
4
Trong file mình gửi kèm có Sheet "DULIEU", và 1 button "Themthangluong" để mở Form nhập tháng lương> Mình muốn khi mở Form, nhập tháng lương textbox và click vào nút "Tao Moi" thì giá trị nhập trong Textbox đó sẽ điền vào các ô của cột D (chỉ nhập vào các ô ở cột D tương ứng với vùng từ ô C3 đến ô cuối cùng có dữ liệu của Cột C). Rất mong được giúp đỡ, cảm ơn mọi người!
 

File đính kèm

  • Vidu1.xlsm
    20.7 KB · Đọc: 11
Trong file mình gửi kèm có Sheet "DULIEU", và 1 button "Themthangluong" để mở Form nhập tháng lương> Mình muốn khi mở Form, nhập tháng lương textbox và click vào nút "Tao Moi" thì giá trị nhập trong Textbox đó sẽ điền vào các ô của cột D (chỉ nhập vào các ô ở cột D tương ứng với vùng từ ô C3 đến ô cuối cùng có dữ liệu của Cột C). Rất mong được giúp đỡ, cảm ơn mọi người!
Thử code sau.
Mã:
Private Sub btnTaoMoiThang_TX_Click()
   Dim lr As Long, lr1 As Long
   With Sheets("dulieu")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        lr1 = .Range("D" & Rows.Count).End(xlUp).Row + 1
        If lr = 2 Then Exit Sub
        If lr1 >= lr Then lr1 = lr
        .Range("D" & lr1).Value = txtTaoThangLuong_TX.Value
  End With
End Sub
 
Upvote 0
Dim lr As Long, lr1 As Long With Sheets("dulieu") lr = .Range("B" & Rows.Count).End(xlUp).Row lr1 = .Range("D" & Rows.Count).End(xlUp).Row + 1 If lr = 2 Then Exit Sub If lr1 >= lr Then lr1 = lr .Range("D" & lr1).Value = txtTaoThangLuong_TX.Value End With
Trước hết xin cảm ơn bạn, tuy nhiên mình muốn nhập tất cả các ô tại cột D tương ứng với vùng từ ô C3 đến ô cuối cùng có dữ liệu ở cột C bằng 1 lần click vào nút "Tao Moi" thì làm thế nào bạn nhỉ, xem giúp mình nhé
Bài đã được tự động gộp:

Trước hết xin cảm ơn bạn, tuy nhiên mình muốn nhập tất cả các ô tại cột D tương ứng với vùng từ ô C3 đến ô cuối cùng có dữ liệu ở cột C bằng 1 lần click vào nút "Tao Moi" thì làm thế nào bạn nhỉ, xem giúp mình nhé
them nữa là cho dù vùng trên cột D muốn điền tháng , nó có dữ liệu hay trống thì đều nhập số tháng mới như mình đã nhập vào textbox
 
Lần chỉnh sửa cuối:
Upvote 0
1706825419161.png
Bạn xem thử trước khi tìm ra cách hay hơn nhé.
P/S: Bạn nên có hình ảnh, chụp lại từng bước làm và kết quả mong muốn.
 

File đính kèm

  • Vidu1.xlsm
    25 KB · Đọc: 9
Lần chỉnh sửa cuối:
Upvote 0
View attachment 298889
Bạn xem thử trước khi tìm ra cách hay hơn nhé.
P/S: Bạn nên có hình ảnh, chụp lại từng bước làm và kết quả mong muốn.
Cảm ơn bạn đã quan tâm, Ý mình là chỉ click button "TAO MOI" 1 lần thì toàn bộ cột D (chỉ những dòng mà cột C hoặc vùng từ A3 đến C7 có dữ liệu) sẽ điền giá trị đã nhập vào Textbox
 

File đính kèm

  • Screenshot_Vidu2.png
    Screenshot_Vidu2.png
    23.5 KB · Đọc: 6
Upvote 0
Cảm ơn bạn đã quan tâm, Ý mình là chỉ click button "TAO MOI" 1 lần thì toàn bộ cột D (chỉ những dòng mà cột C hoặc vùng từ A3 đến C7 có dữ liệu) sẽ điền giá trị đã nhập vào Textbox
Bạn thử đoạn code sau trong file đính kèm!
Mã:
Private Sub btnTaoMoiThang_TX_Click()

    Dim lr As Long
    Dim i As Long
    With Sheets("dulieu")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        If lr < 3 Then Exit Sub
        For i = 3 To lr
            .Range("D" & i).Value = txtTaoThangLuong_TX.Value
        Next i
    End With


End Sub
 

File đính kèm

  • Vidu1 (1).xlsm
    22.9 KB · Đọc: 4
Upvote 0
Bạn thử đoạn code sau trong file đính kèm!
Mã:
Private Sub btnTaoMoiThang_TX_Click()

    Dim lr As Long
    Dim i As Long
    With Sheets("dulieu")
        lr = .Range("B" & Rows.Count).End(xlUp).Row
        If lr < 3 Then Exit Sub
        For i = 3 To lr
            .Range("D" & i).Value = txtTaoThangLuong_TX.Value
        Next i
    End With


End Sub
Rất cảm ơn bạn, đúng ý mình muốn rồi.
Bài đã được tự động gộp:

Nếu vậy anh dùng:
PHP:
.Range("D3:D" & lr).Value = txtTaoThangLuong_TX.Value
Rất cảm ơn bạn, đúng ý mình muốn rồi.
 
Upvote 0
Nếu vậy anh dùng:
PHP:
.Range("D3:D" & lr).Value = txtTaoThangLuong_TX.Value
Mình hỏi thêm là mình muốn chọn một tháng cụ thể (ví dụ tháng lĩnh lương là 9) để lưu vào sheet CHI_TIET sau chọn số tháng trên textbox và click vào button THEM VAO CHI TIET thì làm thế nào bạn nhỉ? Giúp mình thêm nhé
 

File đính kèm

  • Vidu1 (2).xlsm
    24.8 KB · Đọc: 5
  • ThemChiTiet.png
    ThemChiTiet.png
    64.7 KB · Đọc: 14
Upvote 0
Bạn tham khảo cái ni, nếu được thì sửa lại mà xài:
PHP:
Private Sub CmdThemCT_Click()
 Dim Rws As Long, W As Integer, J As Long
 Dim Arr()
 
 Sheets("ChiTiet").[C4].CurrentRegion.Offset(1).ClearContents
 With Sheets("DuLieu")
    Rws = .UsedRange.Rows.Count
    Arr() = .[B3].Resize(Rws, 3).Value
    ReDim KQ(1 To Rws, 1 To 4)
    For J = 1 To UBound(Arr())
        If Arr(J, 3) = Me!txtTaoThangLuong_TX.Value Then
            W = W + 1:                      aKQ(W, 1) = W
            aKQ(W, 2) = Arr(J, 1):          aKQ(W, 3) = Arr(J, 2)
            aKQ(W, 4) = Arr(J, 3)
        End If
    Next J
 End With
 If W Then
    Sheets("ChiTiet").[B4].Resize(W, 4).Value = aKQ()
 End If
End Sub

@Chủ bài đăng:
→ Tên các Controls cần cô gọn & xác thực hơn;
→ CSDL của bạn chưa có mã NV (duy nhất); Nên xây dựng thành thói quen tốt về vấn đề này
Chúc các bạn đang đọc bài vui & khỏe!
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn tham khảo cái ni, nếu được thì sửa lại mà xài:
PHP:
Private Sub CmdThemCT_Click()
 Dim Rws As Long, W As Integer, J As Long
 Dim Arr()
 
 Sheets("ChiTiet").[C4].CurrentRegion.Offset(1).ClearContents
 With Sheets("DuLieu")
    Rws = .UsedRange.Rows.Count
    Arr() = .[B3].Resize(Rws, 3).Value
    ReDim KQ(1 To Rws, 1 To 4)
    For J = 1 To UBound(Arr())
        If Arr(J, 3) = Me!txtTaoThangLuong_TX.Value Then
            W = W + 1:                      aKQ(W, 1) = W
            aKQ(W, 2) = Arr(J, 1):          aKQ(W, 3) = Arr(J, 2)
            aKQ(W, 4) = Arr(J, 3)
        End If
    Next J
 End With
 If W Then
    Sheets("ChiTiet").[B4].Resize(W, 4).Value = aKQ()
 End If
End Sub

@Chủ bài đăng:
→ Tên các Controls cần cô gọn & xác thực hơn;
→ CSDL của bạn chưa có mã NV (duy nhất); Nên xây dựng thành thói quen tốt về vấn đề này
Chúc các bạn đang đọc bài vui & khỏe!
Vâng, mình rất cảm ơn bạn đã góp ý!
 
Upvote 0
Web KT
Back
Top Bottom