Xin code nhập liệu vào form

Liên hệ QC

van_thanh_phong

Thành viên chính thức
Tham gia
25/6/08
Bài viết
87
Được thích
10
Nghề nghiệp
Giáo viên
Em tạo một form nhập liệu nhưng còn cod thì....viết hoài mà bị lỗi mãi nên
xin các bác trong diễn đàn giúp dùm.cảm ơn!
 
Lần chỉnh sửa cuối:
Chí ít thì cũng phải có vài dòng mẫu cho anh em theo chớ.
 
Upvote 0
là sao mình không hiểu!mình đã tạo form nhưng cod thì viết hơn 2 tuần rồi mà không xong nên nhờ anh em trong diễn đàn giúp đỡ vậy.
Trong form có các nút lệnh:
Ok:sau khi nhập xong một record,click vào OK sẽ ghi vào excell
Cancel:Không ghi
PRevius: là lùi một record ( dùng để hiệu chỉnh)
Next: tới một record ( dùng để hiệu chỉnh)
New: tạo một record mới
Delete:Xoá record hiện hành
Xem file đính kèm sẽ hiểu yêu cầu chi tiết hơn

Thành thật xin lỗi,mình không có ý đó đâu!
Bạn có file không gởi cho minh tham khảo và học với nhé!
Mình đã nhập vài dòng dữ liệu rồi,Bạn xem thế nào!
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
Không gì buồn bằng việc ngồi nhập dữ liệu Demo cho bạn ( Mình nói bạn nhập cho mình vài hô sơ học sinh làm mẫu mà không có)
Mình viết cho bạn gần hoàn thiện chỉ còn việc viết code kiểm tra dữ liệu hợp lệ trước khi nhập là xong (Tranhs looix ngayf thangs hoawcj trong du lieeuj v.v...)
Bạn Test có vân đè gì sẽ sửa sau nhé
 
