Xin giúp đỡ code VBA in ra file và xuất vùng in sang pdf (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ntquantn

Thành viên chính thức
Tham gia
13/4/12
Bài viết
72
Được thích
12
Chào các bạn,

Mình có xây dựng 1 file excel trong đó sử dụng userform như trong file đính kèm.

Hiện tại bị mấy lỗi như sau:

1. Khi bấm nút in hóa đơn xong thì bị thoát mất userform. Mình muốn sau khi in xong thì vẫn ở userform để tiếp tục làm việc.
2. Module Luuhoadon: mục đích để lưu lại từng hóa đơn bán hàng vào thư mục con trong thư mục chứa file excel: bị lỗi " runtime error 5" mình tìm hoài mà không xử lý được.
3. Lỗi Khi bấm nút đơn hàng mới thì lỗi, không xóa toàn bộ các dữ liệu của userform

Rất mong các bạn xem file đính kèm và sửa giúp mình nhé.

P:s: Toàn bộ code này do mình tham khảo copy về chỉnh sửa chứ mình mù tịt về VB, mong các bạn đừng cười
 

File đính kèm

Upvote 0
Tôi đã nêu rõ ở bài 17 của Topic sau:
http://www.giaiphapexcel.com/diendan/threads/nhờ-sửa-vùng-dữ-liệu-của-code-vb-form-nhập-liệu.129852/

Nếu làm Hóa đơn mà dùng UserForm thì tôi không rớ.
Tôi khuyên bạn nếu mù tịt về VBA thì nên bỏ ý định về sử dụng Hóa đơn bằng UserForm đi (nó không thuận tiện bằng SheetForm đâu).

Vì mình làm đến đoạn này rồi, giờ bỏ thấy tiếc quá. Hơn nữa chắc bạn chưa xem đến phần nội dung mình hỏi nhờ là xử lý giúp mình 3 vấn đề ở trên. Chứ mình không định làm hóa đơn bằng userform. Phần của mình đơn giản chỉ là nhập liệu thôi mà (theo mình hiểu vậy)
 
Upvote 0
Lần chỉnh sửa cuối:
Upvote 0
Mình chỉ có thể giúp bạn theo hướng này (theo file kèm theo)
& mình chỉ mới làm tới đây, bạn thử quậy tưng với nó lúc rỗi xem sao.
Nếu ưng hay cần bàn, ta sẽ tiếp.

Rất cảm ơn bạn đã làm file đó, mình đã xem nhưng chắc phải mất nhiều thời gian để tìm hiểu vì có vẻ đi sâu và cao cấp với mình quá.

Như đã nói ở #1: Mình trước mắt chỉ cần 1 form Nhập Liệu đơn giản phục vụ cho công việc của mình thôi. Tối qua mình đã xử lý được "Lỗi Khi bấm nút đơn hàng mới thì lỗi, không xóa toàn bộ các dữ liệu của userform"

Giờ chỉ còn vấn đề với Nút IN HÓA ĐƠN: làm sao để khi bấm in xong thì lại quay trở về Userform??
Và mình muốn xuất Hóa đơn đó ra file PDF hoặc JPG (nằm trong thư mục Hóa Đơn là thư mục con của thư mục chứa file excel) để lưu đối chiếu thôi.

Rất mong các bạn giúp đỡ.

Mình cảm ơn rất nhiều
 
Upvote 0
Vui quá, mất gần 5h mày mò, Mình cũng xử lý được với nút In

Private Sub nutInhoadon_Click()
With frmBanLe.Controls
On Error Resume Next
Call InHDBL.printHDBL
frmBanLe.Show
End With

End Sub
 
Upvote 0
Xin nhờ các bạn xem giúp đoạn mã dưới vì sao lại không được.

Nếu mình đặt lệnh if then else theo từng cặp rồi đóng end if thì được nhưng mỗi lần bấm nút thì lại bị xóa các ô đã nhập. Ví dụ khi đã nhập mã hàng nhưng thiếu số lượng thì lúc bấm nút sptiep thì lại cũng xóa luôn mã hàng đã nhập.
Còn khi mình đặt như code ở dưới thì không được

Private Sub nutSPTiep_Click()
Dim EndR As Long, i As String, j As String

i = cobMaBL.Value
j = txtSLBL.Text
If i = "" Then
If j <> "" Then
MsgBox ("HAY CHON MA HANG")
Else
MsgBox (" HAY NHAP MA HANG VA SO LUONG")
GoTo Nhaplai:
If i <> "" Then
If j = "" Then
MsgBox ("HAY NHAP SO LUONG HANG")

With Sheets("Banle")
EndR = .ListObjects(1).Range.Cells(.ListObjects(1).Range.Rows.Count, 2).End(xlUp).Row
.Range("B" & EndR + 1) = txtNgayKH.Text
.Range("C" & EndR + 1) = txttenKH.Text
.Range("D" & EndR + 1) = txtPhoneKH.Text
.Range("E" & EndR + 1) = txtADDKH.Text
.Range("F" & EndR + 1) = txtNoteKH.Text
.Range("G" & EndR + 1) = cobMaBL.Value
.Range("H" & EndR + 1) = txtSLBL.Text
.Range("M" & EndR + 1) = txtKMBL.Text
.Range("P" & EndR + 1) = cobPhiGH.Value
.Range("Q" & EndR + 1) = cobTTTT.Value
End With

cobMaBL.Value = ""
txtSLBL.Text = ""
txtKMBL.Text = ""
cobPhiGH.Value = ""
cobTTTT.Value = ""
cobMaBL.SetFocus
Nhaplai:

End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom