PC WORLD Online - Word İçin Faydalı Makrolar
Word Belgesi kaç kere yazdırıldı?
Aşağıdaki Word for Windows makrosu Word’ün hem 2.0 hem de 6.0 sürümlerinde kullanılabiliyor. Bu makronun yaptığı işe gelince. Sık sık kağıda döktüğünüz belgelerin olduğunu varsayalım. İşte bu makroyu NORMAL.DOT şablonuna eklediğinizde, makro size ilgili belgenin şu ana kadar kaç defa kağıda döküldüğünü gösteriyor. Aynı zamanda, belgeyi istediğiniz sayıda kağıda dökmenize imkan da veriyor. Makroyu çalıştırdığınızda ekrana basit bir diyalog kutusu geliyor ve belgenin şimdiye kadar kaç defa kağıda döküldüğü ve en son olarak hangi kullanıcı tarafından basıldığı diyalog kutusunda görüntüleniyor. Diyalog kutusu aynı zamanda bu belgeden kaç kopya yazdıracağınızı soruyor size. Burada istediğiniz sayıyı girip Tamam düğmesine bastığınızda, belgeniz ayarladığınız sayıda yazdırılıyor.
Sub MAIN
Dim dlg1 As FileSummaryInfo
GetCurValues dlg1
PrintedCopies = Val(dlg1.Keywords)
CopiesToDate$ = dlg1.Keywords
DateLastCopy$ = dlg1.Comments
If PrintedCopies = 0 Then
CopiesToDate$ = "Daha önce hiç yazdırılmadı."
DateLastCopy$ = ""
EndIf
Begin Dialog UserDialog 300, 100, "Akıllı Yazdır"
Text 15, 5, 270, 18, CopiesToDate$, .Text1
Text 15, 20, 270, 36, DateLastCopy$, .Text2
Text 15, 50, 180, 18, "Kaç kopya yazdıracaksınız?"
TextBox 215, 50, 40, 18, .NumberCopiesNow$
OKButton 15, 75, 88, 21
CancelButton 170, 75, 88, 21
End Dialog
Dim Copies As UserDialog
Copies.NumberCopiesNow$ = "1"
choice = Dialog(Copies)
If choice = 0 Then Goto Bye
NewCopies = Val(Copies.NumberCopiesNow$)
TotalCopies = NewCopies + PrintedCopies
While PrintedCopies <> TotalCopies
PrintedCopies = PrintedCopies + 1
FileSummaryInfo .Keywords = Str$(PrintedCopies)
EditSelectAll
UpdateFields
FilePrintDefault
Wend
FileSummaryInfo .Keywords = Str$(PrintedCopies) + \
" kopya yazıldı."
If PrintedCopies = 1 Then
FileSummaryInfo .Keywords = Str$(PrintedCopies) + \
" kopya yazıldı."
EndIf
Dim dlg2 As ToolsOptionsUserInfo
GetCurValues dlg2
LastPrintedBy$ = dlg2.Name
FileSummaryInfo .Comments = "Son yazdırılma: " + Date$() + \
Chr$(13) + "yazdıran: " + LastPrintedBy$ + "."
Bye:
End Sub