下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 excel vba 分类汇总 Excel中用VBA操作文件的方法汇总

excel vba 分类汇总 Excel中用VBA操作文件的方法汇总.doc

excel vba 分类汇总 Excel中用VBA操作文件的方…

唐蒙正
2017-10-25 0人阅读 举报 0 0 暂无简介

简介:本文档为《excel vba 分类汇总 Excel中用VBA操作文件的方法汇总doc》,可适用于综合领域

excelvba分类汇总Excel中用VBA操作文件的方法汇总导读:就爱阅读网友为您分享以下“Excel中用VBA操作文件的方法汇总”资讯希望对您有所帮助感谢您对tocom的支持!ExcelVBA操作文件四大方法ExcelVBA操作文件四大方法之一在我们日常使用Excel的时候不仅会用到当前Excel文件的数据还经常需要访问其他的数据文件。这些数据文件可能是Excel文件、文本文件或数据库文件等。经常有朋友会问如何在vba代码里操作这些数据文件,本文就系统地介绍一下在Excel中应用VBA操作数据文件的方法。本文主要介绍四种常用的方法:、利用Excel对象来处理文件、利用VBA文件处理语句来处理文件、利用FileSystemObject对象来处理文件、利用API函数来处理文件。当然对于数据库文件还可以利用ADOSQL的方法操作不过论坛已经有前辈详细介绍过此类方法本文就不再重复了。一、利用Excel对象来处理文件利用Excel对象自带的方法来操作文件是最方便也是最简单的。我们主要利用Workbooks集合和Workbook对象的方法来操作文件。、打开Excel文件我们可以用WorkbooksOpen方法打开一个Excel工作簿。WorkbooksOpen(FileName,UpdateLinks,ReadOnly,Format,Password,WriteResPassword,IgnoreReadOnlyRecommended,Origin,Delimiter,Editable,Notify,Converter,AddToMru,Local,CorruptLoad)其中FileName是必选的参数表示要打开的工作簿名如果没有指定路径则代表当前路径。另外个是可选参数除了密码参数其他的一般很少用。具体的含义可以参看VBA的帮助。例:WorkbooksOpen“F:testxls”可以打开F盘的testxls文件。、打开文本文件使用Open方法也可以打开文本文件但建议使用OpenText方法。此方法是载入一个文本文件并将其作为包含单个工作表的工作簿进行分列处理然后在此工作表中放入经过分列处理的文本文件数据。完整语法如下:WorkbooksOpenText(FileName,Origin,StartRow,DataType,TextQualifier,ConsecutiveDelimiter,Tab,Semicolon,Comma,Space,Other,OtherChar,FieldInfo,TextVisualLayout,DecimalSeparator,ThousandsSeparator,TrailingMinusNumbers,Local)关于以上参数的具体含义可以参看VBA的帮助这里就不重复了。在实际的编程中一般无需对这些复杂的参数进行处理。可以通过录制宏来得到打开一个文本文件的VBA代码。具体方法就是选择―文件打开‖然后选择打开文本文件就会出现文本导入向导一步一步执行完直到文本打开后停止录制。以下是录制宏得到的代码:SubMacro()„„MacroMacro„宏由MCSYSTEM录制时间:„„WorkbooksOpenTextFilename:=“F:CallWindowProctxt”,Origin:=xlWindows,StartRow:=,DataType:=xlDelimited,TextQualifier:=xlDoubleQuote,ConsecutiveDelimiter:=False,Tab:=True,Semicolon:=False,Comma:=False,Space:=False,Other:=False,FieldInfo:=Array(,),TrailingMinusNumbers:=TrueEndSub在实际编程中只要做相应的修改就可以使用了。、打开其他文件利用Excel对象还可以打开XML文件和一些数据库(如Access)文件对应XML文件需要Excel以上的版本。OpenXML方法的语法如下:WorkbooksOpenXML(Filename,Stylesheets,LoadOption)FileNameString类型必需。要打开的文件名。StylesheetsVariant类型可选。单个值或值的数组用于指定要应用哪些XSL转换(XSLT)样式表处理指令。LoadOptionVariant类型转换。指定Excel打开XML数据文件的方式。可为XlXmlLoadOption常量之一。XlXmlLoadOption可为以下XlXmlLoadOption常量之一:xlXmlLoadImportToList将XML数据文件的内容置于XML列表中。xlXmlLoadMapXml在―XML结构‖任务窗格中显示XML数据文件的架构。xlXmlLoadOpenXml打开XML数据文件。文件的内容将展开。xlXmlLoadPromptUser提示用户选择打开文件的方式。示例下面的代码打开了XML数据文件―customersxml‖并在XML列表中显示了此文件的内容。SubUseOpenXML()ApplicationWorkbooksOpenXMLFilename:=“customersxml”,LoadOption:=xlXmlLoadImportToListEndSubOpenDatabase方法语法如下:WorkbooksOpenDatabase(FileName,CommandText,CommandType,BackgroundQuery,ImportDataAs)FileNameString类型必需。连接字符串。CommandTextVariant类型可选。查询的命令文本。CommandTypeVariant类型可选。查询的命令类型。以下是可用的命令类型:Default、SQL和Table。BackgroundQueryVariant类型可选。查询的背景。ImportDataAsVariant类型可选。确定查询的格式。示例本示例中Excel打开了―northwindmdb‖文件。SubOpenDatabase()WorkbooksOpenDatabaseFileName:=“C:northwindmdb”EndSub、保存文件文件的保存使用Workbook对象的Save或SaveAs方法。Save方法使用简单语法为expressionSaveexpression是某个Workbook对象。如:ActiveWorkbookSave即保存当前活动工作簿。如果是第一次保存工作簿或要另存为请使用SaveAs方法为该文件指定文件名。其语法为:expressionSaveAs(FileName,FileFormat,Password,WriteResPassword,ReadOnlyRecommended,CreateBackup,AccessMode,ConflictResolution,AddToMru,TextCodepage,TextVisualLayout,Local)具体参数含义可参看VBA帮助使用都比较简单。示例本示例新建一个工作簿提示用户输入文件名然后保存该工作簿。SetNewBook=WorkbooksAddDofName=ApplicationGetSaveAsFilenameLoopUntilfNameFalseNewBookSaveAsFilename:=fNameApplicationGetSaveAsFilename为调出标准的―另存为‖对话框获取用户文件名但并不真正保存任何文件然后使用代码保存文件。还有ApplicationGetOpenFileName可以调出标准的―打开‖对话框。、关闭文件关闭文件可以使用Workbooks集合或Workbook对象的Close方法。前者是关闭所有打开的工作簿后者关闭特定的工作簿。Workbook对象的Close方法语法为:expressionClose(SaveChanges,Filename,RouteWorkbook)SaveChanges参数表示是否保存更改对许多不需要更改的操作可设置为False以免弹出保存更改提示的对话框。FileName可选。以此文件名保存所做的更改。RouteWorkbook可选。如果指定工作簿不需要传送给下一个收件人(没有传送名单或已经传送)则忽略该参数。示例本示例关闭Bookxls并放弃所有对此工作簿的更改。Workbooks(“BOOKXLS”)CloseSaveChanges:=False本示例关闭所有打开的工作簿。如果某个打开的工作簿有改变MicrosoftExcel将显示询问是否保存更改的对话框和相应提示。WorkbooksClose、综合实例假如F盘有一个Excel文件testxls现在有另一个Excel文件要访问testxls的数据我们来看用VBA代码如何操作。代码如下:PublicSubtest()ApplicationScreenUpdating=FalseWorkbooksOpen“f:testxls”ThisWorkbookSheets()Range(“b”)=ActiveWorkbookSheets()Range(“a”)ActiveWorkbookCloseApplicationScreenUpdating=TrueEndSub首先关闭屏幕刷新是为了防止testxls在打开时被看见(有时候还是看的见)。打开后见testxls的Sheet的单元格A中的值赋给当前工作簿的Sheet的单元格B然后关闭testxls。当要打开的工作簿不确定的时候可以通过调用打开对话框来让用户自己选择。可改为如下:PublicSubtest()ApplicationScreenUpdating=FalseDimFilenameasStringFilename=ApplicationGetOpenFileNameWorkbooksOpenFilenameThisWorkbookSheets()Range(“b”)=ActiveWorkbookSheets()Range(“a”)ActiveWorkbookCloseApplicationScreenUpdating=TrueEndSub、总结利用Excel对象的方法进行文件操作是最简单也是最方便的适合初学者。对于Excel文件格式如果我们仅仅是读取其表格中的内容这种方法也是首选。对于文本文件的操作使用第二种方法比较方便若要将文本转换成表格那么使用此方法也是合适的。如何在d:testxls已打开的情况下不让以下的语句再去创建一个testxls的实例(虽然它标识为只读),并给出文件已打开的提示先做一个判断~判断该工作簿是否打开了,例如:Setxlexcel=CreateObject(“excelapplication”)dimwbasobjectsetwb=xlexcelworkbooks(“testxls”)ifwbisnothingthenmsgbox“工作簿未打开~”xlexcelWorkbooksOpen“d:testxls”xlexcelVisible=TrueendifExcelVBA操作文件四大方法之二二、利用VBA文件处理语句来处理文件VBA包含了许多用于文件操作的语句和函数可以满足绝大多数情况下的文件操作要求。下面我们按照操作目的进行一一介绍。(一)文件处理Name语句语法:NameoldpathnameAsnewpathname功能:重命名一个文件、目录、或文件夹移动一个文件。

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/9

excel vba 分类汇总 Excel中用VBA操作文件的方法汇总

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利