Vba 如何打印.txt文件?

Vba 如何打印.txt文件?,vba,text,printing,Vba,Text,Printing,我正在使用下面的代码打开一个.txt文件,并将信息解析到Excel工作表中 我想添加一个功能,可以在程序的其他部分运行之前打印txt文件 Sub fxfeed() Dim myFile As String, text As String, textline As String, FX As Long, _ nrow As Integer, i As Integer, data As String data = Format(Range("f4"), "yyyymmdd") myFile

我正在使用下面的代码打开一个.txt文件,并将信息解析到Excel工作表中

我想添加一个功能,可以在程序的其他部分运行之前打印txt文件

Sub fxfeed()
Dim myFile As String, text As String, textline As String, FX As Long, _
  nrow As Integer, i As Integer, data As String

data = Format(Range("f4"), "yyyymmdd")

myFile = "Z:\ARCHIVES\FX." & data

Open myFile For Input As #1
Do Until EOF(1)
    Line Input #1, textline
    text = text & textline
Loop

Close #1

nrow = Cells(Rows.Count, "P").End(xlUp).Row

For i = 6 To nrow
    FX = InStr(text, Range("p" & i))
    Range("o" & i).Value = Mid(text, FX + 20, 5)
Next

End Sub

VBA无法直接访问Windows默认打印机,因此您必须在常规执行环境之外工作才能实现这一点。(请注意,这将打印到默认的Windows打印机,该打印机是为您的安装而定义的。)


()

这是一个单行程序,它使用
记事本
打印到默认打印机。请注意,如果文件名的路径中有空格,则需要将其括在引号中

Shell ("notepad.exe /p " & yourfilename)

您的意思是“在纸上打印副本”还是“打印到调试/即时控制台/窗口”?在第二种情况下,只需使用
debug.print text
在纸上打印一份副本即可
Shell ("notepad.exe /p " & yourfilename)