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

使用VBA,如何从路径字符串中获取直接的父文件夹名称?

在VBA中,可以使用FileSystemObject对象来获取路径字符串中的父文件夹名称。以下是一个示例代码:

代码语言:vba
复制
Sub GetParentFolderName()
    Dim fso As Object
    Dim path As String
    Dim parentFolder As Object
    
    ' 创建FileSystemObject对象
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    ' 设置路径字符串
    path = "C:\Users\Username\Documents\Example\File.txt"
    
    ' 获取父文件夹对象
    Set parentFolder = fso.GetParentFolderName(path)
    
    ' 输出父文件夹名称
    MsgBox parentFolder.Name
    
    ' 释放对象
    Set parentFolder = Nothing
    Set fso = Nothing
End Sub

在上述代码中,首先创建了一个FileSystemObject对象,然后设置了路径字符串。接下来,使用GetParentFolderName方法获取了父文件夹对象,并通过parentFolder.Name获取了父文件夹名称。最后,释放了对象以释放内存。

这种方法可以用于从任意路径字符串中获取直接的父文件夹名称,无论路径字符串是绝对路径还是相对路径。

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

相关·内容

VBA: 通过Dir函数查找指定文件

1 Dir函数语法 2 应用示例 2.1 获取指定路径文件名称 2.2 判断指定路径文件夹是否存在(不存在则创建它) 2.3 获取指定路径文件夹内所有文件和子文件夹名称 2.4...获取指定路径文件夹所有文件名称 2.5 获取指定路径文件夹内所有子文件夹名称 2.6 获取指定路径文件夹内第一个txt文件名称 2.7 获取指定路径文件夹内所有txt文件名称 1...-> e # 4duck.txt # 5horse.txt 2.1 获取指定路径文件名称 当文件路径已知,可以通过Dir函数获取文件名称。...2.5 获取指定路径文件夹内所有子文件夹名称 借助GetAttr函数,我们可以判断通过Dir函数返回名称是属于文件还是文件夹。...如果直接使用GetAttr(PathName & FileName) = vbDirectory,容易把属性值22(16+4+2)或18(16+2)文件夹漏掉。

5.8K21

VBA: 获取单元格内超链接文件绝对路径

文章背景:在工作,有时为了内容跳转方便,会在单元格内设置超链接,通过Hyperlinks(1).Address,得到是超链接文件相对路径。...有时为了VBA代码编写方便,需要使用是链接文件绝对路径。下面通过编写VBA函数,获取单元格内超链接文件绝对路径。 1 绝对路径和相对路径 有两种方法指定一个文件路径。...绝对路径,总是文件夹开始。 相对路径,它相对于程序的当前工作目录。 对于点(.)和点点(..)文件夹,它们不是真正文件夹,而是可以在路径使用特殊名称。...单个句点(“点”)用作文件夹目录名称时,是“这个目录”缩写。两个句点(“点点”)意思是文件夹。 下图是一些文件和文件夹例子。...回到VBA,通过ThisWorkbook.Path,可以获取当前工作簿所在工作目录路径;通过Hyperlinks(1).Address,得到是基于ThisWorkbook.Path相对路径;通过ThisWorkbook.Path

3.1K40

文件操作——查找遍历

前面说过了文件读取、写入,那么在操作文件之前,一般我们需要找到操作文件路径VBA对象库,有一个FileSystem模块,里面有关于文件操作一些函数: ?...而程序设计角度来看,我们应该是希望在文件不存在情况下,跳出一个提示框告诉我们文件不存在,而不是直接中断程序运行。...VBA.Dir(FileName)在FileName这个文件不存在情况下,会返回空字符串,文件存在情况下会返回文件名称,所以我们可以根据它返回值来判断文件是否存在。...2、文件遍历 如果我们想要获取1个文件夹下所有的文件名称,也可以使用Dir来获取: Sub TestDir() FTestDir ThisWorkbook.Path End Sub Function...End Function 这个功能在汇总多个Excel文件数据时候是经常会使用使用过程要注意是Dir返回是文件名称,不含前面的路径,所以在使用Workbooks.Open时候,一定要记得带上路径

94520

Excel: 提取路径文件名

