bebeen
Thành viên thường trực




- Tham gia
- 13/2/12
- Bài viết
- 213
- Được thích
- 24
Code của bạn:Em có ví dụ nhỏ về in nhiều liên. Không biết code sai chỗ nào mà khi em in nó không cập nhật dữ liệu ô D5 (mục: Liên). Em đưa lên đây nhờ mọi người xem dùm cho em, và chỉ cho em chỗ sai nhé!?
Sub inP01()
Dim Tuso As Range, Denso As Range
Dim i As Long
Set Tuso = S6.Range("AA1")
Set Denso = S6.Range("AA2")
On Error Resume Next
If MsgBox("Ban thuc su muon in nhung so nay chua?", vbQuestion + vbYesNo, "Hoi lai cho chac. Hi...") = vbYes Then
For i = Tuso To Denso
S6.Range("D5").Value = i
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Next i
End If
Set Tuso = Nothing
Set Denso = Nothing
End Sub
Được Thầy Ba Tê giải thích kỹ là bạn đó đỡ đau khổ ngay hì hì hì1/ Sub của bạn viết trong Module nên phải là Public Sub.
2/ Gán Tuso và Denso = Rang() -------> thì ???????????
3/ For i = Tuso to Denso ----> i là biến Long thì ?????????
...............
"Ngâm cứu" và dọn dẹp để bắt đầu đi vào "con đường đau khổ" nhé.
Code của bạn:
1/ Sub của bạn viết trong Module nên là Public Sub.PHP:Sub inP01() Dim Tuso As Range, Denso As Range Dim i As Long Set Tuso = S6.Range("AA1") Set Denso = S6.Range("AA2") On Error Resume Next If MsgBox("Ban thuc su muon in nhung so nay chua?", vbQuestion + vbYesNo, "Hoi lai cho chac. Hi...") = vbYes Then For i = Tuso To Denso S6.Range("D5").Value = i ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Next i End If Set Tuso = Nothing Set Denso = Nothing End Sub
2/ Gán Tuso và Denso = Rang() -------> thì ???????????
3/ For i = Tuso to Denso ----> i là biến Long thì ?????????
...............
"Ngâm cứu" và dọn dẹp để bắt đầu đi vào "con đường đau khổ" nhé.
Tôi hiểu là bạn muốn lấy dữ liệu của AA1 và AA2 cho mỗi lần in, phải không?Em cũng nghĩ lỗi ở chỗ đó mà không thể nào biết được? Nhờ thầy nói rõ hơn cho em?
Public Sub IN_GPE()
Dim I As Long
For I = 1 To 2
[D5].Value = Range("AA" & I)
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1
Next I
End Sub