繁体   English   中英

如何通过excel宏打开带有通配符选项的.PDF文件

How to open a .PDF file with wild card option via excel macro

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

由于我对 excel 宏非常陌生,因此我正在尝试开发一个能够打开 PDF 文件的代码。但是我的系统中有一些 PDF 文件是由另一个系统生成的,因此这些文件名每天都在变化,有些数字也包括在内。

例如,“处理报告 151120183569844”就像这样。这些数字每天都在变化。我尝试添加 WILDCARD 选项,但它不起作用。如何仅使用文件名的一部分打开此 PDF?

     Sub Open_PDF()
    Dim pdfPath As String
    pdfPath ="D:\Reports\Process Report*" & ".pdf" 'I used wildcard instead "Process Report 151120183569844"'
Call OpenAnyFile(pdfPath)
End Sub

Function openAnyFile(strPath As String)
Set objShell = CreateObject("Shell.Application")
objShell.Open(strPath)
End Function
2 个回复

正如在另一个答案中指出的那样,带有通配符的Dir函数应该可以解决问题。

这是使用原始openAnyFile函数的示例。

Sub Open_PDF()
    Dim filePath As String, fileName As String

    filePath = "D:\Reports\"
    fileName = Dir(filePath & "Process Report*.pdf")

    If fileName <> "" Then
        openAnyFile filePath & fileName
    End If
End Sub

Function openAnyFile(strPath As String)
    Dim objShell As Object
    Set objShell = CreateObject("Shell.Application")
    objShell.Open (strPath)
End Function

您不能使用通配符打开文件 - 这只是常识,如果有多个文件符合您的条件怎么办 - 您希望编程打开哪个? 您必须指定确切的文件名才能打开它。

如果目标目录中只有一个文件,则可以使用类似于以下代码的内容来打开它,而不管其名称是什么:

sFound = Dir(ActiveWorkbook.Path & "\Process Report*.xlsm") 

If sFound <> "" Then
    Workbooks.Open filename:= ActiveWorkbook.Path & "\" & sFound
End If
2 如何测试PDF是否已经打开-使用Excel宏

我们有一个生成发票的Excel电子表格。 现在,我们需要将电子表格转换为pdf,以便通过电子邮件发送给客户。 我编写了一个宏,“只需按一下按钮”就可以生成.pdf并将其显示(在Acrobat阅读器窗口中)。 但是,如果用户在Acrobat窗口仍处于打开状态时有意或无意中按下了按钮两 ...

3 带有日期的 Excel 通配符

我有一个不同日期时间的值表。 我正在尝试创建一个新列,对位于上午 6:00 到下午 6:00 的特定时间范围内的值进行排序。 物理日历日无关紧要,因此我尝试使用通配符,但对于应该为真的值,我不断提出 False 结果。 这就是我所拥有的。 ...

4 Excel文件打开宏

因此,我正在尝试创建一个宏,该宏将在打开文件时更新单元格。 我收到424错误,因此我尝试做一个更好的工作来定义我的代码/对象,但仍然没有成功。 我认为我确实缺少/忽略了一些很简单的东西,但是我无法弄清楚,这是我的第一个项目,因此我试图学习并获得更好的理解,然后仅搜索一部分将起作用的代码。 ...

5 使用FSO使用扩展通配符在记事本中打开txt文件

我想编写一个excel宏来打开记事本中的文本文件,使用通配符作为“* .txt”使用FSO对象。 我需要避免shell命令,因为它会在我的工作场所被阻止。 我尝试了下面的代码,但它有特定的文件名,也使用shell命令。 我需要一个宏来打开一个文本文件,其名称未知,但只有扩展名在特 ...

2019-03-30 08:13:25 1 60   excel/ vba
7 如何通过 SD 卡中的 Intent 打开 PDF

我正在尝试启动Intent以在我的应用程序的资产文件夹中打开 pdf。 我已经阅读了数十篇文章,但仍然卡住了。 显然我需要先将 pdf 复制到 SD 卡,然后启动Intent 。 它仍然不起作用。 我认为问题是Intent启动,所以我只是想打开一个文件“example.pdf”,我使用以下代码复制 ...

8 如何使用关联数组在codeigniter中设置通配符选项?

正如标题所说,我可以将'%'放在Codeigniter的类似查询中 用于关联数组 为了更清楚,我的模型具有处理大多数选择查询的功能,我发送一个数组参数来检索结果 这是我的通用功能,所以当作为参数发送或通过修改功能时,我如何使用通配符放置第三个参数,默认的'both'工作原 ...

9 Excel to PDF - 如何指定宏将保存 PDF 文件的位置

我正在运行这段代码,它基本上将我的 excel 表的最后一行保存为 PDF 文件,它将 PDF 文件保存到 excel 表和我的 word 模板所在的文件夹中(它们在同一文件夹中)。 如何将不同的位置设置为保存点? 我想将用户限制在特定位置,该位置不是 Excel 表和 word 模板所在的文件夹 ...

10 如何添加外卡?

嗨,我是新程序员asp.net和vb.net。 我想用外卡来搜索引擎。 我很疑惑把外卡(%)。 在此先感谢您的帮助,如果之前有人问过,我真的很抱歉。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM