chidung2009
Thành viên hoạt động
- Tham gia
- 12/9/12
- Bài viết
- 123
- Được thích
- 8
Chào các anh chị!
mình có 1 sheet chưa thông tin chi lương cho nhân viên. Với đoạn code vba bên dưới khi chạy mỗi hàng nó tạo ra 1 file word với thông tin chi lương cho từng người, khi số lượng nv lên tới vài trăm thì việc lưu này nói rất bất tiện. Vậy em nhờ anh chị giúp em sửa đoạn code bên dưới sao cho lưu tất cả phiếu chi lương vào 1 file word duy nhất và mỗi phiếu sẽ nằm gọn trong 1 tờ giấy A4.
Mình xin cảm ơn
mình có 1 sheet chưa thông tin chi lương cho nhân viên. Với đoạn code vba bên dưới khi chạy mỗi hàng nó tạo ra 1 file word với thông tin chi lương cho từng người, khi số lượng nv lên tới vài trăm thì việc lưu này nói rất bất tiện. Vậy em nhờ anh chị giúp em sửa đoạn code bên dưới sao cho lưu tất cả phiếu chi lương vào 1 file word duy nhất và mỗi phiếu sẽ nằm gọn trong 1 tờ giấy A4.
Mình xin cảm ơn
Mã:
Option Explicit
Sub phieuchiluong()
Dim num_of_cust As Long
Dim num_of_column As Long
Dim i As Long, j As Long
Dim template As Object
Dim t As Object
num_of_column = 13
num_of_cust = Sheet1.Cells(Rows.Count, "A").End(xlUp).Row - 1
With CreateObject("word.application")
.Visible = True
For i = 1 To num_of_cust
Set template = .documents.Open(ThisWorkbook.Path & "\template\PhieuLuong.doc")
Set t = template.Content
For j = 1 To num_of_column
t.Find.Execute _
FindText:=Sheet1.Cells(1, j).Value, _
ReplaceWith:=Sheet1.Cells(i + 1, j).Value, _
Replace:=wdReplaceAll
Next
template.SaveAs Filename:=ThisWorkbook.Path & Application.PathSeparator & i & "_phieuchiluong.doc"
Next
.Quit
End With
Set t = Nothing
Set template = Nothing
End Sub
Lần chỉnh sửa cuối: