Code tạo thẻ kho!

  • Thread starter Thread starter ThuNghi
  • Ngày gửi Ngày gửi
Liên hệ QC

ThuNghi

Hãy cho rồi sẽ nhận!
Thành viên đã mất
Tham gia
16/8/06
Bài viết
3,808
Được thích
4,449
Nhờ các bạn tạo 1 code tạo thẻ kho theo file kèm, hay là HD 1 hướng tạo.
Yêu cầu là:
- Tạo thẻ kho theo sh Thekho, 1 trang 4 thẻ, với tiêu thức tương ứng như sau:
slnhap: SL nhập; tgnhap: tiền nhập; slxuat: sl xuất...
- Với Stt là 1 và mahang (sh XNT) = mahang (sh thekho) là số tồn kho đầu kỳ (có khi không có)
- Với Stt là 2 và mahang (sh XNT) = mahang (sh thekho) là nhập kho, mỗi mahang chỉ nhập kho 1 lần.
- Với Stt là 3 và mahang (sh XNT) = mahang (sh thekho) là xuất kho, mỗi mahang có thể xuất nhiều nhất 3 lần. Thể hiện 3 dòng cùng mahang và cùng stt.
Xin cám ơn!
 

File đính kèm

Lanh chanh!
Access được hông ThuNghi? Kiếm bia uống bậy cho vui.
Nếu được Thu nghi cho file dbf gốc nha! Cái Excel này giống Foxpro Query quá!
 
Upvote 0
Lanh chanh!
Access được hông ThuNghi? Kiếm bia uống bậy cho vui.
Nếu được Thu nghi cho file dbf gốc nha! Cái Excel này giống Foxpro Query quá!
Bác sạo quá, mời hòai mà có thấy đâu. Bia thì em vô tư.
Con sh XNT là dbf gốc đó.
Mahang đã được sort theo ngày nhập xuất.
Làm excel đi Bác. Em đang thắc mắc sợ for i nhiều quá thôi, cứ 1 mahang trong dm phải tìm hết trong xnt rồi lấy stt =1, 2, 3 ...skip ...
Cám ơn Bác trước. Quan trọng là format thekho phải như vậy.
Em có report bên Fox rồi, mà in lêin tục thì không tiện và không chủ động.
 
Upvote 0
Không đúng! KHÔNG ĐÚNG!
Dữ liệu phần mềm nào mà dữ liệu nhập xuất đi chung với tồn đầu kỳ?
Tồn đầu kỳ đi riêng hoặc đi chung với danh mục chứ?
Cái này chắc Thu Nghi lấy dbf theo tên rôì không ngờ nó chỉ là query. Nếu đúng vậy đây là data source của Sổ chi tiết vật tư.
Tăng gấp đôi Ken phí.
Cấu trúc dữ liệu có lẽ như thế này (xem file) Mà nếu cấu trúc như vậy sẽ đơn giản hoá được vấn đề, dù Fox hay Excel hay Access.

TB: Nếu muốn in từng phần, từng trang, xài lại report trong Fox thì tự tạo form, dùng checkbox, textbox, combobox.... chọn điều kiện in theo ý muốn.
 

File đính kèm

Upvote 0
Không đúng! KHÔNG ĐÚNG!
Dữ liệu phần mềm nào mà dữ liệu nhập xuất đi chung với tồn đầu kỳ?
Tồn đầu kỳ đi riêng hoặc đi chung với danh mục chứ?
Cái này chắc Thu Nghi lấy dbf theo tên rôì không ngờ nó chỉ là query. Nếu đúng vậy đây là data source của Sổ chi tiết vật tư.
Tăng gấp đôi Ken phí.
Cấu trúc dữ liệu có lẽ như thế này (xem file) Mà nếu cấu trúc như vậy sẽ đơn giản hoá được vấn đề, dù Fox hay Excel hay Access.

TB: Nếu muốn in từng phần, từng trang, xài lại report trong Fox thì tự tạo form, dùng checkbox, textbox, combobox.... chọn điều kiện in theo ý muốn.
Chính xác đây là data source của Sổ chi tiết vật tư, trước khi tạo report, nó sẽ tạo ra 1 dbf, gồm nhập xuất và tồn kho theo thời kỳ, lúc này report sẽ nhanh hơn và bao gồm luôn tiện ích truy xuất ra dạng khác.
Vậy đưa về dạng của Anh cũng được, code đơn giản mà. Vấn đề em muốn là các sổ chi tiết vt luôn có từng ấy dòng, nếu không phát sinh, chỉ có tồn đầu thì các chỉ tiêu còn lại là "". Công việc này nhằm in được 1 trang có 4 sổ CT. Và cuối mỗi trang gài thêm số trang cho thuận tiện.
Ví dụ, ta cần in 100 mã, thì sẽ cho chọn lần 4 mã và hiển nhiên mã thứ 4x5 +1 sẽ là trang 6 (thêm 1 cell nơi cuối sổ CT thứ 4 của trang). Và có thêm tùy chọn nếu in rồi thì đánh dấu để không phải in trùng.
Các mã hàng theo dm trên bắt buộc phải có ps (Tồn or nhập).
Cám ơn Anh nhiều. Chỉ cần Anh gợi ý sơ về vòng lặp và copy format của sổ CT (Hình như phần copy format trong file quản lý phụ tùng của Vũ Ngọc). Em đang lúng túng phần này.
 
Upvote 0
Sorry ThuNghi, về VBA trong Excel phức tạp mình không làm nổi, nhờ cao thủ khác vậy.
 
Upvote 0
Các bạn giúp tôi với, tôi đã thử tạo form in thẻ kho, gồm 4 thẻ/ trang. Tôi chưa biết canh trang in thế nào mà có thể in đúng 4 thẻ/trang và có đánh số trang in.
Tôi dùng tạm code củ chuối tạo form thẻ kho (dạng template), còn số liệu điền sau theo file kèm.
Code như sau, xin HD cách tối ưu hơn và cách in 4 TK/trang.
PHP:
Option Explicit
Dim i As Integer, eR As Integer, MaHh As String
Sub TaoTmp()
With Application
    .EnableEvents = False
    .DisplayAlerts = False
    .ScreenUpdating = False
End With
eR = Sheet1.Range("A1000").End(xlUp).Row - 1
With Sheet4
    .Range("a1:m1000").ClearContents
    .Range("a1:m1000").ClearFormats
    For i = 0 To eR - 1
        MaHh = "Ma Hang : " & Sheet1.Range("A" & i + 1).Value
        .Range("a" & (i * 10) + 1) = MaHh
        Sheet3.Range("form").Copy
        .Range("a" & (i * 10) + 2).PasteSpecial
    Next
End With
With Application
    .CutCopyMode = False
    .EnableEvents = True
    .DisplayAlerts = True
    .ScreenUpdating = True
End With
End Sub
Xin chân thành cám ơn.
NVSon cứu trợ cái, file này không hòan toàn là kế toán đâu.
 

File đính kèm

Upvote 0
Nhờ các bạn tạo 1 code tạo thẻ kho theo file kèm, hay là HD 1 hướng tạo.
Yêu cầu là:
- Tạo thẻ kho theo sh Thekho, 1 trang 4 thẻ, với tiêu thức tương ứng như sau:
slnhap: SL nhập; tgnhap: tiền nhập; slxuat: sl xuất...
- Với Stt là 1 và mahang (sh XNT) = mahang (sh thekho) là số tồn kho đầu kỳ (có khi không có)
- Với Stt là 2 và mahang (sh XNT) = mahang (sh thekho) là nhập kho, mỗi mahang chỉ nhập kho 1 lần.
- Với Stt là 3 và mahang (sh XNT) = mahang (sh thekho) là xuất kho, mỗi mahang có thể xuất nhiều nhất 3 lần. Thể hiện 3 dòng cùng mahang và cùng stt.
Xin cám ơn!

Em đã làm thẻ kho động hoàn toàn bằng A-Tools, không phải lập trình gì cả, chỉ bằng một công thức. Nếu anh cần em có thể làm thêm.
 

File đính kèm

Upvote 0
Em đã làm thẻ kho động hoàn toàn bằng A-Tools, không phải lập trình gì cả, chỉ bằng một công thức. Nếu anh cần em có thể làm thêm.
Rất cám ơn Tuân, nhưng vì muốn in 1 lần hết 50 hay 100 thẻ kho và có đóng cuốn, có số trang và muốn tiết kiệm công in nên mới vận dụng như vậy. Chớ # 1000 mã thì in 1000 trang cũng mệt mà dùng công thức Excel thì khá nặng. Còn dùng công thức cho mỗi lần in 100 thẻ kho thì khó có số trang.
Với lại động tác in này là người khác làm, nên phải HD thêm A-Tools.
Tuân giúp mình theo yêu cầu nhé. Một lần nữa xin cám ơn Tuân.
 
Upvote 0
Rất cám ơn Tuân, nhưng vì muốn in 1 lần hết 50 hay 100 thẻ kho và có đóng cuốn, có số trang và muốn tiết kiệm công in nên mới vận dụng như vậy. Chớ # 1000 mã thì in 1000 trang cũng mệt mà dùng công thức Excel thì khá nặng. Còn dùng công thức cho mỗi lần in 100 thẻ kho thì khó có số trang.
Với lại động tác in này là người khác làm, nên phải HD thêm A-Tools.
Tuân giúp mình theo yêu cầu nhé. Một lần nữa xin cám ơn Tuân.

Ý anh muốn in cho n mã hàng ứng với n thẻ kho (mỗi thẻ kho có thể có n1 trang), cuốn thẻ kho có số thứ tự từ 1+n+n1+.. ?
Nếu mỗi thẻ kho chỉ có trên một trang :) thì không khó, nếu một thẻ kho có thể có nhiều trang thì với Excel để nhận biết số trang thì rất khó. Có lẽ phải kết hợp sang cả Winword (chỉ để lấy thứ tự trang).
Có một cách sáng hơn là tạo report bên Access.
 
Upvote 0
Ý anh muốn in cho n mã hàng ứng với n thẻ kho (mỗi thẻ kho có thể có n1 trang), cuốn thẻ kho có số thứ tự từ 1+n+n1+.. ?
Nếu mỗi thẻ kho chỉ có trên một trang :) thì không khó, nếu một thẻ kho có thể có nhiều trang thì với Excel để nhận biết số trang thì rất khó. Có lẽ phải kết hợp sang cả Winword (chỉ để lấy thứ tự trang).
Có một cách sáng hơn là tạo report bên Access.
Dbf này đã có tạo report bên Fox theo dạng in liên tục, nhưng sang trang thì nó thế nào. Nên mình vận dụng lại, mỗi trang in 4 thẻ kho và mỗi thẻ kho chỉ có 9 dòng, trong đó:
- Dòng 1: Mã hàng
- Dòng 2-3: Tiêu đề
- Dòng 4: Tồn đầu, nếu không có thì tồn đầu = null
- Dòng 5: Nhập trong kỳ (chỉ có 1 lần nhập vì nhập đích danh)
- Dòng 6,7,8: Xuất trong kỳ, xuất nhiều nhất là 3 lần. Nếu chỉ xuất 1 lần thì các dòng 7, 8 là null.
- Dòng 9: Tồn cuối kỳ.
Nếu làm bằng công thức index kết hợp sumproduct thì làm OK nhưng với 1000 mã thì nặng. Còn làm = VBA là làm 1 lúc ra 1000 mã # 250 trang thì hướng đi chưa thông. Và quan trọng nhất là phải canh trang in được 1 trang có 4 thẻ kho.
Nhờ Tuân giúp hộ. Xin cám ơn!
 
Upvote 0
Web KT

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

Back
Top Bottom