VBA打开文件VBA或Visual Basic for Applications与Visual Basic密切相关。此应用程序在向Microsoft Office套件添加功能时非常有用。VBA是简单的使用和自动化的例行任务,特别是在Microsoft Excel。程序员广泛使用它来创建高效和优雅的宏。MS Excel有一个内置的Visual Basic编辑器,你可以在那里编写和测试你的VBA代码。Excel VBA可以打开现有的工作表并在其上运行宏。文件是任何计算机系统的重要组成部分。它可以是简单的文本文件,也可以是可执行文件。大多数编程语言都有处理和操作文件的内置函数。今天,在这个中级教程中,我们将向您介绍VBA文件打开功能。 We assume that you are familiar with MS Excel, VBA and concepts of file manipulation.如果你想首先学习基础知识,我们强烈推荐这门关于Excel VBA的入门课程。

什么是文件?

计算机文件是一种特定的数据。它有一个标识文件的名称。该文件有一个扩展名,它告诉操作系统和相关程序它是什么类型的文件。注意,每个文件都有一个大小,包括大小为0。每个文件在计算机系统中都有一个位置,并被编制了索引。计算机文件可以被创建、删除、移动、复制或更改。每个文件都包含决定其用途的属性。这些属性包括查看、打开、读取、修改文件的权限和其他权限。

文件类型

操作系统将文件识别为常规文件、目录文件或特殊文件。这些基本类型的文件存在许多变体。

  1. 常规文件—这些是最常见的文件,用于存储数据。它们有两种类型,即文本文件或二进制文件。文本文件包含以ASCII格式存储的信息,用户可读。二进制文件包含计算机可读的信息。
  2. 目录文件—这些文件包含系统访问所有类型文件所需的信息。
  3. 特殊文件- 特殊文件是各种进程创建的临时文件。他们有三种类型,即FIFO,块和角色。最后两个文件类型定义设备。
请注意,每个文件都具有一组文件权限,可确定谁可以读取,更改或执行该文件。

什么是VBA打开文件

Open语句允许用户打开文件。该语句的语法如下所示:

用于模式的打开路径名[访问访问] [锁]

让我们仔细查看打开的文件参数

请注意,我们在此处给出的所有示例中使用了伪文件位置。我们建议您在计算机上提供实际文件位置。

例1:在MS Excel中打开现有文件的程序

子OpenWorksheet()工作簿。选用文件名:= _“C:\ Desktop / Emp_details.xlsx”结束子

此宏是用Visual Basic编辑器编写的。为了打开文件,给出了文件的位置地址。编写代码时,请给出Excel文件的完整文件位置。例如,如果您的文件存储在我的文档中,请将文件地址作为“C:\ mydocuments / emp_details.xlsx”。

要在VBA文件功能上了解更多信息,我们建议您走乘坐VBA宏的课程。

示例2:打开和操作CSV文件的程序

请注意,CSV文件有三个字段,并且字段由逗号分隔。

Sub OpenTextFile() Dim File_Path As String File_Path =" c:\用户\所有者\ john\员工。csv" Open File_Path for Input As #1 row_num= 0 Do until EOF(1) Line Input #1, Line_FromFile Line_Items = Split(Line_FromFile, ",") ActiveCell。Offset(row_num, 0). value = Line_Items(2) ActiveCell。Offset(row_num, 1). value = Line_Items(1) ActiveCell。Offset(row_num, 2).Value = Line_Items(0) row_num = row_num + 1 Loop Close #1 End Sub

在该程序中,输入的模式是用于读取文件的输入。FileNumber是1.在“行输入#1,Line_fromfile”中,逗号前的前3项是指文件的单行输入。逗号后,您告诉VBA将此行放在变量Line_fromfile中。在每个循环迭代中,将从文本文件中抓取新行并将其放在此变量中。由于线路上有逗号,因此您需要解析它。通过使用拆分函数,您可以将每个项目从一行放入名为line_items的数组。文本文件每行有三个项目。因此,阵列从0到2个位置。

然后我们将每个项目放入电子表格的单元格中。在每次循环迭代中,增加row_num变量。当到达文件末尾时,循环终止。最后,我们关闭文件。如果您错过关闭文件,文件句柄和分配给该文件的内存空间将保持锁定状态,处于僵死状态。这意味着内存以后不能重用或回收。因此,重要的是要记得关闭所有未使用的文件,以避免耗尽内存。

要了解更多关于MS Excel VBA程序,请跳过这门优秀的课程,用例子教你

例3:在Access中打开Excel工作表的程序

子OpenWorkbook()Dim Abc_app作为Excel.Application Dim XYZ_Book作为Excel.Workbook Set XYZ_Book = Workbooks.open(“C:\ employee_details.xlsx”)设置abc_app = xyz_book.parent abc_app.visible = true结束子

在此程序中,声明ABC_APP和XYZ_BOOK的变量。它们用于分别访问Excel对象Excel.Application和Excel.Workbook。要打开Excel工作簿,请提供路径和电子表格名称。最后,通过将其可见属性设置为“true”来显示电子表格。Excel先生在这门课程中有一些关于VBA宏的好技巧你可能想要抬头。

在下一个例子中,我们看一下如何使用VBA函数打开PDF文件并打印它。

示例4:打开和打印PDF文件的程序

sub openpdf()dim pdf_file作为字符串pdf_file = \“c:\\ employee.pdf \”如果不是fileLocked(pdf_file)那么document.open pdf_file)结束如果结束子printpdf(pdf_file作为字符串)dim pdf_reader作为字符串pdf_reader =C:\\ Program Files \\ Adob​​e \\ Acrobat 6.0 \\ Reader \\ Acrord32.exe \“Retval = shell(PDF_Reader&\ shell(PDF_Reader&\”/ P \“&Chr(34)&PDF_FILE&CHR(34),0)结束子CommandButton_Chick()调用OpenPDF呼叫PrintPDF结束子子

提供要打开的PDF文件的整条路和文件名。检查文件是否已打开。如果没有,则继续打开PDF文件。在打印文件的代码中,为计算机上的Adobe Reader,Acrobat或任何PDF阅读器提供完整路径。最后单击按钮时打开PDF文档并打印。记得在打印前打开PDF。

处理文件是创建有用的应用程序的重要部分。VBA为我们提供了处理和操作文件的工具。一定要编写自己的代码,这样才能掌握处理文件的艺术。我们希望本教程能帮助您理解如何处理文件。一旦您准备好移动到下一级别,尝试此终极VBA课程更进一步。

Excel VBA的顶级课程

解锁Excel VBA和Excel宏
莱拉Gharani
4.7 (25972)
畅销书
使用Excel VBA完成Web自动化
丹尼尔强
4.7 (718)
畅销书
Microsoft Excel Macros和Excel VBA硕士
凯尔尤
4.5 (11189)
畅销书
终极Excel VBA.
马克Talbert
4.6 (3,133)
Excel VBA编程 - 完整指南
鲍里斯Paskhaver
4.5 (3660)
Microsoft Excel VBA简介
凯尔尤
4.6 (1,133)
Excel VBA宏:超消歧Excel VBA编程
格兰特赌博
4.6 (955)
畅销书
Excel Macros&Excel VBA编程为初学者编程
andreas exadaktylos.
4.5 (809)
收视率最高
Excel VBA练习和实际项目
Karen Tateosyan.
4.5 (214)

更多Excel VBA课程

Excel VBA学生还学习

赋予你的团队。引领行业。

使用Udemy for Business订阅在线课程库和数字学习工具。

请求演示