




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VBS操作Excel常见方法_933VBS操作Excel常见方法dim oExcel,oWb,oSheet Set oExcel= CreateObject(Excel.Application) Set oWb = oExcel.Workbooks.Open(E:其他新装电话表.xls) Set oSheet = oWb.Sheets(Sheet1) MsgBox oSheet.Range(B2).Value #提取单元格B2内容 . 3、如果是XP系统,可以使用如下代码 Dim objFileDlg Set objFileDlg = CreateObject(UserAccounts.CommonDialog) objFileDlg.Filter = Excel File (*.xls) |*.xls If objFileDlg.ShowOpen Then msgbox 您选择的文件是: & objFileDlg.FileName & vbCrLf End If VBS控制Excel的一些常见方法: (一) 使用动态创建的方法 首先创建 Excel 对象,使用ComObj: oExcel = CreateObject( Excel.Application ) 1) 显示当前窗口: oExcel.Visible = True 2) 更改 Excel 标题栏: oExcel.Caption = 应用程序调用 Microsoft Excel 3) 添加新工作簿: oExcel.WorkBooks.Add 4) 打开已存在的工作簿: oExcel.WorkBooks.Open( C:ExcelDemo.xls ) 5) 设置第2个工作表为活动工作表: oExcel.WorkSheets(2).Activate 或 oExcel.WorksSheets( Sheet2 ).Activate 6) 给单元格赋值: oExcel.Cells(1,4).Value = 第一行第四列 7) 设置指定列的宽度(单位:字符个数),以第一列为例: oExcel.ActiveSheet.Columns(1).ColumnsWidth = 5 8) 设置指定行的高度(单位:磅)(1磅0.035厘米),以第二行为例: oExcel.ActiveSheet.Rows(2).RowHeight = 1/0.035 1厘米 9) 在第8行之前插入分页符: oExcel.WorkSheets(1).Rows(8).PageBreak = 1 10) 在第8列之前删除分页符: oExcel.ActiveSheet.Columns(4).PageBreak = 0 11) 指定边框线宽度: oExcel.ActiveSheet.Range( B3:D4 ).Borders(2).Weight = 3 1-左 2-右 3-顶 4-底 5-斜( ) 6-斜( / ) 12) 清除第一行第四列单元格公式: oExcel.ActiveSheet.Cells(1,4).ClearContents 13) 设置第一行字体属性: oExcel.ActiveSheet.Rows(1).Font.Name = 隶书 oExcel.ActiveSheet.Rows(1).Font.Color = clBlue oExcel.ActiveSheet.Rows(1).Font.Bold = True oExcel.ActiveSheet.Rows(1).Font.UnderLine = True 14) 进行页面设置: a.页眉: oExcel.ActiveSheet.PageSetup.CenterHeader = 报表演示 b.页脚: oExcel.ActiveSheet.PageSetup.CenterFooter = 第&P页 c.页眉到顶端边距2cm: oExcel.ActiveSheet.PageSetup.HeaderMargin = 2/0.035 d.页脚到底端边距3cm: oExcel.ActiveSheet.PageSetup.HeaderMargin = 3/0.035 e.顶边距2cm: oExcel.ActiveSheet.PageSetup.TopMargin = 2/0.035 f.底边距2cm: oExcel.ActiveSheet.PageSetup.BottomMargin = 2/0.035 g.左边距2cm: oExcel.ActiveSheet.PageSetup.LeftMargin = 2/0.035 h.右边距2cm: oExcel.ActiveSheet.PageSetup.RightMargin = 2/0.035 i.页面水平居中: oExcel.ActiveSheet.PageSetup.CenterHorizontally = 2/0.035 j.页面垂直居中: oExcel.ActiveSheet.PageSetup.CenterVertically = 2/0.035 k.打印单元格网线: oExcel.ActiveSheet.PageSetup.PrintGridLines = True 15) 拷贝操作: a.拷贝整个工作表: oExcel.ActiveSheet.Used.Range.Copy b.拷贝指定区域: oExcel.ActiveSheet.Range( A1:E2 ).Copy c.从A1位置开始粘贴: oExcel.ActiveSheet.Range.( A1 ).PasteSpecial d.从文件尾部开始粘贴: oExcel.ActiveSheet.Range.PasteSpecial 16) 插入一行或一列: a. oExcel.ActiveSheet.Rows(2).Insert b. oExcel.ActiveSheet.Columns(1).Insert 17) 删除一行或一列: a. oExcel.ActiveSheet.Rows(2).Delete b. oExcel.ActiveSheet.Columns(1).Delete 18) 打印预览工作表: oExcel.ActiveSheet.PrintPreview 19) 打印输出工作表: oExcel.ActiveSheet.PrintOut 20) 工作表保存: if not oExcel.ActiveWorkBook.Saved then oExcel.ActiveSheet.PrintPreview 21) 工作表另存为: oExcel.SaveAs( C:ExcelDemo1.xls ) 22) 放弃存盘: oExcel.ActiveWorkBook.Saved = True 23) 关闭工作簿: oExcel.WorkBooks.Close 24) 退出 Excel: oExcel.Quit (二) 使用VBS 控制Excle二维图 1)选择当第一个工作薄第一个工作表 set oSheet=oExcel.Workbooks(1).Worksheets(1) 2)增加一个二维图 achart=oSheet.chartobjects.add(100,100,200,200) 3)选择二维图的形态 achart.chart.charttype=4 4)给二维图赋值 set series=achart.chart.seriescollection range=sheet1!r2c3:r3c9 series.add range,true 5)加上二维图的标题 achart.Chart.HasTitle=True achart.Chart.ChartTitle.Characters.Text= Excle二维图 6)改变二维图的标题字体大小 achart.Chart.ChartTitle.Font.size=18 7)给二维图加下标说明 achart.Chart.Axes(xlCategory, xlPrimary).HasTitle = True achart.Chart.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = 下标说明 8)给二维图加左标说明 achart.Chart.Axes(xlValue, xlPrimary).HasTitle = True achart.Chart.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = 左标说明 9)给二维图加右标说明 achart.Chart.Axes(xlValue, xlSecondary).HasTitle = True achart.Chart.Axes(xlValue, xlSecondary).AxisTitle.Characters.Text = 右标说明 10)改变二维图的显示区大小 achart.Chart.PlotArea.Left = 5 achart.Chart.PlotArea.Width = 223 achart.Chart.PlotArea.Height = 108 如何用vbs把excel的单元格数据写到txt 复制代码 代码如下: If WScript.Arguments.Count 0 Then Filename = WScript.Arguments(0) Set a = CreateObject(Excel.Application) If Filename = Then Filename = a.GetOpenFilename(Excel Files (*.xls), *.xls) If VarType(Filename) = vbBoolean Then MsgBox Excel2Txt用于将Excel文件的每个Sheet保存为一个文本文件。 & vbCr & vbLf & vbCr & vbLf & 用法: Excel2Txt filename.xls 或在对话框中打开Excel文件。 WScript.Quit End If End If Set w = a.Workbooks.Open(Filename) n = Replace(Replace(w.Name, .xls, ), .XLS, ) a.DisplayAlerts = False For Each s In w.Sheets s.SaveAs w.Path & & n & _ & s.Name & .txt, 20 Next a.Quit 把以上代码存为Excel2Txt.vbs双击执行就行了 VBS操作Excel 复制代码 代码如下: Set objExcel = CreateObject(Excel.Application) 建一个exel对象 Set objWorkbook = objExcel.Workbooks.Open _ (E:DOCHewl领域模型.xls) 打开文件 strToBeWrited = - & vbcrlf & _ - Generated by ScriptGenerator - & vbcrlf & _ - & vbcrlf & vbcrlf Count = objWorkbook.WorkSheets.Count 取sheet数量 Set my = CreateObject(Excel.Sheet) 新建sheet对象 For Each my In objWorkbook.WorkSheets 遍历sheet If my.Name = 目录 or my.Name = SecondHandHouse Then do nothing Else Wscript.Echo my.Name 获得sheet名字 Wscript.Echo my.Rows.Count strToBeWrited = strToBeWrited & create table & my.Name & vbcrlf strToBeWrited = strToBeWrited & /*=*/ & vbcrlf strToBeWrited = strToBeWrited & /* Table: & my.Name & */ & vbcrlf strToBeWrited = strToBeWrited & /*=*/ & vbcrlf strToBeWrited = strToBeWrited & create table & my.Name & ( & vbcrlf rowNum = 3 Do Until my.Cells(rowNum,1).Value = Wscript.Echo sAMAccountName: & my.Cells(rowNum, 2).Value strToBeWrited = strToBeWrited & & my.Cells(rowNum,2).Value & & my.Cells(rowNum,3).Value & not null If not my.Cells(rowNum,9).Value = Then strToBeWrited = strToBeWrited & default & my.Cells(rowNum,9).Value End If strToBeWrited = strToBeWrited & , & vbcrlf rowNum = rowNum + 1 Loop strToBeWrited = strToBeWrited & constraint PK_ & my.Name & primary key (id) & vbcrlf strToBeWrited = strToBeWrited & ) & vbcrlf End If strToBeWrited = strToBeWrited & vbcrlf Next For Each my In objWorkbook.WorkSheets 遍历sheet If my.Name = 目录 or my.Name = SecondHandHouse Then do nothing Else strToBeWrited = strToBeWrited & constraint PK_ & my.Name & primary key (id) & vbcrlf strToBeWrited = strToBeWrited & ) & vbcrlf End If strToBeWrited = strToBeWrited & vbcrlf Next 写文件 set fs =createobject(scripting.filesystemobject) set f = fs.opentextfile(E:DOCHewldbscript.sql,2, true) Wscript.Echo strToBeWrited f.write strToBeWrited f.close Set f = nothing Set fs = nothing objExcel.Quit 结束退出 复制代码 代码如下: Dim Excel Set Excel = CreateObject(Excel.Application) 不显示提示信息,这样保存的时候就不会提示是否要覆盖原文件 Excel.DisplayAlerts=FALSE 调用EXCEL文件的时候不显示 Excel.visible=FALSE Excel.workbooks.open(D:test.XLS) 将sheet1设置为活动sheet Excel.workbooks(1).activate 插入行,这条我找MSDN都没找到,最后乱试试出来的 Excel.ActiveSheet.rows(1).insert Excel.ActiveSheet.Cells(1,1).Value = Date Excel.ActiveSheet.Cells(1,2).Va
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025广东广州市天河区卫生健康系统事业单位招聘专业技术人员105人(第一批)模拟试卷(含答案详解)
- 2025湖南郴州市第一人民医院招聘专技人员考前自测高频考点模拟试题及答案详解(全优)
- 2025年湖南娄底市城市发展控股集团有限公司外派人员选聘模拟试卷及答案详解(典优)
- 2025年黑河市孙吴县卫生健康局乡村医生公开招聘8人模拟试卷及参考答案详解一套
- 2025辽宁铁岭市调兵山市第二批公岗招聘15人模拟试卷(含答案详解)
- 2025江苏南京紫金山科技产业发展集团有限公司招聘3人考前自测高频考点模拟试题带答案详解
- 2025四川雅安市市属国有企业高级管理人员8人笔试题库历年考点版附带答案详解
- 2025中铝智能科技发展有限公司面向社会公开招聘4人笔试题库历年考点版附带答案详解
- 美国旅游景点
- 统编版语文七上第三单元整本书阅读《朝花夕拾》导读课 课件
- 2.3河流与湖泊第1课时课件-八年级地理上学期人教版
- 专题04 利用基本不等式求最值(压轴题8大类型专项训练)数学人教A版2019必修一(解析版)
- 2025上海浦东新区浦东公安分局文员招聘300人考试参考题库及答案解析
- 风险限额管理与应用
- 工程结算审核工作方案(3篇)
- 秋季企业施工安全培训内容课件
- 2025年秋期新教材人音版三年级上册小学音乐教学计划+进度表
- 中国心房颤动管理指南(2025)解读
- 2025年成人高考专升本民法真题及答案
- 2025-2026学年陕旅版(三起)(2024)小学英语四年级上册(全册)教学设计(附目录)
- 高血压防治知识课件下载
评论
0/150
提交评论