Giúp gán dữ liệu từ textbox vào cell

Liên hệ QC

mickeybh

Thành viên hoạt động
Tham gia
26/9/13
Bài viết
156
Được thích
33
Nhờ các bạn xem và giúp mình dữ liệu kiểu ngày tháng ở các textbox NgayKham, TuNgay, DenNgay khi gán vào cell thì nó không ra đúng định dạng ngày tháng.
(file lấy từ ví dụ của 1 bạn Pham Xuan Truong)
 

File đính kèm

  • hosokb.rar
    39.7 KB · Đọc: 71
Nhờ các bạn xem và giúp mình dữ liệu kiểu ngày tháng ở các textbox NgayKham, TuNgay, DenNgay khi gán vào cell thì nó không ra đúng định dạng ngày tháng.
(file lấy từ ví dụ của 1 bạn Pham Xuan Truong)

Mình đã test file của bạn, nó đúng là thế.

Bạn hãy thay đổi lại code. Thay vì Format(gia tri, "dd/mm/yyyy") -> CDate(gia tri) trước khi gắn vào cell xem sao?

Cụ thể
Private Sub GhiTam_Click()
'chep du lieu vao sheet DATA
...
ws1.Cells(iRow1, 7).Value = CDate(TuNgay) 'Format(Me.TuNgay.Value, "dd/mm/yy")
ws1.Cells(iRow1, 8).Value = CDate(DenNgay) 'Me.DenNgay.Value
ws1.Cells(iRow1, 11).Value = CDate(NgayKham) 'Me.NgayKham.Value


'chep tam du lieu
...
ActiveCell.Offset(Range("P1").Value, 6).Value = CDate(TuNgay) 'Me.TuNgay.Value
ActiveCell.Offset(Range("P1").Value, 7).Value = CDate(DenNgay) 'Me.DenNgay.Value
 
Upvote 0
Cảm ơn bạn phucbugis.
Mình gửi file đính kèm lên nhờ các bạn giúp mình thêm một số vấn đề:
- Ở form nhập dữ liệu, phần đơn thuốc mình ghi tạm ra 1 sheet temp và nội dung được hiển thị qua listbox, mình mới thêm phần sửa tên thuốc và số lượng lại sau khi đã "ghi tạm", sửa thì được nhưng lại có vấn đề xảy ra:
Ví dụ thuốc 1, số lượng 10
thuốc 2, số lượng 20
Mình chọn thuốc 2 để sửa lại 30 rồi "ghi tạm" thì dữ liệu sẽ đè lên dữ liệu cũ ở sheet temp, nhưng khi "cập nhật" thì nó lại thành 3 loại thuốc (ở sheet data), cụ thể:
thuốc 1, 10; thuốc 2, 20; thuốc 2, 30.
- Ở phần cm "thoát": ví dụ mình đang nhập 1 đơn thuốc (phần hành chính và đơn thuốc) nhưng vì lý do gì đó mình không nhập nữa, mình chọn "thoát" nhưng dữ liệu vẫn ghi vào sheet data.
- Ở phần cm "Xoá Thuốc": sau khi mình chọn thuốc và số lượng rồi "ghi tạm" nó sẽ nhảy xuống listbox. Các bạn có thể code dùm mình để chọn thuốc sau ghi đã "ghi tạm" sau khi click vào cm "Xóa Thuốc" nó sẽ xóa đi được không?
Mong các bạn, anh (chị) xem và giúp đỡ.
Code trong file toàn bộ cóp nhặt của các bạn, anh (chị) trên diễn đàn GPE nên có cái hiểu cái không và có khi không biết gì luôn.
 

File đính kèm

  • hosokb.rar
    39 KB · Đọc: 74
Upvote 0
Mình thấy cách hoạt động của các nút: Xóa thuốc, Ghi tạm, Cập nhật, Thoát đều chưa hợp lý.

Đặc biệt là nút Ghi tạm, khi click nút đó thì số liệu lại ghi thẳng vào 2 sheet Data va Temp, trong khi chưa kích hoạt nút Update. (mất công phải lập điều kiện cho nút Xóa thuốcThoát)

Nếu bạn đồng ý mình sẽ thay đổi toàn bộ code các nút đó (+ các yêu cầu khác nếu có). Nếu cứ theo cách trình bày code cũ, chỉnh chỗ này thì phát sinh ra chỗ khác.
 
Upvote 0
Cảm ơn bạn phucbugis.
Mình gửi file đính kèm lên nhờ các bạn giúp mình thêm một số vấn đề:
............
Nếu dùng nút Ghi tạm thì nên ghi vào mảng hoặc sheet tạm nào đó trước. Khi cập nhật mới ghi vào sheet Data.
Việc sửa xóa có 2 trường hợp xảy ra: Thứ nhất là sửa, xó khi ghi tạm, chưa cập nhật; thứ hai là đã ghi cập nhật rồi sau đó mới sửa, xóa.
Mình đang bận việc riêng trên BMT nên chưa thể giúp bạn lúc này được, mình sẽ xem sau, thông cảm nhé Hải.
 
