chothadiem
Thành viên hoạt động
- Tham gia
- 29/10/18
- Bài viết
- 188
- Được thích
- 50
Bạn thử với Sub này coi sao chứ tôi không dám thử (Hao giấy quá).Em có file hợp đồng lao động, danh mục nhân viên hợp đồng nằm ở sheet " DMNV"
Giờ em muốn in liên tục các sheet " HDLD" , sheet"PLHD", sheet"CKAT", sheet"BCK" theo số thứ tự từ 1 đến 41 trong sheet "DMNV"
Các anh chị cho em hỏi làm thế nào để in theo cách trên.
Em xin cảm ơn ạ!
Public Sub Gpe_InHangLoat()
Dim sArr(), Ws, I As Long, J As Long, R As Long, TT As String
Ws = Array("HDLD", "PLHD", "CKAT", "CK02")
sArr = Sheets("DMNV").Range("A5", Sheets("DMNV").Range("A5").End(xlDown)).Value
R = UBound(sArr)
For I = 1 To R
TT = sArr(I, 1)
For J = LBound(Ws) To UBound(Ws)
Sheets(Ws(J)).Range("AT1").Value = TT
Sheets(Ws(J)).PrintOut
Next J
Next I
End Sub
Dạ! em cám ơn Thầy!, chúc Thầy cuối tuần vui vẻ và nhiều niềm vui.Bạn thử với Sub này coi sao chứ tôi không dám thử (Hao giấy quá).
PHP:Public Sub Gpe_InHangLoat() Dim sArr(), Ws, I As Long, J As Long, R As Long, TT As String Ws = Array("HDLD", "PLHD", "CKAT", "CK02") sArr = Sheets("DMNV").Range("A5", Sheets("DMNV").Range("A5").End(xlDown)).Value R = UBound(sArr) For I = 1 To R TT = sArr(I, 1) For J = LBound(Ws) To UBound(Ws) Sheets(Ws(J)).Range("AT1").Value = TT Sheets(Ws(J)).PrintOut Next J Next I End Sub
Thầy ơi, em xin phép làm phiền thầy chút xíu nữa ạ!Bạn thử với Sub này coi sao chứ tôi không dám thử (Hao giấy quá).
PHP:Public Sub Gpe_InHangLoat() Dim sArr(), Ws, I As Long, J As Long, R As Long, TT As String Ws = Array("HDLD", "PLHD", "CKAT", "CK02") sArr = Sheets("DMNV").Range("A5", Sheets("DMNV").Range("A5").End(xlDown)).Value R = UBound(sArr) For I = 1 To R TT = sArr(I, 1) For J = LBound(Ws) To UBound(Ws) Sheets(Ws(J)).Range("AT1").Value = TT Sheets(Ws(J)).PrintOut Next J Next I End Sub
Em cám ơn ạ!copy đoạn code vào Command button Print
Private Sub CommandButton1_Click()
Dim sArr(), Ws, I As Long, J As Long, R As Long, TT As String
Ws = Array("HDLD", "PLHD", "CKAT", "CK02")
sArr = Sheets("DMNV").Range("A5", Sheets("DMNV").Range("A5").End(xlDown)).Value
R = UBound(sArr)
Dim SoBatDau, SoKetThuc As Long
SoBatDau = TextBox1.Text 'so bat dau
SoKetThuc = TextBox2.Text 'so ket thuc
'
If SoBatDau >= 1 And SoBatDau <= R And SoKetThuc >= 1 And SoKetThuc <= R And SoBatDau <= SoKetThuc Then
For I = SoBatDau To SoKetThuc
TT = sArr(I, 1)
For J = LBound(Ws) To UBound(Ws)
Sheets(Ws(J)).Range("AT1").Value = TT
Sheets(Ws(J)).PrintOut
Next J
Next I
Else
MsgBox (" Nhap lai so thu tu in.")
Exit Sub
End If
End Sub
SoBatDau = IsNumeric(TextBox1.Text) 'so bat dau
SoKetThuc = IsNumeric(TextBox2.Text) 'so ket thuc
Trước em in cũng chọn vùng in ạ! nhưng vẫn cứ bị thừa 2 trang trắng số 03 và 04.Chọn lại vùng in A2:A77 để không in trang trống; sửa lại 2 câu lệnh sau để tránh lỗi nhập vào không phải là số
Mã:SoBatDau = IsNumeric(TextBox1.Text) 'so bat dau SoKetThuc = IsNumeric(TextBox2.Text) 'so ket thucCODE][/QUOTE] [ATTACH=full]207522[/ATTACH]
Private Sub CommandButton1_Click()
Dim sArr(), Ws, I As Long, J As Long, R As Long, TT As String
Ws = Array("HDLD", "PLHD", "CKAT", "CK02")
sArr = Sheets("DMNV").Range("A5", Sheets("DMNV").Range("A5").End(xlDown)).Value
R = UBound(sArr)
Dim SoBatDau, SoKetThuc
SoBatDau = TextBox1.Text
SoKetThuc = TextBox2.Text
If IsNumeric(SoBatDau) = True And IsNumeric(SoKetThuc) = True Then
If SoBatDau >= 1 And SoBatDau <= R And SoKetThuc >= 1 And SoKetThuc <= R And SoBatDau <= SoKetThuc Then
For I = SoBatDau To SoKetThuc
TT = sArr(I, 1)
For J = LBound(Ws) To UBound(Ws)
Sheets(Ws(J)).Range("AT1").Value = TT
Sheets(Ws(J)).PrintOut
UserForm1.Hide
Unload Me
Next J
Next I
Else
MsgBox (" Nhap lai so thu tu in.")
Exit Sub
End If
Else
MsgBox (" Nhap lai so thu tu in.")
Exit Sub
End If
End Sub
Dạ! được rồi ạ! em cám ơn nhiều!Bạn chọn lại vùng in, chọn vùng in trống nên in ra co trang trắng(mình in thử không bị lỗi trang trắng nên không biết bị lỗi ở đâu), sửa lại code
Mã:Private Sub CommandButton1_Click() Dim sArr(), Ws, I As Long, J As Long, R As Long, TT As String Ws = Array("HDLD", "PLHD", "CKAT", "CK02") sArr = Sheets("DMNV").Range("A5", Sheets("DMNV").Range("A5").End(xlDown)).Value R = UBound(sArr) Dim SoBatDau, SoKetThuc SoBatDau = TextBox1.Text SoKetThuc = TextBox2.Text If IsNumeric(SoBatDau) = True And IsNumeric(SoKetThuc) = True Then If SoBatDau >= 1 And SoBatDau <= R And SoKetThuc >= 1 And SoKetThuc <= R And SoBatDau <= SoKetThuc Then For I = SoBatDau To SoKetThuc TT = sArr(I, 1) For J = LBound(Ws) To UBound(Ws) Sheets(Ws(J)).Range("AT1").Value = TT Sheets(Ws(J)).PrintOut UserForm1.Hide Unload Me Next J Next I Else MsgBox (" Nhap lai so thu tu in.") Exit Sub End If Else MsgBox (" Nhap lai so thu tu in.") Exit Sub End If End Sub
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 1
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 2