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

在VBA Excel 2003中获取"我的文档"文件夹的语言无关方式

在VBA Excel 2003中获取"我的文档"文件夹的语言无关方式是使用Windows API函数SHGetSpecialFolderPath来获取文件夹路径。以下是一个示例代码:

代码语言:vb
复制
Option Explicit

#If VBA7 Then
    Private Declare PtrSafe Function SHGetSpecialFolderPath Lib "shell32.dll" Alias "SHGetSpecialFolderPathA" (ByVal hwndOwner As LongPtr, ByVal lpszPath As String, ByVal nFolder As Long, ByVal fCreate As Boolean) As Boolean
#Else
    Private Declare Function SHGetSpecialFolderPath Lib "shell32.dll" Alias "SHGetSpecialFolderPathA" (ByVal hwndOwner As Long, ByVal lpszPath As String, ByVal nFolder As Long, ByVal fCreate As Boolean) As Boolean
#End If

Const CSIDL_MYDOCUMENTS = &H5

Function GetMyDocumentsPath() As String
    Dim strPath As String
    Dim fResult As Boolean
    
    strPath = Space$(260)
    fResult = SHGetSpecialFolderPath(0, strPath, CSIDL_MYDOCUMENTS, True)
    
    If fResult Then
        GetMyDocumentsPath = Left$(strPath, InStr(strPath, Chr$(0)) - 1)
    Else
        GetMyDocumentsPath = ""
    End If
End Function

这个代码示例定义了一个名为GetMyDocumentsPath的函数,该函数使用Windows API函数SHGetSpecialFolderPath来获取"我的文档"文件夹的路径。函数返回一个字符串,其中包含文件夹的路径。

请注意,这个代码示例仅适用于VBA Excel 2003。在更高版本的Excel中,您可能需要使用不同的方法来获取"我的文档"文件夹的路径。

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

相关·内容

VBA解析复合文档00

最可能接触到就是一个名称叫做Thumbs.db文件,只要操作电脑,打开了图片,系统就会在图片同一个文件夹下生成这样一个文件,但默认是隐藏,所以一般也看不到!...2007版本以上Office文件,如果编写了VBA代码,文件压缩包里,会有个vbaProject.bin文件,也是使用复合文档结构来存储。...2、解析复合文档有什么用 01 深入了解Excel文件结构 解析复合文档,能够更加深入理解Excel文件结构,虽然2007版本以上Excel已经 换成了xml标记语言存储,但是VBA代码相关vbaProject.bin...02 直接读取Excel VBA数据 如果想不打开Excel文件来读取Excel数据,一般使用ADO技术就能做到。...但是如果想要直接获取VBA代码,就只能通过解析文件结构获取,通过解析复合文档,解析出模块数据流,再进一步进行解析就可以。

1.2K10

代替VBA!用Python轻松实现Excel编程(文末赠书)

大家好,是小F~ 面向Excel数据处理自动化脚本编程,目前主要有VBA和Python两种语言可供选择。 从上世纪90年代到目前,VBA一直是Excel脚本编程主要工具。...VBA语言具有简单易学、功能强大特点,长达几十年时间里为提高Excel工作效率作出了贡献,也积累了海量代码和学习资料。在这段时间里,Basic语言也一直是国内中学到大学教学首选计算机语言。...国内,Python也逐步代替原来Basic语言,成为小学、中学和大学学生入门学习计算机编程首选语言。所以,当前使用Python进行Excel脚本编程以提高工作效率朋友越来越多。...所以,Python用户了解Excel对象模型过程中需要参阅大量VBA资料,即他们有快速掌握VBA语言需求和获取xlwings基础性文档和使用手册需求。...xlwings API方式下,sht对象后面引用api,后面就可以使用VBA引用方式,Range属性和Select方法首字母都是大写。