Upvote 0
Mình thấy cách hoạt động của các nút: Xóa thuốc, Ghi tạm, Cập nhật, Thoát đều chưa hợp lý.

Đặc biệt là nút Ghi tạm, khi click nút đó thì số liệu lại ghi thẳng vào 2 sheet Data va Temp, trong khi chưa kích hoạt nút Update. (mất công phải lập điều kiện cho nút Xóa thuốcThoát)

Nếu bạn đồng ý mình sẽ thay đổi toàn bộ code các nút đó (+ các yêu cầu khác nếu có). Nếu cứ theo cách trình bày code cũ, chỉnh chỗ này thì phát sinh ra chỗ khác.

Mình có ghi phía bên dưới rằng: code này toàn bộ cóp nhặt từ các file của các bạn, anh (chị) trên GPE nên chắc chắn là không hợp lý rồi. Còn sửa như thế nào mình chưa đủ khả năng để làm việc đó. Mong các bạn dành ít thời gian giúp mình hoàn thiện trong mức có thể 1 ứng dụng nho nhỏ phục vụ cho công việc.

hanhpptc đã viết:
Nếu dùng nút Ghi tạm thì nên ghi vào mảng hoặc sheet tạm nào đó trước. Khi cập nhật mới ghi vào sheet Data.
Việc sửa xóa có 2 trường hợp xảy ra: Thứ nhất là sửa, xó khi ghi tạm, chưa cập nhật; thứ hai là đã ghi cập nhật rồi sau đó mới sửa, xóa.
Mình đang bận việc riêng trên BMT nên chưa thể giúp bạn lúc này được, mình sẽ xem sau, thông cảm nhé Hải.
Em sợ anh bận công việc nên nhiều lúc không dám gọi điện thoại. Anh xem thử thế nào cho hợp lý dùm em nha.
 
Upvote 0
Mình đã xử lý được tất cả các trường hợp bạn yêu cầu.

- Nút show form HoSo nằm ngay tại sheet Data để cho bạn tiện kiểm tra.
- Trong form HoSo: mình có tạo thêm các nút (Xóa thuốc, Sửa thuốc, Tạo mới)
- Cách sử dụng nút Sửa thuốc: Double-click vào ListThuoc -> sau khi sửa Mã thuốc hoặc số lượng của Row đã chọn -> click vào Sửa thuốc.
- Nút Ghi tạmCập nhật thì ko cần thông qua sheet Temp nữa.

Link:
http://www.mediafire.com/view/fv9yyqs1zbtu16p/hosokb_(5).xls

Chúc vui !
:-=

 
Upvote 0
Mình vừa test sơ qua phần sửa thuốc:
- Nếu double click vào thuốc và sửa thuốc xong ghi tạm nó sẽ thêm 1 thuốc nữa.
- Nếu chọn cm sửa thuốc thì báo lỗi hoặc chọn thuốc rồi mới chọn cm sửa thuốc cũng báo lỗi.
Có thể mình không hiểu cách thức hoạt động của nó, bạn có thể nói rõ hơn phần này không?
 
Upvote 0
Mình vừa test sơ qua phần sửa thuốc:
- Nếu double click vào thuốc và sửa thuốc xong ghi tạm nó sẽ thêm 1 thuốc nữa.
- Nếu chọn cm sửa thuốc thì báo lỗi hoặc chọn thuốc rồi mới chọn cm sửa thuốc cũng báo lỗi.
Có thể mình không hiểu cách thức hoạt động của nó, bạn có thể nói rõ hơn phần này không?

Sau khi bạn Double-click vào ListThuoc (listbox), lúc này STT sẽ xuất hiện cho biết bạn đang sửa ở vị trí nào. Bạn điều chỉnh mã thuốc hoặc số lượng nếu muốn. Sau khi điều chỉnh xong thì click nút Sửa Thuốc.

Còn trường hợp chọn nút Sửa thuốc mà báo lỗi vì lúc này bạn chưa double click vào tên thuốc trong ListThuoc (do mình chưa cài bẫy lỗi)

Còn 1 vãi lỗi nhỏ nữa, mình vừa mới phát hiện. Ví dụ trường hợp xóa thuốc thì số Tổng vừa bị giữ nguyên ... Bạn xem còn yêu cầu thêm gì ko để mình sửa 1 lần luôn :-=
 
