董占山
(中国农科院棉花所,河南安阳 455112)
在WINDOWS 95下,MS WORD 7.0提供文档的直接打印、删除、复制等功能,使WORD使用起来更加方便。但是在中低档微机上,不能使用WINDOWS 95,只能使用WINDOWS 3.X,也就不可能使用WORD 7.0,那么我们能不能给WORD 6.0添加类似的功能呢?回答是肯定的,笔者利用WORDBASIC编写了3个宏命令,分别用来完成文档的直接打印、删除、复制等功能。现将这几个宏命令介绍给WORD 6.0的广大用户,使您的WORD环境更易使用。
1 不打开文件打印文档
在WORD 6.0中要打印一份文档,必须先打开文档,将其置于文档编辑窗口中,然后才能打印,有时感到很不方便。本文提供了一个可以不打开文档就能打印其内容的宏PRINTDOCFILE,该宏首先弹出“打开文件”对话窗口,在对话窗口中选择一个文档文件,然后按〖确定〗按钮,WORD就直接打印该文档。PRINTDOCFILE宏命令清单如下:
Sub MAIN Dim Opendlg As FileOpen Opendlg.Name = "*.doc" y = Dialog(Opendlg) If y = - 1 Then FilePrint .AppendPrFile = 0, .Range = "0", .PrToFileName = "", .From = "", .To = "", .Type = 0, .NumCopies = "1", .Pages = "", .Order = 0, .PrintToFile = 0, .Collate = 1, .FileName = Opendlg.Name End Sub
2 删除当前目录下的文档文件
有时由于工作的疏忽或初学者的无知,会在文档目录下生产许多无用的文档文件,我称之为垃圾文档,这些垃圾需要我们定期清扫,以保持工作环境的清洁。但WORD没有提供删除这些垃圾文档的命令,我们只好退到操作系统下删除这些文件。在退出WORD之前,首先要将文档查看一遍,观其内容,决定取舍,如决定删除,要记下其名字,以便在操作系统下删除文件时不致于搞错。能不能在WORD下直接删除这些垃圾文档呢?回答是肯定的,本文提供了一个名为DELETEDOCFILE的宏命令,它可以直接在WORD环境下删除垃圾文档文件,效果甚佳。DELETEDOCFILE宏命令清单如下:
Sub MAIN FileFind .SearchPath = ".", .Name = "*.DOC" size = CountFoundFiles() - 1 If size >= 0 Then Dim mydocs$(size) For count = 0 To size mydocs$(count) = FoundFileName$(count + 1) Next End If Begin Dialog UserDialog 320, 176, "删除文件" ComboBox 23, 25, 209, 134, MyDocs$(), .ComboBox1 Text 19, 9, 160, 13, "当前目录下文件列表", .Text1 CancelButton 254, 60, 50, 21 PushButton 254, 20, 50, 21, "删除", .Push1 End Dialog Dim Deletedlg As UserDialog x = Dialog(Deletedlg, 1) Select Case x Case 1 If Deletedlg.ComboBox1 <> "" Then msg$ = "真要删除" + Deletedlg.ComboBox1 If MsgBox(msg$, "警告", 1) = - 1 Then Kill(deletedlg.ComboBox1) End If Else MsgBox "没有文件名 ! ", "警告", 64 End If Case Else End Select End Sub
3 复制当前文档到指定的目录或文件
我们编辑文档时,往往是在硬盘上进行的,但是当文档全部编制完成之后,多数情况下需要复制一份或几份到软盘上,作为备份。WORD本身没有提供文件的复制功能。虽然可以利用“文件”菜单中的“另存为”命令来完成类似的工作,但执行这条命令后,WORD的当前文档路径也变为新的路径,如果是向软盘复制,当软盘拿走后,WORD还要去读软盘,就会报错。本文提供了一个COPYDOCFILE的宏命令,它可以将当前活动文档直接复制指定的路径下或文件,但不改变当前文档路径和其它WORD环境设置。
CopyDocFile Sub MAIN a$ = FileName$() If A$ <> "" Then If MsgBox("请将软盘插入A:驱动器,准备好后按回车。", "提示", 1) = - 1 Then FileSaveAs .Name = A$, .Format = 0, .LockAnnot = 0, .Password = "", .AddToMru = 1, .WritePassword = "", .RecommendReadOnly = 0, .EmbedFonts = 0, .NativePictureFormat = 0, .FormsData = 0, .SaveAsAOCELetter = 0 Dim Copydlg As CopyFile Copydlg.FileName = a$ Copydlg.Directory = "A:\" On Error Goto trap x = Dialog(Copydlg, 1) If x = - 1 Then CopyFile Copydlg Goto skiptrap trap : MsgBox "没有复制当前文档! ", "注意", 48 End If End If skiptrap: End Sub
4 把宏命令添加到菜单
把宏命令添加到文件菜单的步骤如下:
添加到菜单上的宏命令使用起来和WORD提供的菜单命令一样。