tiendungnst
Thành viên chính thức


- Tham gia
- 9/7/07
- Bài viết
- 87
- Được thích
- 5
Đơn giản vì bạn bảo có thế hi!Nhờ ACE GPE tạo giúp cho mình form nhập dữ liệu cho file excel đính kèm!
Dữ liệu chỉ nhập một dòng dữ liệu thôi nhé các bác! Nhưng còn một số Colums thì em sẽ học hỏi và tự thêm sau ạh!
Nhờ các bác tạo form giúp, xin cảm ơn
Ko hiểu, không thấy file có gì cả!Đơn giản vì bạn bảo có thế hi!
Ko hiểu, không thấy file có gì cả!
Còn ý mình là nhờ tạo giúp Macro form nhập liệu theo các tiêu đề cột như file đính kèm ah
Nhờ ACE GPE tạo giúp cho mình form nhập dữ liệu cho file excel đính kèm!
Dữ liệu chỉ nhập một dòng dữ liệu thôi nhé các bác! Nhưng còn một số Colums thì em sẽ học hỏi và tự thêm sau ạh!
Nhờ các bác tạo form giúp, xin cảm ơn
Thử Form này xem sao.
Bạn phải thiết lập chế độ chạy Macro trước khi mở File.
Nội dung nhập liệu có hướng dẫn trên form.
Private Sub ListBox1_Change()
txtSoTT.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 1, True)
txtNoiDungBC.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 2, True)
cbxNguoiNhanBC.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 3, True)
cbxNguoiLapBC.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 4, True)
cbxNguoiDuyetBC.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 5, True)
cbxCDDuyetBC.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 6, True)
cbxNguoiDuyetBC2.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 7, True)
cbxThangBC.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 8, True)
txtThoiGianBC.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 9, True)
txtGHICHU.Value = Application.VLookup(Me.ListBox1, Sheets("Nhap lieu").Range("A:J"), 10, True)
End Sub
txt= đầu mỗi câu lệnh là tên viết tắt của TextBox (để phân biệt các Control), cụm từ phía sau là tên viết tắt của tiêu đề cột (để biết Control nào nhập dữ liệu vào cột nào). Ví dụ: SoTT = số tứ tự, NoiDungBC = Nội dung báo cáo
cbx= đầu mỗi câu lệnh là tên viết tắt của ComboBox. ví dụ: cbxNguoiNhanBC = Người nhận báo cáo.
ListBox1 = ListBox dùng lấy dữ liệu để Load vào các Control.
Nhap lieu = là tên sheet dùng lấy dữ liệu (nếu bạn muốn sử dụng 1 sheet với danh sách các loại hàng hóa riêng thì bạn thay tên sheet Nhap lieu bằng tên sheet khác).
A:J = cột A đến cột J (khi click vào mỗi dòng của ListBox thì tương ứng với số dòng và số cột trên sheet Nhap lieu).
1 = cột A, 2 = cột B, 3= cột C ..v..v...
Theo mình hiểu thì: Code của command: nhâp liệu đã đủ tính năng để nhận giữ liệu mới từ các textbox và combobox từ form vào bảng theo dõi báo cáo của sheet nhập liệu rùi. Tiếp đến là trong properties của listbox bạn đã đặt thuộc tính Rowsuorse la vùng dữ liệu của có tên listboxnhaplieu, tức là list dữ liệu trên form cũng đã được cập nhật luôn. Vậy mình muốn hỏi lần nữa là dòng code trên mục đích của bạn là gì? "Có khi nào bạn viết thừ không vây?_không phải bỏ qua nhé"
Tôi gửi lại file cho bạn. Tôi đã sóa dòng code đó và mọi hoạt đọng của form vẫn bỉnh thường không có gì khác cả!!!!!!!!!!!!!!!!CommandButton = cmdNhapLieu (dùng truyền dữ liệu từ form vào Sheet Nhap lieu).
Trong cửa sổ Properties đặt thuộc tính Rowsuorse là ListBoxNhapLieu dùng để Load dữ liệu tử sheet vào của ListBox1.
Vậy ListBox1_Change dùng để Load dữ liệu từ ListBox1 vào Form qua các Control mà ta đặt tên ở đầu mỗi dòng Code, vậy bạn hãy xóa đoạn Code này và thử click vào Clickbox xem nó có tác dụng không? đương nhiên là không rồi! Mục đích chỗ này là tôi muốn lấy dữ liệu là danh mục từ 1 sheet khác để nhập liệu cho nhanh, nhưng do tác giả đưa File mà không có danh mục nên tôi mới sửa lại và dùng dữ liệu có sẳn trong sheet Nhap Lieu để các bạn biết mà ứng dụng vào công việc của mình.
Tôi gửi lại file cho bạn. Tôi đã sóa dòng code đó và mọi hoạt đọng của form vẫn bỉnh thường không có gì khác cả!!!!!!!!!!!!!!!!
Vậy ListBox1_Change dùng để Load dữ liệu từ ListBox1 vào Form, vậy bạn hãy xóa đoạn Code này và thử click vào ListBox xem nó có tác dụng không? đương nhiên là không rồi!
Tôi gửi lại file cho bạn. Tôi đã sóa dòng code đó và mọi hoạt đọng của form vẫn bỉnh thường không có gì khác cả!!!!!!!!!!!!!!!!
Vậy ListBox1_Change dùng để Load dữ liệu từ ListBox1 vào Form, vậy bạn hãy xóa đoạn Code này và thử click vào Clickbox xem nó có tác dụng không? đương nhiên là không rồi!
Tới bây giờ thì mình đã hiểu. Nhưng mấy câu giải thích của ban trước đó làm mình không hình dung ra được "dùng để Load dữ liệu từ ListBox1 vào Form" nếu bạn nói là " dùng để load dữ liệu từ listbox ngược lại vào textbox và combobox thì mình hiểu luôn. " vì mình cũng chưa làm vậy lần nào và thấy code ngoài chỗ đó đã đủ Y/C" Thank bạn nhéBạn hãy đọc lại câu này nhé (tôi đã nói rõ ràng rồi)
Tôi đã nói rõ chỗ này rồi còn gì ("dùng để Load dữ liệu từ ListBox1 vào Form").
Vậy bạn mở File lên và click vào bất kỳ dòng nào của ListBox1, xong bạn nhìn vào Form xem nó có hiện dữ liệu lên Form không?
Thay gì tôi cho nó 1 nút sửa dữ liệu, thì tôi ứng dụng ngay chỗ này để sửa và nhập dữ liệu cho nhanh và đỡ được nhiều thao tác.
Tới bây giờ thì mình đã hiểu. Nhưng mấy câu giải thích của ban trước đó làm mình không hình dung ra được "dùng để Load dữ liệu từ ListBox1 vào Form" nếu bạn nói là " dùng để load dữ liệu từ listbox ngược lại vào textbox và combobox thì mình hiểu luôn. " vì mình cũng chưa làm vậy lần nào và thấy code ngoài chỗ đó đã đủ Y/C" Thank bạn nhé
ListBox1 = ListBox dùng lấy dữ liệu để Load vào các Control.