文章背景:在日常工作,有时需要从绝对路径中提取文件名。比如,已知某个文件存储路径,想要获取最后文件名称。下面介绍两种方法。...思路分析:针对文件路径,先用99个空格替换掉路径斜杆\;再从字符串右侧起,获取99个字符(新字符串),此时,新字符串内既有文件名,也有空格;最后,通过trim函数,移除首尾空格,从而得到所需要文件名...思路分析:针对文件路径使用Split函数,基于斜杆/,将路径分割成各个小块,保存在一个数组内;然后通过Ubound函数,获取数组最后一个索引号,从而将文件名提取出来。...参考资料: [1] 如何用excel提取路径中最后一个文件夹名字(https://jingyan.baidu.com/article/a948d651aae9544a2ccd2e74.html) [2...] 字符串-如何路径提取文件名(https://www.itranslater.com/qa/details/2582413335018865664) [3] REPT 函数(https://support.microsoft.com

2.3K20

Excel公式技巧49: 提取文件名

学习Excel技术,关注微信公众号: excelperfect 在工作表中有一系列完整文件路径清单,现在要提取其中文件名称,由于文件夹可能还有子文件夹,因此文件路径长短不同,而我们必须找出其最后一个...然而,Excel没有像VBA一样InstrRev函数,可以实现从右向左查找。这样,我们可以自定义一个这样函数,在Excel工作表中使用,我们也可以使用一些函数技巧来实现这样目的。...在《Excel公式技巧47:MID函数妙用》,我们发现可以使用任意顺序数组来提取字符串中指定位置字符;在《Excel公式技巧48:生成大到小连续整数》,介绍了如何倒序生成连续整数技巧。...运用这些知识后,我们可以很方便地右向左找到最后一个“\”位置。 如下图1所示工作表,文件路径长短不同,我们要提取其文件名称。 ? 图1 首先,找到最后一个“\”位置。...然后,使用字符串总长度减去上面的结果,可以得到左向右数最后一个“\”位置: =LEN(A1)-B1+1 结果为: 8 再使用MID函数获取文件/文件夹名: =MID(A1,C1+1,LEN(A1))

1.7K20

VBA: 利用FileSystemObject对象来处理文件

文章背景: 在VBA,通过Dir函数,可以判断指定路径文件是否存在等。此外,借助FileSystemObject对象,我们同样可以操作文件和文件夹。...1 创建FSO对象 1.1 直接创建法 1.2 引用法 2 借助FSO可以获取对象 3 FSO对象属性 4 应用示例 4.1 检查文件或文件夹是否存在 4.2 基于给定路径,创建新文件夹...4.3 获取文件夹内所有文件名称 4.4 获取文件夹内所有子文件夹名称 4.5 获取文件夹及其子文件夹内所有文件名称 4.6 拷贝文件 4.7 拷贝文件夹 1 创建FSO对象 1.1...使用直接创建法缺点是,在VBA代码,在使用FSO对象时,无法使用自动补全代码功能。...4.5 获取文件夹及其子文件夹内所有文件名称 通过递归法,使用FSO对象获取文件夹及其子文件夹内所有文件名称

1.3K20

Excel、Python对比,利用二者生成文件链接目录!

今天给大家讲解一个简单又真实案例,如何使用Excel、Python动态获取指定文件夹下文件名和文件路径,生成一个文件目录,点击相应文件名即可跳转到相应文件。...新建一个Excel工作簿,点击【数据】选项卡,再依次点击【获取数据】→【来自文件】→【文件夹】 ? 选择文件所在文件夹: ? 点击【转换数据】: ?...成功获取了所有文件文件名称和文件路径: ? 而做成一个点击相应文件名即可跳转到相应文件文件目录,还需要添加一个超链接,而超链接刚才已经获取到了,就是文件路径。...二、Python python实现链接目录,关键点也是用了ExcelHYPERLINK函数,其实思路就是用os获取到文件路径和文件名称,最后再以字符串方式写入excel,下面我们来具体操作一下。...import pandas as pd import os 用os.walk获取文件夹文件名称filenames和文件路径parent,当文件夹下还有目录的话,就会生成dirnames: # #获取当前路径

1.5K30

问与答115:如何使用VBAExcel复制图片并将其粘贴到PowerPoint指定幻灯片?

Q:我在Excel工作表包含有1张图片,名称是默认“图片 1”,我怎样编写VBA代码来打开一个已存在PPT文件,先删除该PPT中所有的图片,然后将“图片 1”复制并粘贴到该PPT第2张幻灯片中...A:首先,添加对“MicrosoftPowerPoint XX.0 Object Library”库引用,如下图1所示。 ?...ObjPPT.Visible = msoCTrue Set oPresentation =ObjPPT.Presentations.Open(opath, msoCTrue) '删除PPT所有图片...oSlide = Nothing Set oPresentation = Nothing End Sub 小结: Excel与其他Office应用程序(例如Word、PowerPoint)相交互是常见应用...注:今天这个问题来源于mrexcel.com论坛,略有修改,供有兴趣朋友学习参考。

4.1K40

FSO对象GetFile与GetFileName方法

FSO对象GetFile与GetFileName方法 【知识点】 GetFile 方法 返回与指定路径文件对应**file** 对象。 语法 对象。...注解 以下代码阐释如何获得File 对象以及如何查看其属性之一 Sub t_GetFile() Dim t t= ThisWorkbook.Path & "\" & ThisWorkbook.Name..." & f.DateLastAccessed& vbCrLf s= s & "3.上次修改于◇ " &f.DateLastModified & vbCrLf s= s & "4.文件或文件夹所在驱动器驱动器号...◇" &f.Drive & vbCrLf s= s & "5.文件名称◇" & f.Name &vbCrLf s= s & "6.文件文件夹folder对象◇" & f.ParentFolder....文件类型◇" & f.Type MsgBox s, 0, "File Access Info" End Sub 效果图 【知识点】 GetFileName 方法 返回指定路径不属于驱动器规格最后一个组件

74920

Workbook工作簿对象方法(二)

四、工作簿对象save方法 保存excel工作簿,在VBA主要是通过workbook工作簿对象save方法和saveas方法 代码thisworkbook.save 表示保存代码所在工作簿。...代码模式如下: thisworkbook.saveas filename:="文件保存路径" 其中filename参数指文件保存路径及文件名,如果省略路径,默认将文件保存在当前文件夹。...2、参数FileName指定要保存工作簿名称。可以提供保存路径,否则将保存到当前文件夹。 3、参数FileFormat指定工作簿保存格式。...3、参数Filename指定保存修改工作簿名称。 示例保存关闭工作簿 下面以保存并关闭vba.xlsm文件为例。...Workbooks("vba.xlsm").Close savechanges:=True通过简单代码,可以实现直接保存之后关闭excel文件。

4.4K20

使用VBA加载宏小心 Workbook.FullName 属性

Workbook.FullName在VBA是一个非常常用属性,返回是工作簿路径,首先查看一下帮助文件: 返回对象名称(以字符串表示),包括其磁盘路径。String 型,只读。...可以看到路径故意修改字符被保存在了FullName,但是文件名被还原回了磁盘上正确名称。...当然,实际写代码过程,一般不会这样故意去修改文件路径。...但是,存在这样一种场景: 对经常使用VBA的人来说,会写一些常用功能制作为加载宏使用使用过加载宏应该知道,一旦加载宏被移动了位置,会出现如下提示: ?...我个人有这样一个使用习惯,由于需要使用VBA功能较多,我将一些功能分类编写了不同宏文件,这些文件存放在同一个文件夹里,只设置加载一个加载宏。

1.4K40

【项目实战】自监控-01-开启篇

很多都是查百度,然后学习,然后使用,哈哈 Plus:目前我还是菜鸟,因为之前学习VBA,所以很多思路其实感觉还是向那边靠近,哈哈 Part 3:开篇小菜:文件操作,涉及模块os 获取当前文件夹路径,...转换工作路径 获取文件地址,获取文件名称 文件判断,文件夹判断,是否存在判断 Part 4:文件夹路径 在有些代码要求转换当前工作路径到合适位置才可以工作 例如当前Anaconda版本下默认安装...pandasread_csv功能,要求需先将路径转换到拟读取csv文件所在文件夹 getcwd可以记忆为get-current-directory缩写 chdir可以记忆为change-directory...Part 5:文件地址/文件名获取 已知文件绝对地址,如何获取它对应文件夹地址和文件名称 关键字:dirname,basename import ospath2 = "F:\\【10】微信\\Python...总结:总体来说介绍一些os.path下一些实用功能,很多以前VBA要自己写,Python都是有现成函数,棒!去做正真需要思考事情! ----

48510

VBA代码库09:增强CELL函数和INFO函数

excelperfect 本文介绍自定义函数来源于wellsr.com,以ExcelCELL函数和INFO函数为样板,可直接返回工作表或工作簿名称或工作簿路径,以及与Excel及其操作环境有关各种信息...例如,如果指定参数值为directory,即输入公式: =INFO("DIRECTORY") 则返回当前目录或文件夹路径,对于我示例工作簿来说将返回: D:\01....Excel研究\06.2 VBA代码库\09\[VBACodeLibrary09.xlsm]Sheet1 下面的公式来拆分出工作簿路径、工作簿名称和工作表名称。...CELL函数和INFO函数功能,不需要像上面那样使用长而复杂公式来获取相关信息。...或 "help" 返回This文本列表 ' This = 上面没有列出任意字符串返回Environ(This) ' 如果Target为空(默认), 则Target被设置为引用此函数单元格(如果在VBA

4.5K10

如何将重复工作实现自动化?

当然了以我自己和朋友经历来看,VBA是我们职场“硬核加分之技能,撩妹装逼之法宝,升职加薪之利器”。 3.如何使用VBA? (1)VBA怎么开启?...案例2:批量修改所有文件名 其实工作中有很多类似这样重复工作,例如批量更改文件名称、批量汇总多个工作表、批量汇总多个工作簿、自动比对数据、批量生成多个Excel文件等等,都可以用VBA自动化解决。...下面这个案例是批量更改指定路径下所有文件名 上面这个批量「更改指定路径下所有文件名」程序,由两个程序组成:文件名提取和文件名更换,可以针对指定路径文件夹文件夹在哪里)下任何类型文件,更改为指定名称...这个程序,我们平常用途还是挺多,尤其是收集各单位Excel需求后。 大家拿去,可以直接使用,文件里有详细说明步骤。 4.有哪些注意事项?...这次我们知道了什么是VBA、有什么用、如何使用,下次我们聊聊如何写出案例VBA代码。

2.8K10

如何将重复工作实现自动化?

当然了以我自己和朋友经历来看,VBA是我们职场“硬核加分之技能,撩妹装逼之法宝,升职加薪之利器”。 3.如何使用VBA? (1)VBA怎么开启?...案例2:批量修改所有文件名 其实工作中有很多类似这样重复工作,例如批量更改文件名称、批量汇总多个工作表、批量汇总多个工作簿、自动比对数据、批量生成多个Excel文件等等,都可以用VBA自动化解决。...下面这个案例是批量更改指定路径下所有文件名 上面这个批量「更改指定路径下所有文件名」程序,由两个程序组成:文件名提取和文件名更换,可以针对指定路径文件夹文件夹在哪里)下任何类型文件,更改为指定名称...这个程序,我们平常用途还是挺多,尤其是收集各单位Excel需求后。 大家拿去,可以直接使用,文件里有详细说明步骤。 4.有哪些注意事项?...这次我们知道了什么是VBA、有什么用、如何使用,下次我们聊聊如何写出案例VBA代码.

21330

VBA调用外部对象02:FileSystemObject——其他函数

其他一些个人认为比较常用函数有: 1、判断文件是否存在 fso.FileExists 2、获取不包含路径文件名 fso.GetFileName这个功能在需要判断文件名称是否符合某个条件时候用还是比较多...3、获取文件后缀名 fso.GetExtensionName这个功能在判断文件类型时候非常方便 4、获取不包含路径、不包含后缀文件名 fso.GetBaseName这个和fso.GetFileName...差不多 5、获取文件夹和文件 fso.GetFolder、folder.Files这个在Excel VBA里一般就是用作查找遍历文件,在FileSystemObject介绍里已经提到过了。...其他还有很多功能,文件/文件夹删除、移动等。基本上我们手动对文件/文件夹能操作都有。...但这些操作其实在Excel VBA使用不多,而且不是一定要使用FileSystemObject对象,VBA里其实都有对应函数。使用FileSystemObject仅仅是方便。

1.6K20
领券