Upvote 0
Cám ơn bạn! Mình cũng chưa thấy lỗi gì khác phát sinh ngoài những gì bạn nói.
Yêu cầu thì quá nhiều, một ứng dụng nhỏ nhưng nó có nhiều chức năng khác ví dụ như nhập thuốc, xuất thuốc (cái này thông qua tổng số lượng xuất bên sh data rồi nên sẽ tính sau), trích lọc báo cáo...Nhưng hiện tại giải quyết khâu đưa dữ liệu vào cho xong đã rồi mới dám tính tiếp.
Ở phần đưa dữ liệu vào mình có 1 số yêu cầu nho nhỏ như sau:
- Khi nhập mã thẻ bảo hiểm vào nó sẽ tìm trong dữ liệu (data) để xem bệnh nhân đã đến ngày tái khám chưa. Ví dụ ngày khám bệnh là 22/10/2013, số ngày điều trị là 5 ngày thì ngày được tái khám là ngày 27/10/2013 (điều kiện này so với ngày hệ thống), chỉ hiện ở mức độ cảnh báo để mình biết (do có 1 số bệnh nhân lạm dụng, tất nhiên có những bệnh nhân trong quá trình điều trị thì xuất hiện thêm bệnh khác nên vẫn cho khám). Nếu bệnh nhân đã có dữ liệu khám bệnh thì đưa những đơn thuốc trước đó bệnh nhân đã dùng để xem (ít nhất là lần khám bệnh sau cùng của bệnh nhân đó).
- Cũng ở phần nhập mã thẻ bảo hiểm vào, nếu là bệnh nhân mới (không có dữ liệu trong data thì phần hành chính nhập mới hoàn toàn, ngược lại hiện những thông tin đã có vào đỡ phải nhập. Phần này chắc khó).
- Ở phần nhập số lượng thuốc khi kê đơn thuốc có thể so sánh với tồn kho (sẽ có cột tồn kho cuối), nếu số lượng xuất > tồn thì không cho xuất.
(Hỏi nhỏ bạn thêm 1 câu: combobox trên userform có thể hiển thị nhiều cột không liền nhau được không?)
Mong tin bạn!
 
Upvote 0
Các yêu cầu của bạn cũng khá nhiều và quan trọng là phải có số liệu. Bạn cứ chuẩn bị số liệu trên file sẵn đi. Mình dựa vào đó thiết kế theo ý của bạn.

Hỏi nhỏ bạn thêm 1 câu: combobox trên userform có thể hiển thị nhiều cột không liền nhau được không?

Có thể chứ:

Link: https://www.mediafire.com/?u8z15k84jz25yzb
 
Lần chỉnh sửa cuối:
Upvote 0
Đang online bằng điện thoại nên chưa xem và nhập dữ liệu để bạn test được. Tí đi làm mình gửi lên sau nha.
Mình có nhập một vài đơn thuốc để bạn test và có vài điều cần hỏi bạn tí:
- Khi load form mình thấy code setfocus tại HoTen nhưng mình không thấy nó nhấp nháy con chuột tại vị trí đó mà phải click vào.
- Ở phần nhập đơn thuốc sau khi enter để ghi tạm mình có thể làm rỗng cb mã thuốc và các cb liên quan để gõ ký tự chọn thuốc mới mà không phải xóa mã trước đó để gõ lại được không bạn?
- Khi chọn cập nhật thì form sẽ load rỗng hết các dữ liệu tương đương với cm tạo mới được không bạn?
(Những yêu cầu nho nhỏ này nếu được bạn sửa luôn không thì để tính sau cũng được)
Cảm ơn và mong tin bạn!
 

File đính kèm

  • hosokb (6).rar
    46.6 KB · Đọc: 87
Lần chỉnh sửa cuối:
Upvote 0
thanks all các thành viên trong diễn đàn
 
Lần chỉnh sửa cuối:
Upvote 0
Đang online bằng điện thoại nên chưa xem và nhập dữ liệu để bạn test được. Tí đi làm mình gửi lên sau nha.
Mình có nhập một vài đơn thuốc để bạn test và có vài điều cần hỏi bạn tí:
- Khi load form mình thấy code setfocus tại HoTen nhưng mình không thấy nó nhấp nháy con chuột tại vị trí đó mà phải click vào.
- Ở phần nhập đơn thuốc sau khi enter để ghi tạm mình có thể làm rỗng cb mã thuốc và các cb liên quan để gõ ký tự chọn thuốc mới mà không phải xóa mã trước đó để gõ lại được không bạn?
- Khi chọn cập nhật thì form sẽ load rỗng hết các dữ liệu tương đương với cm tạo mới được không bạn?
(Những yêu cầu nho nhỏ này nếu được bạn sửa luôn không thì để tính sau cũng được)
Cảm ơn và mong tin bạn!
Bạn cần cái nào trống thì bạn viết cái đó ra rồi = "" là được trống bạn nhé
 
Upvote 0
Nhờ các bạn xem và giúp mình dữ liệu kiểu ngày tháng ở các textbox NgayKham, TuNgay, DenNgay khi gán vào cell thì nó không ra đúng định dạng ngày tháng.
(file lấy từ ví dụ của 1 bạn Pham Xuan Truong)
Góp ý cho bạn:
1/ Theo tôi thì bạn nên sử dụng SheetForm để làm đơn thuốc rồi lưu đơn thuốc vào sheet DATA.
2/ Bạn có thể tham khảo File ở link này: Theo dõi và truy vấn đơn thuốc nơi phòng khám
 
Upvote 0
Web KT
Back
Top Bottom