Lần chỉnh sửa cuối:
Upvote 0
Mình xin lỗi nếu hiểu sai ý bạn, mặc dù vậy tôi cũng đã hoàn thiện nốt phần kiểm tra rồi. Bạn tham khảo và cho ý kiến sửa chữa nha
Ví dụ không đầy đủ nên không dùng được. Số điện thoại có thể không có nhưng tên cha me nghề nghiệp thì phải ghi. Nếu không biết thì ghi không, đã mất thì cũng ghi rõ. Trong Form code kiểm tra nếu trống thì phải bổ xung chứ không nhập được.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Cảm ơn bạn SeaLand rất nhiều!Mình chỉ chập chững tự học lập trìnhVBA trên excell thôi nên sau này chắc còn phải nhờ bạn và các thành viên trong diễn đàn giúp đỡ nhiều.
file của bạn rất hữu ích với mình!(%#^#$:để mình tham khảo và học !)

Sao vẫn không nhập được dữ liệu vào form được vậy anh sealand.Vied cod cũng không hiển thị được
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
Bạn là người tạo ra các nút mà lại không thuộc tính năng.
1/Xem:Để an toàn dữ liệu, trong chế độ xem thì dù bạn có sửa gì chăng nữa khỗng không ảnh hưởng đến dữ liệu.
2/Sửa:Khi xem đến Record nào cần sửa thi nhấn nút Edit, lúc này mới chuyển sang chế độ sửa. Sửa xong nhấn OK sẽ cập nhật, nhấn Cancel sẽ huỷ bỏ sủa.
3/Thêm mới: Trong chế độ xem cần thêm mới nhấn nút AdNew. Màn hình chuyển sang Record trắng, nhập xong nhấn OK sẽ nhập vào bảng, Cancel sẽ huỷ bỏ

Đúng quy trình bạn thử lại xem.

Mình còn sót nút xóa, bạn bổ xung giùm

Mã:
Private Sub CommandButton5_Click()
Dim kt
kt = MsgBox("Co thuc su muon xoa ho so nay???", vbOKCancel, "QUAN LY HOC SINH")
If kt = 1 Then HS.Rows(Me.dg).EntireRow.Delete
If Me.Navi1.Max > 1 Then .Navi1.Max = Me.Navi1.Max - 1
End Sub
Các bạn có thể tải file đã bổ xung và film hướng dẫn ở đây
 
Lần chỉnh sửa cuối:
Upvote 0
Đọc topic này xong, tôi cảm nhận thấy vài vấn đề - lẽ ra chả muốn nói, nhưng không nói lại không chịu được:
  1. Tôi rất lấy làm cảm kích tấm lòng tận tình chia sẻ của bác sealend;
  2. Còn cái đồng chí van_thanh_phong kia, xem qua hồ sơ bạn làm giáo viên mà cách đặt vấn đề để mọi người giúp đỡ nghe... nó sao sao ấy; thứ nữa là cách trình bày thông tin bằng văn bản của bạn quá sơ sài, khó hiểu, cẩu thả,... (viết có mấy chữ mà sai tùm lum).
Mình không có ý chỉ trích hay coi thường bạn, nhưng nhắc bạn rằng nên cẩn thận hơn khi post bài và bạn cần phải tự rèn rũa mình nhiều hơn nữa (từ những chuyện nhỏ nhặt nhất). Tôi nói điều này, bởi vì bạn là giáo viên, vì bạn còn ảnh hưởng đến cả một hay nhiều thế hệ con em mai sau nữa...
 
Upvote 0
Mình còn sót nút xóa, bạn bổ xung giùm

Mã:
Private Sub CommandButton5_Click()
Dim kt
kt = MsgBox("Co thuc su muon xoa ho so nay???", vbOKCancel, "QUAN LY HOC SINH")
If kt = 1 Then HS.Rows(Me.dg).EntireRow.Delete
If Me.Navi1.Max > 1 Then .[COLOR=Red][B]Navi1.Max[/B][/COLOR] = Me.Navi1.Max - 1
End Sub

To Sealand.

Bạn vui lòng xem lại code XOA dum mình, code bao lỗi (phần chữ đỏ) thế này: "Complie error: Invalid or unqualified reference."

Cám ơn Bạn.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
Bạn vui lòng xem lại code XOA dum mình, code bao lỗi (phần chữ đỏ) thế này: "Complie error: Invalid or unqualified reference."

Cám ơn Bạn.

Trong quá trình sửa code nó bị mất chữ Me bạn sửa lại như sau nhé:
Từ:

If Me.Navi1.Max > 1 Then .Navi1.Max = Me.Navi1.Max - 1

thành:

If Me.Navi1.Max > 1 Then Me.Navi1.Max = Me.Navi1.Max - 1

Xin lỗi chưa Test kỹ.
 
Upvote 0
f Me.Navi1.Max > 1 Then Me.Navi1.Max = Me.Navi1.Max - 1

.
Cám ơn bạn, đã khuya như thế mà bạn vẫn sửa code lại dùm mình. Xin lỗi vì mình sẽ tiếp tục làm phiền đến Bạn (không phải mình đang cố "bới lông tìm vết" đâu ngen, mình đang "mày mò" tìm hiểu về VBA thôi), mình thấy nếu cứ ngồi bấm delete liên tục thì CT sẽ xóa hết tất cả các dòng kể cẩ tiêu đề luôn và delete luon cả dòng chứ không phải chỉ vùng dữ liệu thôi phải không bạn. Cám ơn bạn đã đọc tin này. Chúc bạn sức khỏe.-=.,,
 
Upvote 0
Bài này lúc đầu chỉ đúng theo Tiêu đề thôi, sau bổ xung vào. Nó chắc chắn sẽ tồn tại khá nhiều lỗi và bất hợp lý. Nếu thấy cần thiết cứ nêu ra mình sẽ hiệu chỉnh.
Mình đã sửa và các bạn down ở địa chỉ sau giùm http://www.megaupload.com/?d=6YV19O2J
 
Upvote 0
Mình là thành viên mới.Mình suy nghĩ mãi mà không làm được phần mềm quản lý hệ số lương của nhân viên, sao cho đến hạn lên lương tự động nhảy qua fom, tùy theo hệ TC,CĐ,ĐH,vượt khung...có ai bít chỉ mình với...
 
Upvote 0
Bài này lúc đầu chỉ đúng theo Tiêu đề thôi, sau bổ xung vào. Nó chắc chắn sẽ tồn tại khá nhiều lỗi và bất hợp lý. Nếu thấy cần thiết cứ nêu ra mình sẽ hiệu chỉnh.
Cám ơn Bạn, mình khâm phục tinh thần làm việc của BẠn đó, rất nhanh và nhiệt tình. Bạn vui lòng giải thich đoạn code này ngen.:

If kt = 1 Then HS.Rows(Me.dg).EntireRow.Delete
If Me.Navi1.Max > 1 Then
Me.Navi1.Max = Me.Navi1.Max - 1
Else
Me.Navi1.Max = 1


kt=1 nghĩa là nhấn OK phải không bạn.
còn phần Màu đỏ thì mình không hiểu.

Cám ơn Bạn nhiều
 
Lần chỉnh sửa cuối:
Upvote 0
Mình diễn giải nôm na bạn xem nhé:

If kt = 1 Then HS.Rows(Me.dg).EntireRow.Delete
'Nếu bạn đồng ý xóa thì xóa toàn bộ dòng như đang thể hiện trong ô dg.
If Me.Navi1.Max > 1 Then
'Nếu thanh trượt >1 tức là hồ sơ còn dữ liệu và thanh trượt chứa cả dòng đã xóa
Me.Navi1.Max = Me.Navi1.Max - 1
'Vậy thì ta bớt đi 1
Else
'Ngoài ra, bao gồm <=1
Me.Navi1.Max = 1

'Thì tối thiểu coa 1 dòng đứng chân

Mục đích của đoạn code này khống chế di chuyển tiến lùi trong vùng có dữ liệu mà thôi.
 
Upvote 0
Cảm ơn Bác Sealand đã giúp đỡ mình nhiệt tình như vậy! Thật là hơn cả những gì mình mong đợi.
 
Upvote 0
Web KT

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

Back
Top Bottom