Em nói rõ hơn một chút.Chuyện nhập thì là chuyện nhỏ như con thỏ, chỉ chết nỗi chẳng biết nhập gì vào vì bọn mình không phải dân kỹ thuật. Đoc hướng dẫn chả hiểu gì cả!!!
Private Sub cmdUpdate_Click()
Dim dg, lop
With Sheet1
lop = Int(Me.txtDay / Me.txtDayPL)
dg = .[d56536].End(xlUp).Row
For i = 1 To lop
.Cells(dg + i, 2) = IIf(i = 1, Me.txtTen, "")
.Cells(dg + i, 3) = IIf(i = 1, Me.txtDay, "")
.Cells(dg + i, 4) = Me.txtDayPL
.Cells(dg + i, 6) = Me.txtGamma
.Cells(dg + i, 7) = Me.txteo
.Cells(dg + i, 8) = Me.txtCv
.Cells(dg + i, 8) = Me.txtCc
'---------------------Ban bo xung cho du
Next
End With
Unload Me
End Sub
vâng đúng ạ, vì em cũng lần mò tìm hiểu VBA nên chưa hiểu về property End của range của sư phụ nói nên làm mãi không được.Sư phụ có link nào nói về property End của range có thể gửi Cho em tham khảo được ko ạ?Vấn đề ở đây là khoavu phải tìm hiểu về property End của range. Từ đó xác định được dòng cuối để gán dữ liệu vào dòng tiếp theo.
Trong vài bài VBA của Khoa gần đây, do không biết xác đ5nh còng cuối nên đã dùng For duyệt tất cả các cells, đến khi gặp ô trống thì dừng. Rất chậm!
Vấn đề thứ 2, là nếu form đầu xác định là 2 trở lên, thì form thứ 2 xuất hiện 2 lần. Điều đó thì đúng, nhưng mỗi lần như vậy trước khi xoá để điền giá trị lần 2, thì phải gán lần 1 xuống sheet.
Em cảm ơn Sư Phụ, một bài viết thật là tuyệt đã giúp em mở rộng thêm kiến thức.PTM
1. Thuộc tính (property) end có đầy trên diễn đàn.
Cảm ơn Sư phụ Ndu đã góp ý cho em.một ý tưởng cũng rất hay.
Cái này tự record macro mà tìm hiểu, ví dụ bạn có dữ liệu tại cột A, giờ bạn làm như sau:.Sư phụ có link nào nói về property End của range có thể gửi Cho em tham khảo được ko ạ?
Anh sealand ơi khi em chạy cái của anh thì phát sinh một vấn đề là :Bạn thay thử và hiệu chỉnh cho đúng số cột xem sao (Vì mình đoán)
P/s: Các ô số bạn nên dùng hàm val() chuyển đổi trước khi nhập vào sheetPHP:Private Sub cmdUpdate_Click() Dim dg, lop With Sheet1 lop = Int(Me.txtDay / Me.txtDayPL) dg = .[d56536].End(xlUp).Row For i = 1 To lop .Cells(dg + i, 2) = IIf(i = 1, Me.txtTen, "") .Cells(dg + i, 3) = IIf(i = 1, Me.txtDay, "") .Cells(dg + i, 4) = Me.txtDayPL .Cells(dg + i, 6) = Me.txtGamma .Cells(dg + i, 7) = Me.txteo .Cells(dg + i, 8) = Me.txtCv .Cells(dg + i, 8) = Me.txtCc '---------------------Ban bo xung cho du Next End With Unload Me End Sub