大家好,我对编码很陌生,但是通过自学,我已经学习或能够通过逆向工程最轻松地弄清楚事情,我已经取得了一些成功,如果这看起来过于简单,我深表歉意,但是我一直找不到任何要转换的相关示例。
我正在尝试在VBA中编写一个代码,该代码根据从当前日期或输入框派生的数组打开并打印一组文件
文件名都是特定于日期的ddmmyyarea1
即180818area1
我需要做的是
获取今天的日期,即18/08/17 +1,将日期设为18/08/18
打开名称为180818area1然后是180818area2的包含该日期的文件,依此类推
我之所以没有要求完整的脚本,是因为我更喜欢通过将基本构建模块放在一起来学习,但是我在上面的这一方面苦苦挣扎
预先感谢
下面是我对代码可能看起来的“估计”,我再次对此很陌生:
Sub BatchPrintWordDocuments() 将objWordApplication变暗为新Word.Application 昏暗的strFile作为字符串 昏暗的strFolder作为字符串
InputBox("Enter the date to print ddmmyy")
strFolder = file path
strFile = Dir(strFolder & InputBox & Area* vbNormal)
While strFile <> ""
With objWordApplication
.Documents.Open (strFolder & strFile)
End With
strFile = Dir()
Wend
Set objWordApplication = Nothing
结束子
答案 0 :(得分:0)
您可以尝试一下,您非常亲密。放入您自己的FilePath
Sub BatchPrintWordDocuments()
Dim objWordApplication As New Word.Application
Dim strFile As String
Dim strFolder As String
Dim strDate As String '<<< add this and use it
strDate = InputBox("Enter the date to print ddmmyy")
strFolder = "C:\donPablo\StackOverFlow\" '<<< file path, with trailing slash
strFile = Dir(strFolder & strDate & "Area*.XLS*", vbNormal)
While strFile <> ""
With objWordApplication
.Documents.Open (strFolder & strFile)
'<<< do your stuff here
.Documents.Close (False) '<<< close it, and don't save changes
End With
strFile = Dir()
Wend
Set objWordApplication = Nothing
End Sub