Đăng ký học Excel và VBA cùng GPE tháng 11 - TPHCM

Đăng ký học Excel và phân tích số liệu cùng GPE tháng 12 - TPHCM

Mua sách "VBA trong Excel - Cải thiện và tăng tốc" tái bản

Quản lý kho = Excel + Access

Thảo luận trong 'Cơ sở dữ liệu' bắt đầu bởi levanduyet, 17 Tháng mười hai 2006.

  1. levanduyet

    levanduyet Thành viên danh dự

    Chào các bạn,
    Tôi xin giới thiệu với các bạn File quản lý kho đơn giản. Các bạn có thể phát triển thêm nếu muốn.
    Tôi xin đính kèm file hướng dẫn, file dữ liệu và cả file Excel.

    Chúc các bạn thành công.

    Lê Văn Duyệt

    User Name: Le Van Duyet
    Pass: Le Van Duyet


    Password VBA Excel: duyet@hien
    Xin bạn đọc hướng dẫn và tạo System DSN trước.

    Lê Văn Duyệt
     

    Các file đính kèm:

  2. lachinhan

    lachinhan The God of Pigs

    Bác Duyệt đóng mã nguồn thì làm sao anh em phát triển được hô hô. Nếu Bác Duyệt đồng ý mình sẽ post mã nguồn của bác lên. Mình nghĩ trên diễn đàn anh em đừng đóng mã nguồn, chủ yếu là chia sẽ để học hỏi và phát triển.
    Thân

    vậy để anh em tự liên hệ với bác duyệt vậy hehe. Bác duyệt có thể vào đây để tham khảo http://www.giaiphapexcel.com/forum/showthread.php?t=823&page=3 . Mình nghĩ chương trình bác viết rất hay nhưng để khi mở file tự nó enable macro thì có hay hơn ko ???
     
  3. levanduyet

    levanduyet Thành viên danh dự

    Vâng, đây chỉ là một kỹ thuật nhỏ nhằm yêu cầu người dùng phải Enable khi muốn sử dụng. Tôi đã giới thiệu kỹ thuật này trong lớp VBA.
    Kỹ thuật bạn nói ở đường link trên hơi phức tạp.

    Lê Văn Duyệt

    Pass: duyet@hien

    Lê Văn Duyệt
     
  4. Đào Việt Cường

    Đào Việt Cường Cu Tí sành điệu

    Dear all,
    --------
    Xin phép anh levanduyet, em chỉnh sửa chút xíu để các bạn không hỏi những vấn đề không cần thiết nữa.

    Các chỉnh sửa:
    - Kết nối cơ sở dữ liệu Warehouse.mdb
    - Không để ẩn các sheet tạo thuận tiện tìm hiểu cấu trúc chương trình
    - Sửa lỗi truy vấn theo ngày tháng:
    'dteDate = Mid(dteDate, 4, 2) & "/" & Mid(dteDate, 1, 2) & "/" & Right(dteDate, 4)
     

    Các file đính kèm:

  5. Tu Anh

    Tu Anh Thành viên mới

    Em vào phần Data set up thấy hỏi mật khẩu, đã dùng tên Le Van Duyet và pass duyet@hien nhưng vẫn không mở được. Xin anh cho biết cách vào Dtata set up. Em nghĩ đã là file chia sẻ để mọi người tham khảo thì nên hướng dẫn cụ thể cách vào để mọi người xem mã. +-+-+-+[FONT=&quot] [/FONT]

    Bạn có thể cho mình biết cách thay đổi các chữ và tên các nút trên sheet Menu không. Mình muốn thay đổi thành tiến Việt, mình dốt Tiếng Anh lắm. Thanks trước.
     
  6. Nguyễn Duy Tuân

    Nguyễn Duy Tuân Nghị Hách

    Anh Duyệt có thể sửa lại câu lệnh tạo Connection để gọi thẳng vào file mdb. Gọi qua DNS như thế, nhiều người dùng không hiểu.
     
  7. levanduyet

    levanduyet Thành viên danh dự

    Với việc dùng ODBC DSN là các đơn giản nhất đêt tạo kết nối với cơ sở dữ liệu. Vì có thể đối với máy người dùng khác nhau tên ổ đĩa sẻ khác nhau. Nhưng nó sẽ gặp rắc rối sau:
    _Trong chuỗi kết nối không có tên ổ đĩa hoặc đường dẫn, điều này đối với một số người có thể là không rỏ ràng.
    _Đối với các ứng dụng dùng DSN, thì trên mỗi Desktop phải tạo DNS.
    Các bạn có thể thay đổi connection string, trong thủ tục ConnectToDatabase.
    Các bạn chú ý tôi đã để sẵn các đoạn mã
    Mã:
    'Get the database path (same as Active Workbook)
        'sPath = ActiveWorkbook.Path
        'If Right$(sPath, 1) <> "\" Then sPath = sPath & "\"
        'sPath = sPath & DatabasePath
        ''Check the exist of the file
        'If Not FileExists(sPath) Then
        '    bConnected = False
        '    MsgBox "The file " & sPath & " is not exist! Pls check!", vbOKOnly, "Notice"
        '    GoTo ErrorExit
        'End If

    Mã:
     'With gcnAccess
        '    .Provider = "Microsoft.Jet.OLEDB.4.0"
        '    .Properties("Jet OLEDB:Database Password") = "duyethien"
        '    .Mode = adModeReadWrite
        '    .CursorLocation = adUseClient
        '    .CommandTimeout = 100
        '    .Open "Data Source=" & sPath
        'End With
    
    Các bạn chọn các đoạn mã này và chọn uncomment block như hình
    [​IMG]
    Các bạn phải sửa lại
    Mã:
     .Properties("Jet OLEDB:Database Password") = "duyethien"
    Thành
    Mã:
     .Properties("Jet OLEDB:Database Password") = ""
    To: Tu Anh
    Nếu bạn có bật bộ gõ thì chú ý. Nếu bạn dùng file của Đào Việt Cường thì không cần. Nhân đây xin cám ơn Cường.
    Nếu bạn dùng file tôi đã post đầu tiên thì pass để Un-protect là: bbababaB
    Sau đó bạn chỉ việc chọn nút lệnh và click phải chọn Properties là có thể thay đổi các thuộc tính. Chú ý ở đây nếu bạn chọn font VNI hay ABC thì bạn có thể thay đổi tiếng việt được.
    [​IMG]
    Tôi đang phát triển. Phiên bản sau sẽ tốt hơn.

    Lê Văn Duyệt
     
  8. levanduyet

    levanduyet Thành viên danh dự

    Gởi Tu Anh,
    Trong form tôi dùng Listview, mà Listview thì không hổ trợ unicode nên bạn không thể hiện được tiếng việt. Để đồng bộ hóa, bạn chọn tất cả các font là VNI, hoặc ABC, thì thể hiện được tiếng việt.

    Lê Văn Duyệt
     
  9. Tu Anh

    Tu Anh Thành viên mới

    Cám ơn anh, đã thể hiện được tiếng Việt nhưng còn một vấn đề nhỏ đó là trong textbox txtMota hiện tiếng việt nhưng các chữ bị ngắt quảng ví dụ: "Bàn làm việc" nó hiện thành " Bà n là m việ c" . Vậy có cách nào khắc phục không.
    Thứ 2: Em đã hỏi anh cách điều chỉnh mẫu báo cáo theo ý mình thì sửa ở đâu nhưng chưa thấy anh trả lời.
    Cám ơn nhiều!!!!!!!!!
     
  10. levanduyet

    levanduyet Thành viên danh dự

    Bạn dùng font gì?
    Bạn phải tự điều chỉnh trong code. Vì đây là file mẫu, nên các bạn muốn phát triển thêm vui lòng xem code để điều chỉnh theo ý mình.

    Lê Văn Duyệt

     
  11. levanduyet

    levanduyet Thành viên danh dự

    Tu Anh, xem tiếp ở đây nha.
    http://www.giaiphapexcel.com/forum/showthread.php?t=2401&page=5
    Hy vọng bạn có thể sửa lại báo cáo theo ý của mình.

    Lê Văn Duyệt

    _______________

    Em sorry anh, cho em xì pam đôi dòng vì em hỏng biết post ở đâu hết. Tu Anh ở đây là Tu Anh khác, hỏng phải chị TA bên WKT. Hì hì...%#^#$
     
    Chỉnh sửa lần cuối bởi điều hành viên: 6 Tháng bảy 2007
  12. levanduyet

    levanduyet Thành viên danh dự

    Chào các bạn,
    Chúng ta lại bắt đầu xây dựng lại ứng dụng này từ bước đầu. Đề nghị các bạn cùng tham gia thảo luận, nhất là các bạn đang làm công việc QUẢN LÝ KHO.

    Chúng ta cần thảo luận để đưa ra:
    _Xây dựng các bảng dữ liệu trong Access.
    _Các biểu mẫu chung nhất cho việc nhập, xuất.
    _Các báo cáo cần thiết.

    Vâng, xin các bạn góp ý tiếp.
    Sau bước này chúng ta sẽ đi vào xây dựng từng bước cho ứng dụng quản lý kho.

    Lê Văn Duyệt

    . . . . .

    Hình như đến đây thì các bạn lại im lặng !
    Có bạn nào muốn tham gia dự án này không?

    Lê Văn Duyệt
     
  13. hai1111

    hai1111 Thành viên mới

    Mình làm bên nhà máy thuốc lá, cũng cần 1 cái quản lý kho, ko biết có chung ý tưởng như Duyệt ko?

     
  14. levanduyet

    levanduyet Thành viên danh dự

    Cám ơn các bạn,
    Cuối cùng thì cũng có bạn lên tiếng rồi !
    Chúng ta sẽ thảo luận
    _Yêu cầu của phần quản lý kho này.
    _Phân tích thiết kế (làm thế nào để thực hiện yêu cầu = phần mềm, theo hai2hai)

    Bước đầu tiên là quan trọng, vậy chúng ta hãy cùng nhau phân tích bước 1.

    To: trangnewasia, bạn xem kỹ thread nha. Tôi đã giải thích rồi.
    Lê Văn Duyệt
     
  15. levanduyet

    levanduyet Thành viên danh dự

    Chúng ta thử đưa ra yêu cầu như sau:

    [​IMG]

    Các bạn có ý kiến gì không?
    Như trên tôi đã nói, chúng ta sẽ thực hiện một cách đơn giản nhất. Sau đó chúng ta mới phát triển thêm.

    Lê Văn Duyệt
     
  16. levanduyet

    levanduyet Thành viên danh dự

    Quản lý tồn kho - Inventory Control

    Chúng ta sẽ nói về một vài khái niệm có liên quan đến quản lý tồn kho.

    Trong một xí nghiệp sản xuất, kinh doanh muốn có lợi nhuận chúng ta chú ý:
    _Dịch vụ khách hàng/Customer Service.
    _Tồn kho tối thiểu/Min stock.
    _Sản xuất với giá thành hạ, chất lượng cao, năng suất tối ưu.

    Với ba mục tiêu trên, các bạn sẽ cảm thấy nó mâu thuẩn với nhau.
    Tại sao? Vì muốn phục vụ khách hàng tốt, bạn phải luôn có tồn kho. Điều này xem ra mâu thuẩn với điều thứ hai. Nhưng tồn kho thế nào là hợp lý.
    Sản xuất với giá thành hạ, chất lượng cao, năng suất tối ưu: đây cũng là vấn đề nan giải.
    Vậy thì Làm thế nào để xác định điểm mua hàng (Reorder point-ROP). Điểm mua hàng được xác định bởi lead time/thời gian chờ hàng về kho và chúng ta phải xác định safety stock level/mức tồn kho an toàn.

    [​IMG]

    Khi nói đến các vấn đề trên các bạn sẽ gặp từ EOQ
    Vậy EOQ là gì? EOQ (Economic Order Quantity) là một hệ thống tồn kho liên tục (is a continuous inventory system)
    Để xác định điểm ROP chúng ta có công thức:
    R=dxL
    Trong đó
    d: là số lượng yêu cầu trong một khoảng thời gian. Ví dụ một ngày chằng hạn(demand rate per time period)
    L: lead time

    Một ví dụ về việc tính ROP

    [​IMG]

    Chúng ta có thể hiểu tồn kho an toàn như sau: đó là điểm tồn kho thấp nhất để sản xuất thỏa yêu cầu của khách hàng. Nếu dưới mức này có thể sẽ ảnh hưởng đến các đơn hàng của sản xuất. Việc xác định điểm tồn kho an toàn cũng rất là quan trọng.

    [​IMG]

    Chính vì vậy mà các bạn sẽ thấy các báo cáo Stock Aging.

    Dưới đây là một cái nhìn tổng quát về quản lý tồn kho tại kho.

    [​IMG]

    Hy vọng qua phần này chúng ta có một cái nhìn khái quát về quản lý tồn kho.


    Lê Văn Duyệt
     
    Lần chỉnh sửa cuối: 26 Tháng tám 2007
  17. levanduyet

    levanduyet Thành viên danh dự

    Các loại giao dịch tại kho

    Các giao dịch tồn kho chúng ta có thể chia thành năm loại như sau:
    _Biên nhận nhập / Receipts: đây là chứng từ cần phải có mỗi khi nhập hàng. Tùy theo loại hình của doanh nghiệp mà các chứng từ có tên gọi khác nhau, nhưng nó cùng mục đích.
    _Phiếu xuất/Issues: chứng từ để xuất có thể là Raw materials requisition slip (Phiếu yêu cầu vật tư), Stock out note (Phiếu yêu cầu xuất)
    _Phiếu xuất hàng/Shipment
    _Các phiếu di chuyển/Movement: ví dụ như trong doanh nghiệp của bạn có nhiều kho, để di chuyển từ kho này qua kho khác các bạn cũng cần phải có các chứng từ này. Như vậy số liệu trong hệ thống sẽ chính xác. Hoặc các bạn xuất hàng đi gia công bên ngoài chằng hạn.
    _Các phiếu điều chỉnh/Adjustment: tùy theo người quản lý doanh nghiệp mà có thể việc kiểm kho sẽ có chu kỳ 1 tuần, 1 tháng, 6 tháng, hay một năm. Sau khi kiểm kho số lượng chênh lệch sẽ được điều chỉnh (dĩ nhiên phải tìm hiểu nguyên nhân, chứ nếu không,...nhân viên kho đi bán thì sao!!!)

    Như vậy chúng ta có thể tổng kết các biến động trong kho gồm các mục chính như sau:
    _Nhập hàng từ nhà cung cấp nội địa.
    _Xuất bán hàng cho khách hàng trong nước.
    _Nhập hàng từ nhà cung cấp nước ngoài.
    _Xuất bán hàng cho khách nước ngoài.
    _Nhập sản phẩm từ bộ phận sản xuất/phân xưởng sản xuất.
    _Xuất vật tư, nguyên liệu cho bộ phận sản xuất/phân xưởng sản xuất.
    _Nhập hàng gia công (tức là từ sub-contractors)
    _Xuất hàng cho gia công (gởi vật tư cho sub-contractors gia công cho doanh nghiệp)
    _Nhập điều chỉnh giá phí (chú ý chỉ có số tiền mà thôi)
    _Xuất điều chỉnh giá phí (chỉ có số tiền mà thôi)
    _Nhập hàng nội bộ từ kho khác (ví dụ từ kho A sang kho B, thì kho B là nhận, kho A là xuất)
    _Xuất hàng nội bộ (tương tự trên đã giải thích)
    _Nhập sản phẩm khách hàng trả lại.
    _Xuất vật tư trả lại nhà cung cấp.
    _Nhập do thay đổi mã số mặt hàng trên tập tin chính tồn kho.
    _Xuất do thay đổi mã số mặt hàng trên tập tin chính tồn kho.
    _Nhập điều chỉnh sau khi kiểm kê.
    _Xuất do điều chỉnh sau khi kiểm kê.
    _Hủy bỏ một bút toán nhập trước đó.
    _Hủy bỏ một bút toán xuất trước đó.


    Như vậy tương đối đầy đủ cho một doanh nghiệp sản xuất.

    Lê Văn Duyệt
     
  18. levanduyet

    levanduyet Thành viên danh dự

    Chào các bạn,
    Với việc phân tích ở thread 29, 30 chúng ta thấy rằng các yêu cầu cho việc xây dựng một ứng dụng đơn giản trên chỉ là một phần nhỏ và thiếu nhiều cho một ứng dụng tổng quát. Nhưng chúng ta hãy cứ xây dựng một ứng dụng nhỏ trước và sau đó chúng ta sẽ phát triển sau.

    Các bạn có ý kiến gì không?


    Lê Văn Duyệt
    PS: Hình như đến đây các bạn...lại không có ý kiến gì :(.
     
  19. smbsolutions

    smbsolutions Thành viên hoạt động

    Theo tôi, bác đã sai về mặt phương pháp làm việc nhóm & online rồi bác ạ. :)

    Rất tiếc là hôm nọ tôi đã viết 1 bài rất dài, nhưng khi send thì báo lỗi và mất luôn bài viết. Thế là chán quá chả viết lại nữa.

    1. Về mặt làm phương pháp làm việc nhóm:
    - Nhóm làm việc gồm những ai?
    - Ai là trưởng nhóm?
    - Thời gian làm việc thế nào?
    - Có những công việc gì?
    - Ai làm công việc nào, kết quả là gì?
    - Phương pháp trao đổi thông tin là gì?
    - ....

    2. Về dự án (Dù nhỏ cũng được coi là dự án)
    - Mục tiêu của dự án là gì? (Đơn giản hơn là: Bác mong mỏi gì khi post chủ đề này?)
    - Phạm vi của bài toán? (Bác nhớ là bài toán kho cho SX khác với bài toán kho cho thương mại nhé, chưa kể là kích cỡ, phạm vi của bài toán, v.v...)
    - Đối tượng áp dụng
    - Nội dung (outline) của giải pháp?
    - v.v...

    Tự nhiên anh mô tả quy trình với những concepts từ ... SAP vào thì ko phải ai cũng hình dung ra được đâu bác ạ. Nhiều khi bài toán phải từ những thứ đơn giản như ABC trước đã. Mọi người thậm chí ko biết khái niệm và cách thức làm việc online thì làm sao mà tham gia được.

    Nếu bác dự định làm 1 mình thì có thể bỏ qua những chuyện em nói ở trên :-=

    Cheers!
     
    Lần chỉnh sửa cuối: 28 Tháng tám 2007
  20. vumian

    vumian Mỗi bậc thang là mỗi Cell

    Hi anh Duyet,

    Chuong trinh của anh rất hay, nhưng ý tưởng của mình là anh nâng chuong trình lên thành nhập dữ liệu trên lưới luôn duoc không ?
     

Chia sẻ trang này