方法1. 读取注册表:
Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Declare Function RegQueryValueExString Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, ByVal lpData As String, lpcbData As Long) As Long
Declare Function RegQueryValueExNULL Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, ByVal lpData As Long, lpcbData As Long) As Long
Global Const HKEY_CURRENT_USER = &H80000001
Global Const KEY_ALL_ACCESS = &H3F
Sub test()
Dim hKey As Long
Dim resultvl As String
lretval = RegOpenKeyEx(HKEY_CURRENT_USER, "Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders", 0, KEY_ALL_ACCESS, hKey)
If lretval = 0 Then
regop = RegQueryValueExNULL(hKey, "Personal", 0&, lType, 0&, lpcbData)
resultvl = String(lpcbData, 0)
regop = RegQueryValueExString(hKey, "Personal", 0&, lType, resultvl, lpcbData)
If regop = ERROR_NONE Then
vValue = Left$(resultvl, lpcbData)
Else
vValue = Empty
End If
Else
vValue = Empty
End If
MsgBox vValue
End Sub
方法2. 用WSCRIPT对象模型的SPECIALFOLDERS属性
Sub test()
Set WSh = CreateObject("WScript.Shell")
strdoc = WSh.SpecialFolders("Mydocuments")
MsgBox strdoc '这一句要不要都可以,已经在STRDOC中最得字串了
End Sub
方法3. 使用shell对象.
Sub macro1()
MsgBox CreateObject("shell.Application").Namespace(5).self.Path
End Sub
方法4.
如果没有更改过我的文档路径,可以这样:
Sub macro1()
MsgBox Environ("USERPROFILE") & "\My Documents"
End Sub
方法5 使用WSCRIPT对象模型读取注册表
Sub getit()
MsgBox CreateObject("Wscript.Shell").RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Personal")
End Sub
分享到:
相关推荐
在本文中,我们将详细介绍如何使用 VBA 来提取文件夹内所有 Word 文档中的表格数据,并将其导出到 Excel 中。 VBA 基础知识 在开始之前,让我们先 review 一下 VBA 的基础知识。VBA(Visual Basic for ...
在本教程中,我们将学习如何使用 VBA 来提取文件夹内所有 Word 文档中的表格数据,并将其导入 Excel 文档中。 知识点 1: FileSystemObject 在 VBA 中,我们可以使用 FileSystemObject 来操作文件系统。...
以下是一个简单的VBA代码示例,用于遍历指定文件夹及其子文件夹,获取所有文件的路径,并将其写入Excel工作表中,形成一个文件目录: ```vba Sub GenerateFileDirectory() Dim folderPath As String folderPath =...
在这个例子中,我们将文档保存在 D 盘根目录下,请自行修改文档保存的路径。使用 `SaveAs` 方法,我们可以将文档保存到指定的路径。 结论 Word VBA 邮件合并功能可以实现批量生成文档,并将其分割成独立的文档。...
3. **Left** 或 **Mid** 函数:如果路径中包含多个反斜杠,可能需要结合InStr函数,找出倒数第二个反斜杠的位置,然后使用Left或Mid函数获取文档名。例如,如果路径是 "C:\Folder1\Folder2\报告.xlsx",可以先找到...
### Excel2010 VBA帮助文档知识点概览 #### VBA入门知识 ...以上概述了Excel2010 VBA帮助文档中的主要知识点,涵盖了从基础操作到高级功能的各个方面,旨在帮助读者深入了解并掌握VBA编程的核心概念和技术。
5. **事件驱动编程**:Word中的事件允许VBA代码在特定操作(如打开文档、关闭文档等)发生时自动执行。通过编写事件处理程序,你可以实现交互式功能。 6. **调试和错误处理**:VBA提供了一些调试工具,如断点、F8...
在Excel-VBA宏编程中,获取系统文件夹的路径是一项常用的任务,这通常涉及到与操作系统进行交互,以便访问特定的系统目录,如临时文件夹、我的文档、程序文件夹等。VBA(Visual Basic for Applications)是Microsoft...
例如,在这个名为"通过路径字符串的最下方来获取文档的后缀名.zip"的压缩包中,包含了一个`.xlsm`文件,这表明它是一个带有VBA宏的Excel文件。在VBA中,我们可以编写代码来解析文件路径,从而提取出文件的后缀名。...
在Excel-VBA宏编程中,获取特殊文件夹路径是一项常用的操作,这有助于程序访问系统预定义的特定位置,如文档、桌面、临时文件夹等。本实例源代码着重讲解如何利用VBA(Visual Basic for Applications)来实现这一...
这个VBA宏的实现主要依赖于两个关键点:一是获取当前活动的工作簿对象,二是从工作簿的完整文件路径中提取后缀名。下面详细解释这两个步骤: 1. **获取当前活动的工作簿对象**:在VBA中,我们可以通过`...
' 获取活动的AutoCAD应用程序和文档对象 Set acadApp = GetObject(, "AutoCAD.Application") Set acadDoc = acadApp.ActiveDocument Set acadModelSpace = acadDoc.ModelSpace ' 插入外部参照 acadModelSpace...
在AutoCAD VBA环境中,工程是指一系列代码模块、类模块以及窗体的集合,这些集合在一起实现特定功能。根据存储位置的不同,AutoCAD VBA工程可以分为两种类型:嵌入式工程和全局工程。 - **嵌入式工程**:这类工程被...
1. **启动VBA编辑器**:在Word中,按下`Alt + F11`键打开VBA编辑器。 2. **创建模块**:在VBA编辑器中,选择“插入”菜单,然后点击“模块”,创建一个新的模块。 3. **编写代码**:在模块中编写以下基本代码框架...
- 制作快捷路径的宏在办公环境中非常实用,可以批量创建指向常用文档或特定数据源的快捷方式,提高工作效率。 - 此外,这样的宏还可以作为模板,通过改变目标路径参数,适应不同的文件或目录。 通过理解和学习这...
- 在VBA中,我们使用`Workbooks.Open`方法来打开一个Excel文档。例如: ```vb Sub OpenWorkbook() Dim wb As Workbook Set wb = Workbooks.Open("C:\path\to\your\file.xlsx") End Sub ``` - 上述代码首先...
学习和理解如何利用VBA获取和处理文件名,是提高办公自动化效率的关键步骤之一。 总结一下,这个压缩包提供的VBA宏实例教你如何使用VBA编程来获取Excel工作簿的基础名,这是通过结合使用`ThisWorkbook`对象的`Name`...
3. **获取文档信息**:在VBA中,可以使用内置对象模型来访问Excel文档的各种属性,包括文件名、路径、创建日期、最后保存日期等。关键的对象有`Workbook`和`Worksheet`,它们分别代表Excel的工作簿和工作表。 4. **...
标题中的“Excel-VBA宏编程实例源代码-删除相同路径下的文档.zip”表明这是一个使用Excel的VBA(Visual Basic for Applications)宏编程技术编写的实例,其主要功能是删除指定路径下相同名称的文档。VBA是Microsoft ...
在上述代码中,我们首先创建了`FileSystemObject`的实例,然后通过`GetFile`方法获取指定路径的文件对象。接着,我们分别读取`DateCreated`、`DateLastModified`和`DateLastAccessed`属性,将这些时间戳转换为字符串...