【发布时间】:2017-07-16 02:14:25
【问题描述】:
我正在尝试从文本文件中写入所有内容,但它只写入第一个字符。
这是我的代码:
Sub Main
Dim TextFile As Integer
Dim FilePath As String
Dim FileContent As String
'File Path of Text File
FilePath = "C:\Users\Username\Desktop\Clipboard.txt"
'Determine the next file number available for use by the FileOpen function
TextFile = FreeFile
'Open the text file
Open FilePath For Input As TextFile
'Store file content inside a variable
FileContent = Input(LOF(TextFile), TextFile)
'Report Out Text File Contents
SendKeys FileContent
'Close Text File
Close TextFile
End Sub
我也试过这个,但同样只写第一个字符:
Sub Main
Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")
Dim objTextStream
Const strFileName = "C:\Users\Username\Desktop\Clipboard.txt"
Const fsoForReading = 1
If objFSO.FileExists("C:\Users\Username\Desktop\Clipboard.txt") Then
'The file exists, so open it and output its contents
Set objTextStream = objFSO.OpenTextFile(strFileName, fsoForReading)
SendKeys objTextStream.ReadAll
objTextStream.close
Set objTextStream = Nothing
Else
'The file did not exist
SendKeys "was not found."
End If
'Clean up
Set objFSO = Nothing
End Sub
请帮忙。谢谢!
【问题讨论】:
-
SendKeys 在哪里发送数据?
-
测试了两个版本,它们都对我有用。
-
jstola,我尝试将密钥发送到 Word 或 Internet Explorer(对我来说都不适用)。我的最终目标是将其发送到 Internet Explorer。
-
YowE3k,也许我没有安装正确的参考库?
-
当 IE 是活动应用程序时,您如何调用此 VBA 宏? (不需要加载特定的参考库来运行它——当我在 Excel 中运行它时,我只加载了标准 VBA、Excel 对象、OLE 自动化和 Office 对象库。)