5.8K30
  • VBA还能活多久?——完美Excel第169周小结

    Excel 5中推出第一个版本起,VBA存在将近30年。无论你是否学习过编程,这都是一种非常容易学习编程语言,并且能够快速应用到具体工作场景中。 为什么学VBA?...此外,VBA存在几十年,已经积累了无数VBA文档资料,还有大量论坛社区帮助。 2.使用Excel时,借助于VBA,几乎可以做你想做任何事情。...如果VBAExcel带来问题或者Excel版本更新后以前使用VBA开发应用遇到了很多问题,想Microsoft一定会对VBA进行更新。 取代VBA会是谁?...JavaScript是Microsoft跨所有设备(PC、浏览器、手机等)上统一Office使用时一直投入一种语言,Microsoft也一直推动使用JavaScript来自动化Excel。...技术 连接满足条件多个值并显示一个单元格中 #VBA 复制文件到指定文件夹并重命名 仅显示组成SUMIFS函数结果数据 同步多工作表指定区域数据 快速给所选单元格添加前缀

    4.6K40

    《Python for Excel》读书笔记连载2:为什么为Excel选择Python?(续)

    在此特别说明,这里发布文章仅仅为学习笔记,略去了书中一些认为无关紧要文字,或者稍作修改,并且有些地方加上了自己学习感悟,有兴趣朋友可以对照原书研读。此外,如有侵权,留言告知,我会删除。...缺少对科学计算支持是VBA一个明显限制。但是,即使看看核心语言特性,VBA也落后了,这在下一节中会看到。 现代语言特征 自Excel 97以来,VBA语言语言特性方面几乎没有任何重大变化。...然而,这并不意味着VBA不再受支持:Microsoft每一个新版本Excel中都会提供更新,以便能够自动化该版本中引入Excel功能。...例如,Excel2016增加了自动化PowerQuery支持。一种二十多年前就停止发展语言正在失去过去几年在所有主要编程语言中引入现代语言概念。例如,VBA错误处理确实显示了它时代。...官方VBA文档或论坛上,经常会看到这样代码: Set fso = CreateObject("Scripting.FileSystemObject") 无论何时调用CreateObject或被告知转到

    2.6K10

    个人永久性免费-Excel催化剂功能第47波-VBA开发者喜爱加密函数类

    题外话 本人也是从ExcelVBA语言入门了编程世界,然后很偶然机会接触到VSTO,并且一位热心网友一路帮助下,算是入门了C#语言,现在可以灵活地用C#实现自己想要一些小功能(大部分是抄百度和...回到正题,加密函数介绍 今天介绍加密函数有 生成MD5和RSA方式加解密函数,具体这些加密原理我也不懂,只负责搬运和它能够实现到所需功能即可。 ?...VBA代码中调用加解密函数方法 说到重点,VBA开发者可能更多场景还要回到自己VBA代码中想要调用其他语言开发好函数,例如此篇自定义函数。...总结 过往发表众多自定义函数里,大部分直接照搬了.Net Framework类库里函数,让其能够Excel环境以自定义函数形式来使用,当中也收到许多反馈说能用自定义函数的人都自己写VBA代码...第16波-N多使用场景多维表转一维表 第17波-批量文件改名、下载、文件夹创建等 第18波-Excel上也能玩上词云图 第19波-Excel与Sqlserver零门槛交互-查询篇 第20波-Excel

    3.2K10

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

    偶然机会,了解到`Excel`有一个`VBA`可以用来做二次开发,对当时简直就是福音啊。 所以就埋下头,看书,学习别人代码,学习Excel自带录制宏.........从此就在`VBA`路上走了一些距离,当整了将近一年半`VBA`后 慢慢发现一件事情,就是因为工作性质问题,做事情主要也就几类,常用`VBA`也就那些 自己只是另外一个层次上重复...很多都是查百度,然后学习,然后使用,哈哈 Plus:目前还是菜鸟,因为之前学习VBA,所以很多思路其实感觉还是向那边靠近,哈哈 Part 3:开篇小菜:文件操作,涉及模块os 获取当前文件夹路径,...转换工作路径 获取文件地址,获取文件名称 文件判断,文件夹判断,是否存在判断 Part 4:文件夹路径 在有些代码中要求转换当前工作路径到合适位置才可以工作 例如当前Anaconda版本下默认安装...Part 5:文件地址/文件名获取 已知文件绝对地址,如何获取它对应文件夹地址和文件名称 关键字:dirname,basename import ospath2 = "F:\\【10】微信\\Python

    50710

    文科生也能学会Excel VBA 宏编程入门(三)——合并文件

    大家好,又见面了,是你们朋友全栈君。 任务介绍 日常工作中,我们经常会遇到需要汇总多个表格数据,将它们合并到一个表格里情况。...虽然复制粘贴大法好,但如果让你汇总几十人填报个人信息并做成汇总表格,估计你也膜不动了。因此,这一次我们就通过VBA程序完成这个任务,从此妈妈再也不担心数数到头秃。...程序基本思路 将要合并Excel文件放到同一个文件夹中; 文件夹中新建一个Excel文件用于汇总并运行VBA程序; 通过VBA程序获取这个文件夹中所有文件路径; 依次通过程序自动打开各个文件,并将数据复制粘贴到汇总表中...excel文件所在路径,对于本文就是”合并.xlsm”文件文件夹路径,是这个:D:\Sync\文档\合并文件\。...Dir函数会按文件文件夹实际排序依次返回这两个文件文件名,也是说你第一次调用Dir("D:\Sync\文档\合并文件\*.xlsx")时候返回1.xlsx,后面直接调用Dir会返回2.xlsx

    3.6K30

    VBA还是学Python,这不是个问题!

    点击“博文视点Broadview”,获取更多书讯 面向Excel数据处理自动化脚本编程,目前主要有VBA和Python两种语言可供选择。...从上世纪90年代到目前,VBA一直是Excel脚本编程主要工具。VBA语言具有简单易学、功能强大特点,长达几十年时间里为提高Excel工作效率作出了贡献,也积累了海量代码和学习资料。...国内,Python也逐步代替原来Basic语言,成为小学、中学和大学学生入门学习计算机编程首选语言。所以,当前使用Python进行Excel脚本编程以提高工作效率朋友越来越多。...所以,Python用户了解Excel对象模型过程中需要参阅大量VBA资料,即他们有快速掌握VBA语言需求和获取xlwings基础性文档和使用手册需求。...xlwings API方式下,sht对象后面引用api,后面就可以使用VBA引用方式,Range属性和Select方法首字母都是大写。

    2.7K50

    VBA还是学Python,这不是个问题!

    VBA语言具有简单易学、功能强大特点,长达几十年时间里为提高Excel工作效率作出了贡献,也积累了海量代码和学习资料。在这段时间里,Basic语言也一直是国内中学到大学教学首选计算机语言。...国内,Python也逐步代替原来Basic语言,成为小学、中学和大学学生入门学习计算机编程首选语言。所以,当前使用Python进行Excel脚本编程以提高工作效率朋友越来越多。...这几个包小巧灵活,但是功能上有明显不足,无法与VBA媲美。使用win32com和xlwings等包,VBA能做Python都能做,但是这方面的资料很少,特别是语言参考这样一些最基本文档缺乏。...所以,Python用户了解Excel对象模型过程中需要参阅大量VBA资料,即他们有快速掌握VBA语言需求和获取xlwings基础性文档和使用手册需求。...xlwings API方式下,sht对象后面引用api,后面就可以使用VBA引用方式,Range属性和Select方法首字母都是大写。

    2.9K40

    对比VBA学习Python,让办公更自动化!

    VBA语言具有简单易学、功能强大特点,长达几十年时间里为提高Excel工作效率作出了贡献,也积累了海量代码和学习资料。在这段时间里,Basic语言也一直是国内中学到大学教学首选计算机语言。...国内,Python也逐步代替原来Basic语言,成为小学、中学和大学学生入门学习计算机编程首选语言。所以,当前使用Python进行Excel脚本编程以提高工作效率朋友越来越多。...这几个包小巧灵活,但是功能上有明显不足,无法与VBA媲美。使用win32com和xlwings等包,VBA能做Python都能做,但是这方面的资料很少,特别是语言参考这样一些最基本文档缺乏。...所以,Python用户了解Excel对象模型过程中需要参阅大量VBA资料,即他们有快速掌握VBA语言需求和获取xlwings基础性文档和使用手册需求。...xlwings API方式下,sht对象后面引用api,后面就可以使用VBA引用方式,Range属性和Select方法首字母都是大写。

    3.7K11

    干货 | Office文档钓鱼实战和免杀技巧

    文件,两个文件夹内部创建各创建一个index.html文件。...Visual Basic for Applications(VBA)是Visual Basic一种宏语言,是微软开发出来在其桌面应用程序中执行通用自动化(OLE)任务编程语言。...这个功能本意是为了更方便地 word 里同步更新其它应用内容,比如说一个 word 文档里引用了另一个 excel 表格里某项内容,通过连接域 (Field) 方式可以实现在 excel 里更新内容后...可以将IYQ简单理解成内置excel一种特殊‘web浏览器’(不能加载脚本),通过IQY【即web查询】语句,可以直接将各类web上列表数据轻松引入到当前excel中,而正是因为这样,从而给了我们利用...2.9 超链接 PDF、Office文档中内嵌一个跳转链接是很早期钓鱼方式,通过文字信息引导,让受害者点开页面,如果缺乏戒心,就可能会获取到受害者账号、密码、银行卡、身份证等信息。

    7.2K21

    分享一个批量汇总合并文件程序

    二、可能遇到问题 如果每个表格式规范,这种场景需求比较容易解决。比如用Excel 、Power BI里Power Query,或VBA, 或WPS付费功能,或第三方插件如方方格子等。...,比如A文档【单价】C列,而B文档D列; 起始行位置不一致,这种销售订单里非常常见,由于表头信息存在,导致A文档字段名从第6行开始,而B文档从第9行开始; 还有极少数情况下,需要汇总文档包含了...无论使用何种方式处理工作表名、字段名不一致问题时,都需要建立一张辅助对照关系表,将各种不同情况,映射到统一情况中,如下图所示: 专门针对这几种情况,开发了一款小软件。...通过建立相应对照关系规则表,只需三步,即可实现批量汇总不规范格式文档。 选择规则表 选择要合并汇总文件 选择合并方式 软件提供了3种合并方式:按列位置、按列名称和按自定义规则(即规则表)。...五、软件获取方式 关注本公众号,发消息【批量汇总】,即可获取下载链接。程序约80M,免安装,解压即用。解压后,打开【dist】文件夹,双击深蓝色图标即可。结果输出到同文件夹下【结果】文件夹中。

    79930

    Excel轻松制作文件夹文档链接目录,哪里需要什么VBA

    利用Excel管理文件夹及相关文档,可以很方便地利用Excel筛选、查找等功能,而且,借助ExcelHyperLink函数,可以实现相关链接,达到直接通过Excel打开相应文档功能...具体实现方法如下: 一、获取文件夹下所有文档形成目录索引 获取文件夹所有文档形成目录索引有很多方法,比如通过dos命令行获得,然后复制粘贴进来,或者通过VBA批量获取,但这些方法都太过...“专业”,对很多用户来说操作起来比较麻烦,因此,推荐使用Power Query来完成,具体如下: Step-01:从文件夹获取数据 Step-02:选择要管理文件夹 Step-03:弹出窗口中单击...以上通过两个操作实现了从需要管理文件夹中非常方便地导入所有所需文件信息以及建立文档链接过程,而且,通过Power Query实现操作,文件夹相关内容更新后,可以Power Query中直接一键更新...(由于Power Query查询结果返回Excel时生成是超级表——关于超级表后续会撰文专门描述,因此,超级表里用HyperLink函数缩写公式也会随之刷新),如下图所示:

    1.3K20

    PQ和超级表结合,实现文件夹文档管理

    利用Excel管理文件夹及相关文档,可以很方便地利用Excel筛选、查找等功能,而且,借助ExcelHyperLink函数,可以实现相关链接,达到直接通过Excel打开相应文档功能...具体实现方法如下: 一、获取文件夹下所有文档形成目录索引 获取文件夹所有文档形成目录索引有很多方法,比如通过dos命令行获得,然后复制粘贴进来,或者通过VBA批量获取,但这些方法都太过...“专业”,对很多用户来说操作起来比较麻烦,因此,推荐使用Power Query来完成,具体如下: Step-01:从文件夹获取数据 Step-02:选择要管理文件夹 Step-03:弹出窗口中单击...以上通过两个操作实现了从需要管理文件夹中非常方便地导入所有所需文件信息以及建立文档链接过程,而且,通过Power Query实现操作,文件夹相关内容更新后,可以Power Query中直接一键更新...(由于Power Query查询结果返回Excel时生成是超级表——关于超级表后续会撰文专门描述,因此,超级表里用HyperLink函数缩写公式也会随之刷新),如下图所示: 在线M函数快查及系列文章链接

    89620

    读取Excel文本框,除了解析xml还可以用python调用VBA

    传统行业:电信,人们上网、打电话、发短信等等数据 数据源:网站、app 都要往我们后台去发送请求,获取数据,执行业务逻辑;app获取要展现商品数据;发送请求到后台进行交易和结账 后台服务器,...实现方式是整个文件夹都转换完毕再关闭应用,这样相对来说处理更快一些,但可能更耗内存,代码如下: import win32com.client as win32 # 导入模块 from pathlib...使用Python调用VBA解决需求 VBA官方文档地址:https://docs.microsoft.com/zh-cn/office/vba/api/overview/excel 整体而言,上面自行解析...xml方法还是挺麻烦写完上面的方法后灵机一动,VBA不就有现成读取文本框方法吗?...使用xlwings解决需求 苹果电脑是不支持VBA,上面调用VBA代码对于苹果电脑来说无效,但所幸是xlwings0.21.4版本中新增了访问文本框文本属性text。

    2.7K20

    【坑】如何心平气和地填坑之拿RSViewSE报表说事

    天呢!!简直丧心病狂。 当然腹诽完了,该干活还是要干滴。...ActiveX是基于COM接口UI组件规范,主要实验语言无关可视控件,多用于可视化编程及其他面向对象快速开发领域。需要通过脚本对其内容进行编辑。...RSViewSE软件里面,支持VBA脚本,其编辑器可通过选择任意对象右键>VBA代码进入 画面内放个SE软件按钮,进入其脚本编辑页面 RSViewSE软件VBA脚本编辑页面 按钮事件 选择按钮按下事件...注意,VBA/VB/VBS语言里面,英文输入法单引号’ 是注释符 编程原则:结构化、模块化、思路清晰、注释清楚、能够用子程序就不要全都挤一块 选择按钮按下事件 先设置表格样式,合并单元格...此处可参考软件帮助文档,有示例代码可直接使用 第一步,定义和TagGroup 第二步,获取Tag值 此处代码自己修改过,与帮助文档源代码稍有差异 向表格内填入从RSViewSE处获取数值 先用按钮调用一下该子过程

    3.1K41

    【JSA神助攻之一】FreeScript给数据分析工作者带来无限惊喜,ExcelWPS环境上做专业数据分析不是梦

    Excel/WPS环境下使用,可以无限降低用户使用门槛,就如日常使用Excel模板一样,只需要制作好一个R、python脚本,让用户可以根据自己数据源及相关配置,使用Excel数据及交互方式...最新突破,C# /VB.NET /PowerShell上,都可以做到脚本中获取到当前Excel/WPS表格Application对象模型。...有了Application对象模型,就不单单是让脚本来处理数据这么简单,只需要将特定参数从VBA/JSA上传递给脚本获取脚本端直接将所有自动化流程做完都可以,包括但不限于增删工作薄、工作表,对单元格...获取Application对象仅在VBA/JSA环境下可行,自定义函数上会报错。 下面一起来感受下最终效果,来个简单demo给大家一窥究竟。...使用与Excel交互方式,调用单元格内容完成作图,自定义函数与VBA/jsa均可使用。 大量时间花在开发探索上,文档写得比较粗糙,让尝鲜者先玩起来,慢慢再迭代完善文档、视频等教学内容。

    13710

    Active APT

    为 Word 和 Excel 文档添加了狡猾远程模板注入器;独特 Outlook 群发邮件宏 ESET 研究人员发现了几个以前未被记录攻击后工具,这些工具被高度活跃 Gamaredon 威胁组织各种恶意活动中使用...这是一种组织网络中横向移动非常有效方式,因为文档通常在同事之间共享。此外,由于这些宏在打开文档时运行,因此系统上持久保存是一种好方法,因为其中一些文档可能会在不同时间多次打开。...值得注意是,有两个文本文件,一个用于 Word,一个用于 Excel,包含要插入目标文档恶意宏 VBA 源代码,以及负责查找和破坏现有文档 .NET 程序集。...然后,它会在连接到系统所有驱动器上扫描具有有效 Word 或 Excel 文件扩展名文档。对于包含 Windows 安装驱动器,它仅扫描特定位置,即桌面和下载文件夹。...恶意软件将每个找到文档移动到AppData文件夹,使用Microsoft.Office.Interop对象将恶意 Word 或 Excel 宏插入其中,然后将文档移回其原始文件夹

    8K00

    Python如何操作office实现自动化及win32com.client运用

    第一个表格,主要需要从内部共享文件夹中,去下载需要Cases,都是文档类型文件,需要将它们写入到表一中AllCases列中,这里比较简单,我们只需要用open和readlines(),用遍历方式将其写入到...然后表二中,刷新透视表。以下截取部分代码,路径自己构建输入即可,将分块来介绍。...通过以下这种方式就可以调用VBA函数模块了,如果你要用word,更改成 ‘ Word.Applicaiton ‘ 即可。...VBA一些函数模块,比如删除行功能,openpyxl中,没有找到直接删除行功能,而win32com,可以采用如下方式进行删除行: sheet_AllCases.Rows(i).Delete()...关于VBA函数模块调用,直接采用录制宏方式获取,无需去找文档,这也是更加方便灵活地方。

    3.1K31

    【JSA宏神助攻之一】FreeScript给数据分析工作者带来无限惊喜,ExcelWPS环境上做专业数据分析不是梦

    Excel/WPS环境下使用,可以无限降低用户使用门槛,就如日常使用Excel模板一样,只需要制作好一个R、python脚本,让用户可以根据自己数据源及相关配置,使用Excel数据及交互方式...最新突破,C# /VB.NET /PowerShell上,都可以做到脚本中获取到当前Excel/WPS表格Application对象模型。...有了Application对象模型,就不单单是让脚本来处理数据这么简单,只需要将特定参数从VBA/JSA上传递给脚本获取脚本端直接将所有自动化流程做完都可以,包括但不限于增删工作薄、工作表,对单元格...获取Application对象仅在VBA/JSA环境下可行,自定义函数上会报错。 下面一起来感受下最终效果,来个简单demo给大家一窥究竟。...使用与Excel交互方式,调用单元格内容完成作图,自定义函数与VBA/jsa均可使用。 大量时间花在开发探索上,文档写得比较粗糙,让尝鲜者先玩起来,慢慢再迭代完善文档、视频等教学内容。

    18710
    领券