VB打开EXCEL地方法..
- 格式:doc
- 大小:67.50 KB
- 文档页数:38
vb调用excel方法详解及操作相关操作命令大全如果你要在VB中要想调用Excel,需要打开VB编程环境“工程”菜单中的“引用”项目,并选取项目中的“Microsoft Excel 11.0 object library”项。
由于你的Excel版本不同,所以这个选项的版本号也是不同的。
因为EXCEL是以层次结构组织对象的,其对象模型中含有许多不同的对象元素。
第一层:Application对象,即Excel本身;第二层:workbooks对象集,指Excel的工作簿文件;第三层:worksheets对象集,表示的是Excel的一个工作表;第四层:Cells和Range对象,指向Excel工作表中的单元格。
新建立一个VB的工程,先放一个button,名称为Excel_Out。
先定义好各层:Dim xlapp As Excel.Application 'Excel对象Dim xlbook As Excel.Workbook '工作簿Dim xlsheet As Excel.Worksheet '工作表我们打算做的是:打开/新建一个excel,在其中对某工作表的一些单元格修改其值,然后另存为test.xls文件。
Private Sub Excel_Out_Click()Dim i, j As IntegerSet xlapp = CreateObject("Excel.Application") '创建EXCEL对象'Set xlbook = xlapp.Workbooks.Open(App.Path & "\test.xls") '打开已经存在的test.xls工件簿文件Set xlbook = xlapp.Workbooks.Add '新建EXCEL工件簿文件'xlbook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏'xlbook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏xlapp.Visible = True '设置EXCEL对象可见(或不可见)Set xlsheet = xlbook.Worksheets(1) '设置活动工作表''''~~~当前工作簿的第一页,这里也可以换成“表名”'下面就是简单的在一些单元格内写入数字For i = 7 To 15For j = 1 To 10xlsheet.Cells(i, j) = j '当前工作簿第一页的第I行第J列Next jNext iWith xlsheet '设置边框为是实线.Range(.Cells(7, 1), .Cells(28, 29)).Borders.LineStyle = xlContinuousEnd With'引用当前工作簿的第二页Set xlsheet = xlapp.Application.Worksheets(2)xlsheet.Cells(7, 2) = 2008 '在第二页的第7行第2列写入2008 xlsheet.SaveAs App.Path & "\test.xls" '按指定文件名存盘'Set xlbook = xlapp.Application.Workbooks.Add '新建一空白工作簿xlapp.Quit '结束EXCEL对象'xlapp.Workbooks.CloseSet xlapp = Nothing '释放xlApp对象End Sub这样,我们就可以简单的对excel文件进行操作了。
vb打开EXCEL(vb路径Excel路径)Dim xlApp As Excel.ApplicationDim xlBook As Excel.WorkbookPrivate Const FileName = "\vb打开EXCEL.xls"Private Sub CommandButton1_Click()Call UserForm_InitializeEnd Sub'Private Sub Form_Load()Private Sub UserForm_Initialize()On Error Resume Next'If App.PrevInstance Then End '解决重复运行错误'Me.Show '解决界面显示速度问题(先于Excel)Set xlApp = GetObject(, "Excel.Application") '判断Excel是否打开If Err.Number <> 0 ThenSet xlApp = CreateObject("Excel.Application") '创建EXCEL对象xlApp.Visible = False '设置EXCEL对象不可见End IfErr.Clear'● 这是ExcelDebug.Print (ThisWorkbook.Path)'If Dir(ThisWorkbook.Path & "\我的封装工程.xls") = "" Then If Dir(ThisWorkbook.Path & FileName) = "" Then '判断文件是否存在MsgBox ThisWorkbook.Path & FileName & "未找到!", vbOKOnly, "友情提示"EndEnd If'● 这是VBDebug.Print (App.Path)If Dir(App.Path & "\我的封装工程.xls") = "" Then' If Dir(App.Path & FileName) = "" Then '判断文件是否存在MsgBox App.Path & FileName & "未找到!", vbOKOnly, "友情提示"' EndEnd If'判断文件是否打开For Each xlBook In xlApp.WorkbooksIf = Mid(FileName, 2) ThenMsgBox "文件已打开!请不要重复打开。
如何打开Excel⽂档VB编辑器?打开Excel⽂档VB编辑器
的步骤
如何打开Excel⽂档VB编辑器?今天我们就来学习开Excel⽂档VB编辑器的图⽂⽅法,不会的⼩伙伴赶紧动⼿来试试。
Office 2016专业增强版 2021.11 中⽂免费正式版(附安装教程) 64位
类型:办公软件
⼤⼩:1.9GB
语⾔:简体中⽂
时间:2021-11-10
查看详情
打开Excel⽂档VB编辑器的⽅法:
第⼀步,⾸先打开电脑,然后点击打开Excel表格进⼊,选择⼯具栏中的【⽂件】,然后点击【选项】。
第⼆步,弹出对话框,选择【⾃定义功能区】。
第三步,然后选中右侧的【开发⼯具】,⼯具栏就会显⽰开发⼯具。
第四步,选择⼯具栏中的【开发⼯具】,点击【VB编辑器】。
第五步,然后点击确认,在点击保存⽂档,VB编辑界⾯就出来了。
以上就是⼩编给⼤家带来的打开Excel⽂档VB编辑器的⽅法,更多精彩内容请关注⽹站。
visual basic读取excel的方法-回复Visual Basic是一种广泛使用的编程语言,它可以用来创建各种Windows 应用程序,包括文件处理和数据处理等。
在本篇文章中,我们将探讨如何使用Visual Basic 读取Excel 文件。
我们将介绍一个基本的步骤指南,包括准备工作、导入必要的库、打开Excel 文件、读取数据并进行处理等。
让我们开始吧!在开始之前,确保你已经安装了Visual Basic 和Excel。
我们将使用Visual Basic 的内置功能库来处理Excel 文件。
以下是一些必要的步骤,你需要按照这些步骤来读取Excel 文件。
第一步:创建新的Visual Basic 项目首先,打开Visual Basic,然后创建一个新的项目。
你可以选择新建一个控制台应用程序或Windows 窗体应用程序,具体取决于你的需求。
在新项目的编辑器中,你将看到一个空的代码区域,这是你编写代码的地方。
第二步:导入必要的库导入必要的库是读取Excel 文件的关键步骤之一。
在Visual Basic 中,你需要导入Microsoft.Office.Interop.Excel 库。
要导入库,请在代码开头添加以下代码:Imports Microsoft.Office.Interop.Excel第三步:打开Excel 文件在导入库之后,我们需要打开Excel 文件。
使用以下代码打开Excel 文件:Dim excelApp As New ApplicationDim wb As Workbook =excelApp.Workbooks.Open("path_to_excel_file")Dim ws As Worksheet = wb.Sheets(1)在上面的代码中,"path_to_excel_file" 是你Excel 文件的路径。
上述代码将创建一个新的Excel 应用程序实例,然后打开指定路径下的Excel 文件。
Excel VBA编程打开工作簿打开工作簿,即启动Excel组件,使该工作簿处于激活状态,并显示工作簿的内容。
在VBA 中,用户可以使用Open方法打开一个工作簿。
语法:表达式Open(FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Notify, Converter, AddToMru)其中,在该方法中,各个参数均为可选参数,它们的功能如下表15-1所示。
例如,打开一个D盘上名为“学生成绩表”工作簿,其代码如下:Sub OpenUp()Workbooks.Open ("D:\学生成绩表.xlsx")End Sub若用户不清楚工作簿的具体存放位置,可以借于【打开】对话框,在该对话框中选择合适的文件进行打开,其代码如下:Sub SelectFile()'定义变量Dim FileName As VariantDim sFileName As StringDim sPathName As StringDim aFile As Variant'调用Windows打开文件对话框FileName = Application.GetOpenFilename("Excel 文件(*.xlsx),*.xlsx")'如果未按“取消”键If FileName <> False Then'在全路径中,以“\”为分隔符,分成数据aFile = Split(FileName, "\")'取盘符sPathName = aFile(0)'循环合成路径名For i = 1 To UBound(aFile) - 1' sPathName = sPathName & "\" & aFile(i)Next'数组的最后一个元素为文件名sFileName = aFile(UBound(aFile))Workbooks.Open sFileNameEnd IfEnd Sub运行上述的代码,即可弹出【打开】对话框,在该对话框中,选择需要打开的文件名,如选择“日程表.xlsx”工作簿,单击【打开】按钮,即可打开如图15-1所示的“日程表”工作簿。
VB打开EXCEL的方法在Visual Basic中,可以使用多种方法打开Excel文件。
以下是其中一些常用的方法。
1. 使用Excel对象库:使用Excel对象库可以直接在VB中打开Excel文件,并获取其内容。
首先,需要在VB项目中引用Excel对象库。
打开VB项目,在树状视图中选择"项目",然后选择"引用"。
在"可用组件"中找到"Microsoft Excel x.x Object Library"(其中 x.x 是Excel的版本号),勾选并点击"确定"。
接下来,可以使用以下代码打开Excel文件:```vbImports Excel = Microsoft.Office.Interop.ExcelDim xlApp As Excel.ApplicationDim xlWorkbook As Excel.WorkbookDim xlWorksheet As Excel.Worksheet' 创建Excel应用程序对象xlApp = New Excel.ApplicationxlApp.Visible = True' 打开Excel文件xlWorkbook =xlApp.Workbooks.Open("C:\path\to\your\excel\file.xlsx") xlWorksheet = xlWorkbook.Worksheets(1) ' 打开第一个工作表```通过以上代码,将打开Excel文件并将第一个工作表赋值给xlWorksheet 变量。
2. 使用OleDb连接:除了使用Excel对象库,还可以使用OleDb连接字符串来打开Excel 文件。
这种方法不需要引用Excel对象库,并且适用于各种版本的Excel 文件。
```vbImports System.Data.OleDbDim connectionString As String ="Provider=Microsoft.ACE.OLEDB.12.0;DataSource=C:\path\to\your\excel\file.xlsx;Extended Properties=Excel 12.0"Dim connection As OleDbConnection = NewOleDbConnection(connectionString)Dim adapter As OleDbDataAdapterDim dataSet As DataSet'打开连接connection.Open' 读取Excel数据dataSet = New DataSetadapter.Fill(dataSet)' 将数据加载到DataGridView控件DataGridView1.DataSource = dataSet.Tables(0)'关闭连接connection.Close```以上代码使用OleDb连接字符串连接到Excel文件,并将数据加载到DataSet中。
用VB操作Excel详解一、VB读写EXCEL表:VB本身提自动化功能可以读写EXCEL表,其方法如下:1、在工程中引用Microsoft Excel类型库:从"工程"菜单中选择"引用"栏;选择Microsoft Excel 9.0 Object Library(EXCEL2000),然后选择"确定"。
表示在工程中要引用EXCEL类型库。
2、在通用对象的声明过程中定义EXCEL对象:Dim xlApp As Excel.ApplicationDim xlBook As Excel.WorkBookDim xlSheet As Excel.Worksheet3、在程序中操作EXCEL表常用命令:Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象Set xlBook = xlApp.Workbooks.Open("文件名") '打开已经存在的EXCEL工件簿文件xlApp.Visible = True '设置EXCEL对象可见(或不可见)Set xlSheet = xlBook.Worksheets("表名") '设置活动工作表xlSheet.Cells(row, col) =值'给单元格(row,col)赋值xlSheet.PrintOut '打印工作表xlBook.Close (True) '关闭工作簿xlApp.Quit '结束EXCEL对象Set xlApp = Nothing '释放xlApp对象xlBook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏xlBook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏4、在运用以上VB命令操作EXCEL表时,除非设置EXCEL对象不可见,否则VB程序可继续执行其它操作,也能够关闭EXCEL,同时也可对EXCEL进行操作。
VB打开EXCEL的方法一楼的没有指明Dim xlBook As Excel.WorkBookSet xlBook = App.Workbooks.Open("文件名")这种语法同样要求excel已经存在才能操作。
Public xlApp As Excel.ApplicationPublic xlBook As Excel.WorkbookPublic xlChar As New Excel.ChartPublic xlSheet As New Excel.WorksheetSet xlApp = New Excel.ApplicationSet xlApp = CreateObject("Excel.Application")Set xlBook = xlApp.Workbooks.AddSet xlSheet = xlBook.Worksheets.AddxlSheet.Cells(1, 1) = "测试" '写入内容xlBook.SaveAs ("FILENAME") '保存文件xlApp.QuitSet xlApp = Nothing本方法采用add添加excel文件和datasheet,然后用save保存。
如果用xlAp p.Visible=False,则自动生成文件。
但是如果文件已经存在,则会弹出是否覆盖的提示。
因此,最好先在程序中检查文件是否已经存在,如果存在,则用普通方法打开。
如果不存在,则用add添加,并保存。
★打开相对路径下的文件Private Sub Command1_Click()Shell App.Path & "\aaa.bat"End Sub还有更简单的:Private Sub Command1_Click()Shell "aaa.bat"End Subaaa.bat就是那个BAT的名字.那就不一定......因为SHELL只对可执行文件有效.你可用WINDOWS外壳程序explorer.exe打开任何文件(包括文件夹)代码:Private Sub Command1_Click()Shell "explore.exe aaa.jpg"End Sub★VB调用EXCEL自带的查询功能在表格中查找内容Private Sub ComCx_Click()On Error GoTo 50i = xlBook.Worksheets("代码").Range("A:A").Find(Trim(TexDm.Text)).Row★将程序中所有这一类的对象的某一属性全部更改为需要的属性Dim Item As Object '定义对象For Each Item In MeIf TypeOf Item Is TextBox Then Item.Text = "" '将所有TextBox的Te xt属性值变为空If TypeOf Item Is ComboBox Then Item.ListIndex = -1 '将所有的Com boBox的ListIndex属性值变为“-1”NextIf Not i = 0 ThenDm = Trim(TexDm.Text)Sm = Trim(xlBook.Worksheets("代码").Cells(i, "B").Value)Dw = Trim(xlBook.Worksheets("代码").Cells(i, "D").Value)TexSm.Text = Sm & " " & "(" & Dw & ")"ComQd.Visible = TrueGoTo 100End If50TexSm.Text = "没有找到相匹配的信息!"100End Sub★如何使编的程序可以调用excel首先要引用再定义对象及其类型Dim xlApp As Excel.ApplicationDim xlBook As Excel.WorkbookDim xlSheet As Excel.WorksheetSet xlApp = CreateObject("Excel.Application") '创建E XCEL对象Set xlBook = xlApp.Workbooks.Open("D:\检包组\合金厂代码查询\xls\合金JDE代码.xls")xlApp.Visible = FalseSet xlSheet = xlBook.Worksheets("确认信息")★另存为ChDir "D:\"ActiveWorkbook.SaveAs Filename:="D:\合金厂产品质检明细表.xls", FileFormat:=xlExcel8, _Password:="", WriteResPassword:="", ReadOnlyRecommende d:=False, _CreateBackup:=FalseVB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便。
vb打开excel文件(VB opens the excel file)VB opens the complete code for the Excel file, including checking if the file exists and whether the file is open.Private, Sub, Open_Excel ()Dim xlApp As excel.ApplicationDim xlBook As excel.WorkbookFileName = the specific path of the fileOn Error Resume Next"Set xlApp = GetObject (" Excel.Application ") determines whether Excel is openIf Err.Number < > 0 ThenSet xlApp = CreateObject ('Excel.Application') 'creates a EXCEL objectXlApp.Visible = False 'sets the EXCEL object invisibleEnd IfErr.ClearIf Dir (App.Path & FileName) = 'Then' determines whether the file existsMsgBox App.Path & FileName & "not found"! "VbOKOnly," friendship tips"Exit SubEnd If'determine if the file is openFor, Each, xlBook, In, xlApp.WorkbooksIf = Mid (FileName, 2) Then"MsgBox" the file is open! Please do not repeat it. "VbOKOnly," friendship tips"XlBook.ActivateXlApp.WindowState = xlMaximizedExit SubEnd IfNextSet xlBook = xlApp.Workbooks.Open (App.Path & FileName) opens the artifact fileXlBook.RunAutoMacros (xlAutoOpen) 'runs EXCEL to start macro'xlBook.RunAutoMacros (xlAutoClose) 'runs EXCEL and closes macroXlApp.Visible = TrueEnd SubClick the cell to eject the dialog boxThe A1 selected in Sheet1 pops up the dialog boxPress Alt+F11 to enter the VBA environment, enter the Sheet1 module and enter belowPrivate, Sub, Worksheet_SelectionChange (ByVal, Target, As, Range)If, Target.Row = 1, And, Target.Column = 1, ThenMsgBox "Input message.", "vbOKOnly + vbInformation", "title""End IfEnd SubVB grab the pictures in the folderReward points: 85 - solve the time: 2009-2-12 22:24I want to implement VB, insert a folder picture into EXCEL, and use EXCEL macro,Set Photo = ActiveSheet.Pictures.Insert("G:\sec\benq1620\1494025674.jpg"), this code can only be inserted one, my idea is to automatically traverse the disk file, then according to the established time, using cyclic method into EXCEL, you help me ah ~ ~ urgently 80 points reward ahOption Base 1Dim FSDim fDim FDPublic Type picFileFullName As StringDateCreated As Date'LaseModified As Date端式昏暗的多为整数昏暗的arrpics()作为picfile子test()将字符串作为字符串SF = InputBox(“您要在哪个文件夹中查找图片?”和“vbcrlf请在下面输入它的完整路径:”,“提示”)的获取用户输入的文件夹如果对(SF 1)<>“\”然后SF = SF和“\”设置FS = CreateObject(“脚本。
用VB操作Excel(VB6.0)(整理)全面控制Excel:首先创建Excel对象,使用ComObj:Dim ExcelID as Excel.ApplicationSet ExcelID as new Excel.Application1)显示当前窗口:ExcelID.Visible:=True;2)更改Excel标题栏:ExcelID.Caption:='应用程序调用MicrosoftExcel';3)添加新工作簿:ExcelID.WorkBooks.Add;4)打开已存在的工作簿:ExcelID.WorkBooks.Open('C:\Excel\Demo.xls');5)设置第2个工作表为活动工作表:ExcelID.WorkSheets[2].Activate;或ExcelID.WorkSheets['Sheet2'].Activate;6)给单元格赋值:ExcelID.Cells[1,4].Value:='第一行第四列';7)设置指定列的宽度(单位:字符个数),以第一列为例:ExcelID.ActiveSheet.Columns[1].ColumnsWidth:=5;8)设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:ExcelID.ActiveSheet.Rows[2].RowHeight:=1/0.035;//1厘米9)在第8行之前插入分页符:ExcelID.WorkSheets[1].Rows[8].PageBreak:=1;10)在第8列之前删除分页符:ExcelID.ActiveSheet.Columns[4].PageBreak:=0;11)指定边框线宽度:ExcelID.ActiveSheet.Range['B3:D4'].Borders[2].Weight:=3; 1-左 2-右 3-顶4-底 5-斜(\) 6-斜(/)12)清除第一行第四列单元格公式:ExcelID.ActiveSheet.Cells[1,4].ClearContents;13)设置第一行字体属性:ExcelID.ActiveSheet.Rows[1]:='隶书';ExcelID.ActiveSheet.Rows[1].Font.Color :=clBlue;ExcelID.ActiveSheet.Rows[1].Font.Bold :=True;ExcelID.ActiveSheet.Rows[1].Font.UnderLine:=True;14)进行页面设置:a.页眉:ExcelID.ActiveSheet.PageSetup.CenterHeader:='报表演示';b.页脚:ExcelID.ActiveSheet.PageSetup.CenterFooter:='第&P页';c.页眉到顶端边距2cm:ExcelID.ActiveSheet.PageSetup.HeaderMargin:=2/0.035;d.页脚到底端边距3cm:ExcelID.ActiveSheet.PageSetup.HeaderMargin:=3/0.035;e.顶边距2cm:ExcelID.ActiveSheet.PageSetup.TopMargin:=2/0.035;f.底边距2cm:ExcelID.ActiveSheet.PageSetup.BottomMargin:=2/0.035;g.左边距2cm:ExcelID.ActiveSheet.PageSetup.LeftMargin:=2/0.035;h.右边距2cm:ExcelID.ActiveSheet.PageSetup.RightMargin:=2/0.035;i.页面水平居中:ExcelID.ActiveSheet.PageSetup.CenterHorizontally:=2/0.035; j.页面垂直居中:ExcelID.ActiveSheet.PageSetup.CenterVertically:=2/0.035; k.打印单元格网线:ExcelID.ActiveSheet.PageSetup.PrintGridLines:=True;15)拷贝操作:a.拷贝整个工作表:ed.Range.Copy;b.拷贝指定区域:ExcelID.ActiveSheet.Range['A1:E2'].Copy;c.从A1位置开始粘贴:ExcelID.ActiveSheet.Range.['A1'].PasteSpecial;d.从文件尾部开始粘贴:ExcelID.ActiveSheet.Range.PasteSpecial;16)插入一行或一列:a.ExcelID.ActiveSheet.Rows[2].Insert;b.ExcelID.ActiveSheet.Columns[1].Insert;17)删除一行或一列:a.ExcelID.ActiveSheet.Rows[2].Delete;b.ExcelID.ActiveSheet.Columns[1].Delete;18)打印预览工作表:ExcelID.ActiveSheet.PrintPreview;19)打印输出工作表:ExcelID.ActiveSheet.PrintOut;20)工作表保存:IfnotExcelID.ActiveWorkBook.SavedthenExcelID.ActiveSheet.PrintPreviewEndif ????打印预览21)工作表另存为:ExcelID.SaveAs('C:\Excel\Demo1.xls');22)放弃存盘:ExcelID.ActiveWorkBook.Saved:=True;23)关闭工作簿:ExcelID.WorkBooks.Close;24)退出Excel:ExcelID.Quit;25)设置工作表密码:ExcelID.ActiveSheet.Protect"123",DrawingObjects:=True,Cont ents:=True,Scenarios:=True26)EXCEL的显示方式为最大化ExcelID.Application.WindowState=xlMaximized27)工作薄显示方式为最大化ExcelID.ActiveWindow.WindowState=xlMaximized28)设置打开默认工作薄数量ExcelID.SheetsInNewWorkbook=329)'关闭时是否提示保存(true保存;false不保存)ExcelID.DisplayAlerts=False30)设置拆分窗口,及固定行位置ExcelID.ActiveWindow.SplitRow=1ExcelID.ActiveWindow.FreezePanes=True31)设置打印时固定打印内容ExcelID.ActiveSheet.PageSetup.PrintTitleRows="$1:$1"32)设置打印标题ExcelID.ActiveSheet.PageSetup.PrintTitleColumns=""33)设置显示方式(分页方式显示)ExcelID.ActiveWindow.View=xlPageBreakPreview34)设置显示比例ExcelID.ActiveWindow.Zoom=10035)让Excel响应DDE请求Ex.Application.IgnoreRemoteRequests=False用VB操作EXCEL示例代码Private Sub Command3_Click()On Error GoTo err1Dim i As LongDim j As LongDim objExl As Excel.Application '声明对象变量Me.MousePointer=11 '改变鼠标样式Set objExl=New Excel.Application'初始化对象变量objExl.SheetsInNewWorkbook=1 '将新建的工作薄数量设为1 objExl.Workbooks.Add'增加一个工作薄objExl.Sheets(objExl.Sheets.Count).Name="book1" '修改工作薄名称objExl.Sheets.Add,objExl.Sheets("book1")‘增加第二个工作薄在第一个之后objExl.Sheets(objExl.Sheets.Count).Name="book2"objExl.Sheets.Add,objExl.Sheets("book2")‘增加第三个工作薄在第二个之后objExl.Sheets(objExl.Sheets.Count).Name="book3"objExl.Sheets("book1").Select '选中工作薄<book1>For i=1 To 50'循环写入数据For j=1 To 5If i=1 ThenobjExl.Selection.NumberFormatLocal="@" '设置格式为文本objExl.Cells(i,j)="E"&i&jElseobjExl.Cells(i,j)=i&jEndIfNextNextobjExl.Rows("1:1").Select '选中第一行objExl.Selection.Font.Bold=True '设为粗体objExl.Selection.Font.Size=24 '设置字体大小objExl.Cells.EntireColumn.AutoFit '自动调整列宽objExl.ActiveWindow.SplitRow=1 '拆分第一行objExl.ActiveWindow.SplitColumn=0 '拆分列objExl.ActiveWindow.FreezePanes=True '固定拆分objExl.ActiveSheet.PageSetup.PrintTitleRows="$1:$1" '设置打印固定行objExl.ActiveSheet.PageSetup.PrintTitleColumns=""'打印标题objExl.ActiveSheet.PageSetup.RightFooter="打印时间:"&_Format(Now,"yyyy年mm月dd日hh:MM:ss")objExl.ActiveWindow.View=xlPageBreakPreview'设置显示方式objExl.ActiveWindow.Zoom=100 '设置显示大小'给工作表加密码objExl.ActiveSheet.Protect"123",DrawingObjects:=True, _ Contents:=True,Scenarios:=TrueobjExl.Application.IgnoreRemoteRequests=FalseobjExl.Visible=True '使EXCEL可见objExl.Application.WindowState=xlMaximized'EXCEL的显示方式为最大化objExl.ActiveWindow.WindowState=xlMaximized'工作薄显示方式为最大化objExl.SheetsInNewWorkbook=3 '将默认新工作薄数量改回3个Set objExl=Nothing'清除对象Me.MousePointer=0 '修改鼠标ExitSuberr1:objExl.SheetsInNewWorkbook=3objExl.DisplayAlerts=False '关闭时不提示保存 objExl.Quit'关闭EXCELobjExl.DisplayAlerts=True '关闭时提示保存Set objExl=NothingMe.MousePointer=0End Sub。
VB打开EXCEL的方法一楼的没有指明Dim xlBook As Excel.WorkBookSet xlBook = App.Workbooks.Open("文件名")这种语法同样要求excel已经存在才能操作。
Public xlApp As Excel.ApplicationPublic xlBook As Excel.WorkbookPublic xlChar As New Excel.ChartPublic xlSheet As New Excel.WorksheetSet xlApp = New Excel.ApplicationSet xlApp = CreateObject("Excel.Application")Set xlBook = xlApp.Workbooks.AddSet xlSheet = xlBook.Worksheets.AddxlSheet.Cells(1, 1) = "测试" '写入内容xlBook.SaveAs ("FILENAME") '保存文件xlApp.QuitSet xlApp = Nothing本方法采用add添加excel文件和datasheet,然后用save保存。
如果用xlA pp.Visible=False,则自动生成文件。
但是如果文件已经存在,则会弹出是否覆盖的提示。
因此,最好先在程序中检查文件是否已经存在,如果存在,则用普通方法打开。
如果不存在,则用add添加,并保存。
★打开相对路径下的文件Private Sub Command1_Click()Shell App.Path & "\aaa.bat"End Sub还有更简单的:Private Sub Command1_Click()Shell "aaa.bat"End Subaaa.bat就是那个BAT的名字.那就不一定......因为SHELL只对可执行文件有效.你可用WINDOWS外壳程序explorer.exe打开任何文件(包括文件夹)代码:Private Sub Command1_Click()Shell "explore.exe aaa.jpg"End Sub★VB调用EXCEL自带的查询功能在表格中查找内容Private Sub ComCx_Click()On Error GoTo 50i = xlBook.Worksheets("代码").Range("A:A").Find(Trim(TexDm.Text)).Ro w★将程序中所有这一类的对象的某一属性全部更改为需要的属性Dim Item As Object '定义对象For Each Item In MeIf TypeOf Item Is TextBox Then Item.Text = "" '将所有TextBox的Tex t属性值变为空If TypeOf Item Is ComboBox Then Item.ListIndex = -1 '将所有的Co mboBox的ListIndex属性值变为“-1”NextIf Not i = 0 ThenDm = Trim(TexDm.Text)Sm = Trim(xlBook.Worksheets("代码").Cells(i, "B").Value)Dw = Trim(xlBook.Worksheets("代码").Cells(i, "D").Value)TexSm.Text = Sm & " " & "(" & Dw & ")"ComQd.Visible = TrueGoTo 100End If50TexSm.Text = "没有找到相匹配的信息!"100End Sub★如何使编的程序可以调用excel首先要引用再定义对象及其类型Dim xlApp As Excel.ApplicationDim xlBook As Excel.WorkbookDim xlSheet As Excel.WorksheetSet xlApp = CreateObject("Excel.Application") '创建EXCEL对象Set xlBook = xlApp.Workbooks.Open("D:\检包组\合金厂代码查询\xls\合金JDE代码.xls")xlApp.Visible = FalseSet xlSheet = xlBook.Worksheets("确认信息")★另存为ChDir "D:\"ActiveWorkbook.SaveAs Filename:="D:\合金厂产品质检明细表.xls", Fil eFormat:=xlExcel8, _Password:="", WriteResPassword:="", ReadOnlyRecommended:=F alse, _CreateBackup:=FalseVB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便。
因此有很多程序员现在已经充分利用EXECL的强大报表功来实现报表功能。
但由于VB与EXCEL由于分别属于不同的应用系统,如何把它们有机地结合在一起,是一个值得我们研究的课题。
一、VB读写EXCEL表:VB本身提自动化功能可以读写EXCEL表,其方法如下:1、在工程中引用Microsoft Excel类型库:从"工程"菜单中选择"引用"栏;选择Microsoft Excel 9.0 Object Librar y(EXCEL2000),然后选择"确定"。
表示在工程中要引用EXCEL类型库。
2、在通用对象的声明过程中定义EXCEL对象:Dim xlApp As Excel.ApplicationDim xlBook As Excel.WorkBookDim xlSheet As Excel.Worksheet3、在程序中操作EXCEL表常用命令:Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象Set xlBook = xlApp.Workbooks.Open("文件名") '打开已经存在的EXCEL 工件簿文件xlApp.Visible = True '设置EXCEL对象可见(或不可见)Set xlSheet = xlBook.Worksheets("表名") '设置活动工作表xlSheet.Cells(row, col) =值'给单元格(row,col)赋值xlSheet.PrintOut '打印工作表xlBook.Close (True) '关闭工作簿xlApp.Quit '结束EXCEL对象Set xlApp = Nothing '释放xlApp对象xlBook.RunAutoMacros (xlAutoOpen) '运行EXCEL启动宏xlBook.RunAutoMacros (xlAutoClose) '运行EXCEL关闭宏4、在运用以上VB命令操作EXCEL表时,除非设置EXCEL对象不可见,否则VB程序可继续执行其它操作,也能够关闭EXCEL,同时也可对EXCEL进行操作。
但在EXCEL操作过程中关闭EXCEL对象时,VB程序无法知道,如果此时使用EXCEL对象,则VB程序会产生自动化错误。
形成VB程序无法完全控制EXCEL的状况,使得VB与EXCEL脱节。
二、EXCEL的宏功能:EXCEL提供一个Visual Basic编辑器,打开Visual Basic编辑器,其中有一工程属性窗口,点击右键菜单的"插入模块",则增加一个"模块1",在此模块中可以运用Visual Basic语言编写函数和过程并称之为宏。
其中,EXCEL有两个自动宏:一个是启动宏(Sub Auto_Open()),另一个是关闭宏(Sub Auto_Close())。
它们的特性是:当用EXCEL打含有启动宏的工簿时,就会自动运行启动宏,同理,当关闭含有关闭宏的工作簿时就会自动运行关闭宏。
但是通过VB的自动化功能来调用EXCEL 工作表时,启动宏和关闭宏不会自动运行,而需要在VB中通过命令xlBook.RunAutoMacros (xlAutoOpen)和xlBook.RunAutoMacros (xlAuto Close) 来运行启动宏和关闭宏。
三、VB与EXCEL的相互勾通:充分利用EXCEL的启动宏和关闭宏,可以实现VB与EXCEL的相互勾通,其方法如下:在EXCEL的启动宏中加入一段程序,其功能是在磁盘中写入一个标志文件,同时在关闭宏中加入一段删除此标志文件的程序。
VB程序在执行时通过判断此标志文件存在与否来判断EXCEL是否打开,如果此标志文件存在,表明EXCEL对象正在运行,应该禁止其它程序的运行。
如果此标志文件不存在,表明EXCEL对象已被用户关闭,此时如果要使用EXC EL对象运行,必须重新创建EXCEL对象。
四、举例:1、在VB中,建立一个FORM,在其上放置两个命令按钮,将Comman d1的Caption属性改为EXCEL,Command2的Caption属性改为End。
然后在其中输入如下程序:Dim xlApp As Excel.Application '定义EXCEL类Dim xlBook As Excel.Workbook '定义工件簿类Dim xlsheet As Excel.Worksheet '定义工作表类Private Sub Command1_Click() '打开EXCEL过程If Dir("D:\temp\excel.bz") = "" Then '判断EXCEL是否打开Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类xlApp.Visible = True '设置EXCEL可见Set xlBook = xlApp.Workbooks.Open("D:\temp\bb.xls") '打开EXCE L工作簿Set xlsheet = xlBook.Worksheets(1) '打开EXCEL工作表xlsheet.Activate '激活工作表xlsheet.Cells(1, 1) = "abc" '给单元格1行驶列赋值xlBook.RunAutoMacros (xlAutoOpen) '运行EXCEL中的启动宏ElseMsgBox ("EXCEL已打开")End SubPrivate Sub Command2_Click()If Dir("D:\temp\excel.bz") <> "" Then '由VB关闭EXCELxlBook.RunAutoMacros (xlAutoClose) '执行EXCEL关闭宏xlBook.Close (True) '关闭EXCEL工作簿xlApp.Quit '关闭EXCELEnd IfSet xlApp = Nothing '释放EXCEL对象EndEnd Sub2、在D盘根目录上建立一个名为Temp的子目录,在Temp目录下建立一个名为"bb.xls"的EXCEL文件。