首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在excel中使用VBA从.PDF (文件)扩展文件属性

在Excel中使用VBA从.PDF文件扩展文件属性,可以通过以下步骤实现:

  1. 首先,确保已启用Excel的开发工具。在Excel中,点击菜单栏中的“文件”,然后选择“选项”。在弹出的对话框中,选择“自定义功能区”,勾选“开发工具”,点击“确定”。
  2. 在Excel中,按下Alt+F11键,打开Visual Basic for Applications(VBA)编辑器。
  3. 在VBA编辑器中,点击菜单栏中的“插入”,然后选择“模块”。这将创建一个新的模块,用于编写VBA代码。
  4. 在新创建的模块中,编写以下VBA代码:
代码语言:txt
复制
Sub GetPDFProperties()
    Dim filePath As String
    Dim objShell As Object
    Dim objFolder As Object
    Dim objFile As Object
    Dim objShellFolder As Object
    
    '选择PDF文件
    With Application.FileDialog(msoFileDialogFilePicker)
        .Title = "选择PDF文件"
        .Filters.Add "PDF文件", "*.pdf"
        .AllowMultiSelect = False
        If .Show = -1 Then
            filePath = .SelectedItems(1)
        Else
            Exit Sub
        End If
    End With
    
    '创建Shell对象
    Set objShell = CreateObject("Shell.Application")
    
    '获取PDF文件的文件夹路径
    Set objFolder = objShell.Namespace(Left(filePath, InStrRev(filePath, "\") - 1))
    
    '获取PDF文件的Shell文件夹对象
    Set objShellFolder = objFolder.ParseName(Right(filePath, Len(filePath) - InStrRev(filePath, "\")))
    
    '输出PDF文件的属性
    For i = 0 To 300
        Debug.Print objFolder.GetDetailsOf(objShellFolder, i)
        Debug.Print objFolder.GetDetailsOf(objShellFolder, i + 1)
    Next i
    
    '释放对象
    Set objShellFolder = Nothing
    Set objFolder = Nothing
    Set objShell = Nothing
End Sub
  1. 在VBA编辑器中,按下F5键运行代码。运行后,将弹出一个文件选择对话框,请选择要获取属性的PDF文件。
  2. 运行完成后,在VBA编辑器的“立即窗口”中,将显示PDF文件的各种属性信息。

这段VBA代码使用Shell对象和文件夹对象来获取PDF文件的属性信息。通过循环遍历属性,可以获取到文件的各种属性,如文件名、创建日期、修改日期、文件大小等。

请注意,这段代码仅适用于Windows操作系统,并且需要安装Adobe Acrobat Reader或其他PDF阅读器。另外,由于VBA的局限性,可能无法获取到所有属性信息。

推荐的腾讯云相关产品:腾讯云对象存储(COS),用于存储和管理文件、图片、视频等各种类型的数据。产品介绍链接地址:https://cloud.tencent.com/product/cos

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 使用 iTextSharp VS ComPDFKit C# PDF 中提取文本

    PDF 文档是主要数据源之一,包含大量有价值的信息。对于开发人员来说, PDF 中提取文本是有效数据提取的第一步。你们的一些人可能会担心如何使用 C# PDF 中提取文本。...本指南中,我们将深入研究如何使用 iTextSharp C# 中进行 PDF 文本提取,涵盖安装和项目设置到提供代码示例的所有内容。...如何使用 ComPDFKit C# PDF 中提取文本?下载用于文本提取的 ComPDFKit C# 库首先,您需要 Nuget 中下载并安装 ComPDFKit C# 库。...PDF 中提取文本要使用 ComPDFKit C# PDF 文档中提取文本,只需按照这些代码示例操作即可。...按照以下示例使用 iTextSharp C# 库 PDF 文件中提取文本。

    11710

    测试驱动之excel文件自动化使用(十二)

    一般性的,数据存储excel,也是一种选择,但是必须安装对应的库,要不python是无法操作excel文件的,安装的第三方库为为xlrd,安装命令为: pipinstall xlrd 安装过程见截图...Excel文件的后缀格式为.xlsx,实例excel的数据为: ? 所以,我们需要读取excel的数据,首先需要import xlrd,然后才可以读取excel文件的数据。...excel文件,cell是单元格,sheet是工作表,一个工作表由N个单元格来组成。...文件自动化的引用,测试点分别为: 1、输入百度账号,未输入百度密码,点击登陆,验证返回的错误信息; 2、输入错误的百度账号密码,点击登录,验证返回的错误信息; 我们读excel文件的函数,登录百度的函数写在...,存储excel,然后利用xlrd模块来读取excel的数据,达到测试代码与数据的分离。

    1.9K30

    基础扩展 | 11. 使用ADO和SQLExcel工作表执行查询操作

    学习Excel技术,关注微信公众号: excelperfect 我们可以将存储数据的工作表当作数据库,使用ADO技术,结合SQL查询语句,可以工作表获取满足指定条件的数据。...VBE,单击菜单“工具——引用”,“引用”对话框,找到并选取“Microsoft ActiveX Data Objects 6.1 Library”,如下图1所示。 ?...12.0;HDR=Yes;"";" '字符串存储查询语句 Dim query As String query = "Select * from [" &wksData.Name...同一代码,只需要连接数据库一次,接着可以执行多个查询操作,无需每次查询前都进行连接。...SQL查询语句为: query = "Select * from [" & wksData.Name _ & "$] Where 物品='苹果' " 工作表wksData查询物品为“苹果”的记录

    4.6K20

    提取并列出文件夹中所有文件文件

    标签:Power Query 要将文件夹中所有文件文件名提取并输入到Excel工作表,用什么方法呢?VBA,还是…… 本文使用Power Query来轻松实现。...Excel,单击功能区“数据”选项卡“获取和转换数据”组的“获取数据——来自文件——文件夹”,如下图1所示。 图1 导航到要获取文件名的文件夹,如下图2所示。...图2 单击“打开”,在出现的对话框单击“加载”按钮下拉菜单的“加载”,如下图3所示。 图3 找到“Attributes”列并单击其右侧的扩展图标,如下图4所示。...图4 从中可以选择要获取并显示的文件属性,如下图5所示。 图5 然后,单击Power Query编程器的“关闭并上载”按钮,如下图6所示。...图6 此时,将在工作表按选定属性列出指定文件夹中所有文件名,如下图7所示。 图7

    32630

    VBA: Excel文件批量转化为pdf (2)

    上篇文章(见文末的延伸阅读)通过VBA代码,采用ExportAsFixedFormat函数将excel文件转化为pdf文件,对于部分excel文件的转化效果不太好,有些谱图显示不完整,如下图所示。...经过几次尝试后发现,如果是采用另存为的方式导出为pdf文件,部分谱图会出现乱码,而通过虚拟打印机(Adobe PDF或Microsoft Print to PDF)的方式将excel文件打印输出为pdf...因此,下面以批量转化Excel文件为例,采用VBA编程,借助PrintOut函数,进行任务的实现。...批量转化文件的按钮添加如下的宏代码: Option Explicit Sub ConvertFiles() '批量转化Excel文件pdf Dim filefolder As...) 延伸阅读: [1] VBA: Excel文件批量转化为pdf

    2.5K10

    Python操控Excel使用Python文件添加其他工作簿的数据

    标签:Python与Excel,合并工作簿 本文介绍使用Python向Excel文件添加新数据的最佳方法。该方法可以保存主数据格式和文件的所有内容。...终端使用下面的命令安装: pip install xlwings 示例文件 本文用到了两个示例Excel工作簿: 主文件.xlsx 新数据.xlsx 可以到知识星球App完美Excel社群下载。...使用文件 可以使用xlwings打开Excel文件。执行下面的代码(如下图1),将打开Excel文件。 图1 主文件内容如下图2所示。...这里,要将新数据放置紧邻工作表最后一行的下一行,例如上图2的第5行。那么,我们Excel是如何找到最后一个数据行的呢?...图4 打开并读取新数据文件 打开新数据文件,从中获取所有非空的行和列的数据。使用.expand()方法扩展单元格区域选择。注意,单元格A2开始扩展,因为第1列为标题行。

    7.9K20

    项目文件 MSBuild NuGet 包编写扩展编译的时候,正确使用 props 文件和 targets 文件

    .NET 扩展编译用的文件有 .props 文件和 .targets 文件。不给我选择还好,给了我选择之后我应该使用哪个文件来编写扩展编译的代码呢?....props 和 .targets 文件的时候,我们相当于项目文件 csproj 的两个地方添加了 Import 这些文件的代码。...里面 编译目标是扩展编译的,通常都是使用属性 也会有一些产生属性的,但那都是需要在编译期间产生的属性,其他依赖需要使用 DependsOn 等属性来获取 例如下面的属性适合写到 .props 里面。...-- 当生成 WPF 临时项目时,不会自动 Import NuGet 的 props 和 targets 文件,这使得临时项目中你现在看到的整个文件都不会参与编译。...然而,我们可以通过欺骗的方式主项目中通过 _GeneratedCodeFiles 集合将需要编译的文件传递到临时项目中以间接参与编译。

    25120

    VBA解压缩ZIP文件04——解析ZIP文件结构

    使用压缩软件打开一个ZIP文件的时候,可以看到这个ZIP文件里面的文件信息,如下是使用7z压缩软件打开一个xlsm Excel文件: ?...'注释内容 End Type 解析ZIP文件结构一般都是EndOfCentralDirectory入手,因为它是文件的最后,虽然位置因为Comment的长度而不确定,但是后面往前找0x06054b50...Central Directory的总数量)以及OffsetOfCD(第一条Central directory的起始位置zip文件的位置)。...As Long '外部文件属性 LocalFileHeaderOffset As Long '对应的Local File Header文件的起始位置。...As String '扩展区 End Type 使用每一个CentralDirectoryHeader结构信息里记录的对应LocalFile Header文件的起始位置进行解析:

    3.2K20

    VBA使用API_01:读取文件

    1、读取文件Excel VBA里读取文件分3步: Open语句打开文件 Get语句读取数据 Close关闭打开的文件 用API读取文件其实也是一样的,只是我们要自己去声明这3个语句: Public...2、参数传递 值参数 很多参数API只是使用,所以VBA里传递是按值传递还是按照地址传递其实都是一样的,这个和VBA里的Function是一样的。...另外有很多复杂的参数,一般都不大常用,这种VBA里我们直接声明为Byval后传递0就可以,像CreateFile里的dwFlagsAndAttributes和hTemplateFile我们都可以设置为...Const CREATE_ALWAYS As Long = &H2 ' 总是创建(如果对象存在就覆盖它,清除当前属性,把文件属性和dwFlagsAndAttributes指定的标志相结合)。...Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long 'lpBuffer 用来接收文件读出的数据的缓冲区指针

    1.6K10

    如在 Java 中分割 Excel 工作表

    前言 Excel创建的大多数商业报告不是单页的文档,而是包含了多个上下文相关的信息,这些信息被存储多个工作表。例如我们的一些地区销售报告、按部门分类的员工记录、每家店铺的库存清单等。...你需要手动进行此操作,或者使用VBA。虽然手动方法效率低且容易出错,但VBA方法会使文件变得容易受攻击。...",SaveFileFormat.Xlsx);// Excel文件 tempWorkbook.save(worksheet.getName()+".pdf",SaveFileFormat.Pdf);//...此外,它还提供了Move、MoveAfter和MoveBefore方法,通过将工作表Excel文件移动到目标Excel文件来拆分工作表。...扩展链接: 轻松构建低代码工作流程:简化繁琐任务的利器 数据驱动创新:以Java编程方式定制数据透视表 Java批量操作Excel文件实践

    15410

    Excel里这段读取pdf文件内容的代码,你一定要收藏好了!

    前段时间,我发了一篇关于《pdf里的表格数据也能轻松汇总了!》的文章,其中主要介绍了用Power BI直接汇总pdf文件的数据的方法。...可惜的是,Excel里,没有直接接入pdf数据源的选项,那该怎么办?...这时,你当然可以先用power BI将数据汇总后,再导出Excel,但在很多时候,pdf获取数据,往往是一件需要不断重复的工作,所以,我们考虑自动化,那该怎么办? ——当然是VBA!...当然,我不会去写这个代码,因为已经有大神(本代码是ExcelHome搜索到的,遗憾的是最早的出处没有找到)为我们准备好了!...本身并不能真的解析pdf文件,还需要通过pdf的专业库(加载项)来完成,因此,需要在VBA的工具-引用勾选相应的选项(因不同电脑安装的pdf文件编辑或阅读工具不一样,相应的库及版本可能有所不同):

    5.5K30

    VBA到Python,Excel工作效率如何提高?

    那么为什么要使用Python呢?原因有很多: 1、你可以Excel创建一个自定义函数,而不需要学习VBA。 2、使用Python可以显著加快数据操作的速度。...为了我们每次都能正确设置,xlwings提供了创建Excel电子表格的功能: xlwings quickstart ProjectName 上面的命令将使用 Excel 工作表和 Python 文件预导航目录创建一个新文件夹...通过这些,我们就可以开始使用xlwings了。 6 VBA到Python 我们开始编码之前,让我们首先确保同一个页面上。打开Excel VBA 编辑器,点击 Alt + F11。...3、Python脚本,调用函数main()。 让我们看几个例子,看看如何使用它。 例1:Excel外部操作,并返回输出。...本例,我们将看到如何在Excel之外执行操作,然后电子表格返回结果。 我们将从CSV文件获取数据,对这些数据进行修改,然后将输出传递到Excel: 首先,VBA代码。

    11.3K20

    一文贯通python文件读取

    键值对相关的配置文件 应用中经常有.ini文件来用于配置信息,python 可以利用ConfigParser来处理。...cf.read("myweb_config.ini") print cf.get("portal", "url") 读取配置文件的一个常见使用情形是获取数据库的访问信息,以便数据库获取数据。...python,用BS4 来对html 进行操作是非常方便的,同样也可以对xml 文件进行类似的操作,尤其是网络读取html,示例代码如下: import requests from bs4 import...Python 读取并处理视频文件,一般可以使用MoviePy库(https://github.com/Zulko/moviepy)。...xlrd 是有局限的,无法读取excel的一些对象,如: 图表,图片,宏以及其他的嵌入对象 VBA,超链接,数据验证 公式(结果除外),条件的格式化,注释等等 好在,我们关注的是excel的数据内容

    1.7K20

    Python自动化Word,使用Python-docx和pywin32

    假设有一个存储Excel文件(或数据库)的客户信息列表,处理过程如下所示: 1.为每个客户端自动生成MS Word发票 2.将Word文档转换为PDF格式 3.使用MS Outlook App向客户发送带有自定义问候语的...使用pandasExcel文件读取数据,但如果数据在其他地方,或者希望以其他方式提取客户数据,则pandas库不是必需的。...下面的代码创建句子“完美Excel是专注数据分析的微信公众号”并设置格式。 创建发票 Excel的示例数据如下图所示。 注,上图数据只是示例,使用我自己的测试电子邮件地址。...要将Word(.docx)转换成PDF格式,实际上是使用win32com打开文档,然后将其另存为PDF格式。很简单! 下面的代码接受输入文件路径src,然后将pdf转换并保存到文件路径dst。...可以在下面的链接检查可以保存的其他文件类型选项的列表:https://docs.microsoft.com/en-us/office/vba/api/word.wdsaveformat。

    3.7K50
    领券