ImageVerifierCode 换一换
格式:DOC , 页数:18 ,大小:127KB ,
资源ID:7223924      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/7223924.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(Excel VBA 中的 Range 和 Cells 用法说明.doc)为本站上传会员【xrp****65】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

Excel VBA 中的 Range 和 Cells 用法说明.doc

1、 Range对象基本操作应用示例(1) Range对象可能是VBA代码中最常用的对象,Range对象可以是某一单元格、某一单元格区域、某一行、某一列、或者是多个连续或非连续的区域组成的区域。下面介绍Range对象的一些属性和方法。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-01] 赋值给某单元格 [示例05-01-01] Sub test1() Worksheets("Sheet1").Range("A5").Value = 22 MsgBox "工

2、作表Sheet1内单元格A5中的值为" _ & Worksheets("Sheet1").Range("A5").Value End Sub [示例05-01-02] Sub test2() Worksheets("Sheet1").Range("A1").Value = _ Worksheets("Sheet1").Range("A5").Value MsgBox "现在A1单元格中的值也为" & _ Worksheets("Sheet1").Range("A5").Value End Sub [示例05-01-03] Sub test3() MsgBox "用公式填

3、充单元格,本例为随机数公式" Range("A1:H8").Formula = "=Rand()" End Sub [示例05-01-04] Sub test4() Worksheets(1).Cells(1, 1).Value = 24 MsgBox "现在单元格A1的值为24" End Sub [示例05-01-05] Sub test5() MsgBox "给单元格设置公式,求B2至B5单元格区域之和" ActiveSheet.Cells(2, 1).Formula = "=Sum(B1:B5)" End Sub [示例05-01-06] Sub test6(

4、) MsgBox "设置单元格C5中的公式." Worksheets(1).Range("C5:C10").Cells(1, 1).Formula = "=Rand()" End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-02] 引用单元格 Sub Random() Dim myRange As Range '设置对单元格区域的引用 Set myRange = Worksheets("Sheet1").Range("A1:D5") '对Range

5、对象进行操作 myRange.Formula = "=RAND()" myRange.Font.Bold = True End Sub 示例说明:可以设置Range对象变量来引用单元格区域,然后对该变量所代表的单元格区域进行操作。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-03] 清除单元格 [示例05-03-01]清除单元格中的内容(ClearContents方法) Sub testClearContents() MsgBox "清除指定单元格区域中的内

6、容" Worksheets(1).Range("A1:H8").ClearContents End Sub [示例05-03-02]清除单元格中的格式(ClearFormats方法) Sub testClearFormats() MsgBox "清除指定单元格区域中的格式" Worksheets(1).Range("A1:H8").ClearFormats End Sub [示例05-03-03]清除单元格中的批注(ClearComments方法) Sub testClearComments() MsgBox "清除指定单元格区域中的批注" Worksheets(1).R

7、ange("A1:H8").ClearComments End Sub [示例05-03-04]清除单元格中的全部,包括内容、格式和批注(Clear方法) Sub testClear() MsgBox "彻底清除指定单元格区域" Worksheets(1).Range("A1:H8").Clear End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-04] Range和Cells Sub test() '设置单元格区域A1:J10的边框线条样式

8、With Worksheets(1) .Range(.Cells(1, 1), _ .Cells(10, 10)).Borders.LineStyle = xlThick End With End Sub 示例说明:可用 Range(cell1, cell2) 返回一个 Range 对象,其中cell1和cell2为指定起始和终止位置的Range对象。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-05] 选取单元格区域(Select方法) Sub testSe

9、lect() '选取单元格区域A1:D5 Worksheets("Sheet1").Range("A1:D5").Select End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-06] 基于所选区域偏离至另一区域(Offset属性) [示例05-06-01] Sub testOffset() Worksheets("Sheet1").Activate Selection.Offset(3, 1).Select End Sub 示例说明:可用Of

10、fset(row, column)(其中row和column为行偏移量和列偏移量)返回相对于另一区域在指定偏移量处的区域。如上例选定位于当前选定区域左上角单元格的向下三行且向右一列处单元格区域。 [示例05-06-02] 选取距当前单元格指定行数和列数的单元格 Sub ActiveCellOffice() MsgBox "显示距当前单元格第3列、第2行的单元格中的值" MsgBox ActiveCell.Offset(3, 2).Value End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

11、 - - - - - - [示例05-07] 调整区域的大小(Resize属性) Sub ResizeRange() Dim numRows As Integer, numcolumns As Integer Worksheets("Sheet1").Activate numRows = Selection.Rows.Count numcolumns = Selection.Columns.Count Selection.Resize(numRows + 1, numcolumns + 1).Select End Sub 示例说明:本示例调整所选区域的大小,使之增加一行一列。

12、 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-08] 选取多个区域(Union方法) Sub testUnion() Dim rng1 As Range, rng2 As Range, myMultiAreaRange As Range Worksheets("sheet1").Activate Set rng1 = Range("A1:B2") Set rng2 = Range("C3:D4") Set myMultiAreaRange = Union(rn

13、g1, rng2) myMultiAreaRange.Select End Sub 示例说明:可用 Union(range1, range2, ...) 返回多块区域,即该区域由两个或多个连续的单元格区域所组成。如上例创建由单元格区域A1:B2和C3:D4组合定义的对象,然后选定该定义区域。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-09] 激活已选区域中的单元格 Sub ActivateRange() MsgBox "选取单元格区域B2:D6并将C4选中"

14、 ActiveSheet.Range("B3:D6").Select Range("C5").Activate End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-10] 选取指定条件的单元格(SpecialCells方法) Sub SelectSpecialCells() MsgBox "选择当前工作表中所有公式单元格" ActiveSheet.Cells.SpecialCells(xlCellTypeFormulas).Select End Sub

15、 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-11] 选取矩形区域(CurrentRegion属性) '选取包含当前单元格的矩形区域 '该区域周边为空白行和空白列 Sub SelectCurrentRegion() MsgBox "选取包含当前单元格的矩形区域" ActiveCell.CurrentRegion.Select End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

16、 - - - - - - - - [示例05-12] 选取当前工作表中已用单元格(UsedRange属性) '选取当前工作表中已使用的单元格区域 Sub SelectUsedRange() MsgBox "选取当前工作表中已使用的单元格区域" _ & vbCrLf & "并显示其地址" ActiveSheet.UsedRange.Select MsgBox ActiveSheet.UsedRange.Address End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

17、 - [示例05-13] 选取最边缘单元格(End属性) '选取最下方的单元格 Sub SelectEndCell() MsgBox "选取当前单元格区域内最下方的单元格" ActiveCell.End(xlDown).Select End Sub 示例说明:可以改变参数xlDown以选取最左边、最右边、最上方的单元格。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-14]设置当前单元格的前一个单元格和后一个单元格的值 Sub SetCellValue()

18、 MsgBox "将当前单元格中前面的单元格值设为""我前面的单元格""" & vbCrLf _ & "后面的单元格值设为""我后面的单元格""" ActiveCell.Previous.Value = "我前面的单元格" ActiveCell.Next.Value = "我后面的单元格" End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-15]确认所选单元格区域中是否有公式(HasFormula属性) Sub IfHasFormula() If S

19、election.HasFormula = True Then MsgBox "所选单元格中都有公式" Else MsgBox "所选单元格中,部分单元格没有公式" End If End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-16] 公式单元格操作 [示例05-16-01]获取与运算结果单元格有直接关系的单元格 Sub CalRelationCell() MsgBox "选取与当前单元格的计算结果相关的单元格" ActiveCell.Dir

20、ectPrecedents.Select End Sub [示例05-16-02]追踪公式单元格 Sub Cal1() MsgBox "选取计算结果单元格相关的所有单元格" ActiveCell.Precedents.Select End Sub Sub TrackCell() MsgBox "追踪运算结果单元格" ActiveCell.ShowPrecedents End Sub Sub DelTrack() MsgBox "删除追踪线" ActiveCell.ShowPrecedents Remove:=True End Sub - - - - - - - -

21、 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-17] 复制单元格(Copy方法) Sub CopyRange() MsgBox "在单元格B7中写入公式后,将B7的內容复制到C7:D7內" Range("B7").Formula = "=Sum(B3:B6)" Range("B7").Copy Destination:=Range("C7:D7") End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

22、 - - - - - [示例05-18]获取单元格行列值(Row属性和Column属性) Sub RangePosition() MsgBox "显示所选单元格区域的行列值" MsgBox "第 " & Selection.Row & "行 " & Selection.Column & "列" End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-19]获取单元格区域的单元格数及行列数(Rows属性、Columns属性和Count属性) Sub GetR

23、owColumnNum() MsgBox "显示所选取单元格区域的单元格数、行数和列数" MsgBox "单元格区域中的单元格数为:" & Selection.Count MsgBox "单元格区域中的行数为:" & Selection.Rows.Count MsgBox "单元格区域中的列数为:" & Selection.Columns.Count End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-20]设置单元格中的文本格式 [示例05-20-0

24、1] 对齐文本 Sub HorizontalAlign() MsgBox "将所选单元格区域中的文本左右对齐方式设为居中" Selection.HorizontalAlignment = xlHAlignCenter End Sub Sub VerticalAlign() MsgBox "将所选单元格区域中的文本上下对齐方式设为居中" Selection.RowHeight = 36 Selection.VerticalAlignment = xlVAlignCenter End Sub [示例05-20-02] 缩排文本(InsertIndent方法) Sub Inde

25、nt() MsgBox "将所选单元格区域中的文本缩排值加1" Selection.InsertIndent 1 MsgBox "将缩排值恢复" Selection.InsertIndent -1 End Sub [示例05-20-03] 设置文本方向(Orientation属性) Sub ChangeOrientation() MsgBox "将所选单元格中的文本顺时针旋转45度" Selection.Orientation = 45 MsgBox "将文本由横向改为纵向" Selection.Orientation = xlVertical MsgBox "将文本方

26、向恢复原值" Selection.Orientation = xlHorizontal End Sub [示例05-20-04]自动换行(WrapText属性) Sub ChangeRow() Dim i MsgBox "将所选单元格设置为自动换行" i = Selection.WrapText Selection.WrapText = True MsgBox "恢复原状" Selection.WrapText = i End Sub [示例05-20-05]将比单元格列宽长的文本缩小到能容纳列宽大小(ShrinkToFit属性) Sub AutoFit() Dim

27、 i MsgBox "将长于列宽的文本缩到与列宽相同" i = Selection.ShrinkToFit Selection.ShrinkToFit = True MsgBox "恢复原状" Selection.ShrinkToFit = i End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-21]设置条件格式(FormatConditions属性) Sub FormatConditions() MsgBox "在所选单元格区域中将单元格值小于

28、10的单元格中的文本变为红色" Selection.FormatConditions.Add Type:=xlCellValue, _ Operator:=xlLessEqual, Formula1:="10" Selection.FormatConditions(1).Font.ColorIndex = 3 MsgBox "恢复原状" Selection.FormatConditions(1).Font.ColorIndex = xlAutomatic End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - -

29、 - - - - - - - - - - [示例05-22]插入批注(AddComment方法) Sub EnterComment() MsgBox "在当前单元格中输入批注" ActiveCell.AddComment ("Hello") ActiveCell.Comment.Visible = True End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-23]隐藏/显示单元格批注 Sub CellComment() MsgBox "切换当前单

30、元格批注的显示和隐藏状态" ActiveCell.Comment.Visible = Not (ActiveCell.Comment.Visible) End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-24]改变所选单元格的颜色 Sub ChangeColor() Dim iro As Integer MsgBox "将所选单元格的颜色改为红色" iro = Selection.Interior.ColorIndex Selection.Inter

31、ior.ColorIndex = 3 MsgBox "将所选单元格的颜色改为蓝色" Selection.Interior.Color = RGB(0, 0, 255) MsgBox "恢复原状" Selection.Interior.ColorIndex = iro End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-25]改变单元格的图案 Sub ChangePattern() Dim p, pc, i MsgBox "依Pattern常数值的顺

32、序改变所选单元格的图案" p = Selection.Interior.Pattern pc = Selection.Interior.PatternColorIndex For i = 9 To 16 With Selection.Interior .Pattern = i .PatternColor = RGB(255, 0, 0) End With MsgBox "常数值 " & i Next i MsgBox "恢复原状" Selection.Interior.Pattern = p Selection.Interior.PatternColorIndex =

33、pc End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-26]合并单元格 Sub MergeCells() MsgBox "合并单元格A2:C2,并将文本设为居中对齐" Range("A2:C2").Select With Selection .MergeCells = True .HorizontalAlignment = xlCenter End With End Sub - - - - - - - - - - - - - - - - -

34、 - - - - - - - - - - - - - - - - - - - - - [示例05-27]限制单元格移动的范围 Sub ScrollArea1() MsgBox "将单元格的移动范围限制在单元格区域B2:D6中" ActiveSheet.ScrollArea = "B2:D6" End Sub Sub ScrollArea2() MsgBox "解除移动范围限制" ActiveSheet.ScrollArea = "" End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

35、 - - - - - - [示例05-28]获取单元格的位置(Address属性) Sub GetAddress() MsgBox "显示所选单元格区域的地址" MsgBox "绝对地址:" & Selection.Address MsgBox "行的绝对地址:" & Selection.Address(RowAbsolute:=False) MsgBox "列的绝对地址:" & Selection.Address(ColumnAbsolute:=False) MsgBox "以R1C1形式显示:" & Selection.Address(ReferenceStyle:=xlR1

36、C1) MsgBox "相对地址:" & Selection.Address(False, False) End Sub - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [示例05-29]删除单元格区域(Delete方法) Sub DeleteRange() MsgBox "删除单元格区域C2:D6后,右侧的单元格向左移动" ActiveSheet.Range("C2:D6").Delete (xlShiftToLeft) End Sub EXCEL Range对象基本操作

37、应用示例(2) 2009-09-29 14:51 Range对象基本操作应用示例(2)(2008-06-08 11:13:16) 标签:杂谈 第五章 Range对象基本操作应用示例(2) - - - - - - - - - - - - - - - - - - - - 小结 下面对Range对象的一些常用属性和方法进行简单的小结。 1、Activate与Select 试验下面的过程: Sub SelectAndActivate() Range("B3:E10").Select Range("C5").Activate End Sub 其结果如下图所示:

38、 图05-01:Select与Activate Selection指单元格区域B3:E10,而ActiveCell则是单元格C5;ActiveCell代表单个的单元格,而Selection则可以代表单个单元格,也可以代表单元格区域。 2、Range属性 可以使用Application对象的Range属性引用Range对象,如 Application.Range(“B2”) ‘代表当前工作表中的单元格B2 若引用当前工作表中的单元格,也可以忽略前面的Application对象。 Range(“A1:D10”) ‘代表当前工作表中的单元格区域A1:D10 Range(“A1:A10

39、C1:C10,E1:E10”) ‘代表当前工作表中非连续的三个区域组成的单元格区域 Range属性也接受指向单元格区域对角的两个参数,如: Range(“A1”,”D10”) ‘代表单元格区域A1:D10 当然,Range属性也接受单元格区域名称,如: Range(“Data”) ‘代表名为Data的数据区域 Range属性的参数可以是对象也可以是字符串,如: Range(“A1”,Range(“LastCell”)) 3、单元格引用的快捷方式 可以在引用区域两侧加上方括号来快速引用单元格区域,如: [B2] [A1:D10] [A1:A10,C1:C10,E1:E10

40、] [Data] 但其引用的是绝对区域。 4、Cells属性 可以使用Cells属性来引用Range对象。如: ActiveSheet.Cells Application.Cells ‘引用当前工作表中的所有单元格 Cell(2,2) Cell(2,”B”) ‘引用单元格B2 Range(Cells(1,1),Cells(10,5)) ‘引用单元格区域A1:E10 若想在一个单元格区域中循环时,使用Cells属性是很方便的。 也可以使用Cells属性进行相对引用,如: Range(“D10:G20”).Cells(2,3) ‘表示引用单元格区域D10:G20中第2行第3

41、列的单元格,即单元格F11 也可使用语句:Range(“D10”).Cells(2,3)达到同样的引用效果。 5、Offset属性 Offset属性基于当前单元格按所给参数进行偏移,与Cells属性不同的是,它基于0即基准单元格为0,如: Range(“A10”).Cells(1,1)和Range(“A10”).Offset(0,0)都表示单元格A10 当想引用于基准单元格区域同样大小的单元格区域时,则Offset属性是有用的。 6、Resize属性 可使用Resize属性获取相对于原单元格区域左上角单元格指定大小的区域。 7、SpecialCells方法 SpecialCe

42、lls方法对应于“定位条件”对话框,如图05-02所示: 图05-02:“定位条件”对话框 8、CurrentRegion属性 使用CurrentRegion属性可以选取当前单元格所在区域,即周围是空行和空列所围成的矩形区域,等价于“Ctrl+Shift+*”快捷键。 9、End属性 End属性所代表的操作等价于“Ctrl+方向箭”的操作,使用常量xlUp、xlDown、xlToLeft和xlToRight分别代表上、下、左、右箭。 10、Columns属性和Rows属性 Columns属性和Rows属性分别返回单元格区域中的所有列和所有行。 11、Areas集合 在多个非连

43、续的单元格区域中使用Columns属性和Rows属性时,只是返回第一个区域的行或列,如: Range(“A1:B5,C6:D10,E11:F15”).Rows.Count 将返回5。 此时应使用Areas集合来返回区域中每个块的地址,如: For Each Rng In Range(“A1:B5,C6:D10,E11:F15”).Areas MsgBox Rng.Address Next Rng 12、Union方法和Intersect方法 当想从两个或多个单元格区域中生成一个单元格区域时,使用Union方法;当找到两个或多个单元格区域共同拥有的单元格区域时,使用Interse

44、ct方法。 操作单元格或单元格区域有很多有用的技巧,这需要在实践中总结和归纳。有关单元格区域的操作也可参见《在VBA代码中引用Excel工作表中单元格区域的方式小结》和《使用VBA代码选择单元格/区域》。 vb操作EXCEL对CELLS的引用 2009-07-25 16:50 使用 Visual Basic 的普通任务是指定单元格或单元格区域,然后对该单元格或单元格区域进行一些操作,如输入公式或更改格式。通常用一条语句就能完成操作,该语句可标识单元格,还可更改某个属性或应用某个方法。 在 Visual Basic 中,Range 对象既可表示单个单元格,也可表示单元格

45、区域。下列主题说明了标识和处理 Range 对象最常用的方法。 用 A1 样式记号引用单元格和单元格区域 可使用 Range 属性来引用 A1 引用样式中的单元格或单元格区域。下述子程序将单元格区域 A1:D5 的字体设置为加粗。 Sub FormatRange()     Workbooks("Book1").Sheets("Sheet1").Range("A1:D5").Font.Bold = True End Sub 下表演示了使用 Range 属性的一些 A1 样式引用。 引用                   含义 Range("A1")            单元

46、格 A1 Range("A1:B5")         从单元格 A1 到单元格 B5 的区域 Range("C5:D9,G9:H16") 多块选定区域 Range("A:A")           A 列 Range("1:1")           第一行 Range("A:C")           从 A 列到 C 列的区域 Range("1:5")           从第一行到第五行的区域 Range("1:1,3:3,8:8") 第 1、3 和 8 行 Range("A:A,C:C,F:F") A 、C 和 F 列 用编号引用单元格 通过使用行列编号,可用 C

47、ells 属性来引用单个单元格。该属性返回代表单个单元格的 Range 对象。下例中,Cells(6,1) 返回 Sheet1 上的单元格 A6,然后将 Value 属性设置为 10。 Sub EnterValue()     Worksheets("Sheet1").Cells(6, 1).Value = 10 End Sub 因为可用变量替代编号,所以 Cells 属性非常适合于在单元格区域中循环,如下例所示。 Sub CycleThrough()     Dim Counter As Integer     For Counter = 1 To 20         Wo

48、rksheets("Sheet1").Cells(Counter, 3).Value = Counter     Next Counter End Sub 注意   如果要同时更改某一单元格区域中所有单元格的属性或对其应用方法,可使用 Range 属性。有关详细信息,请参阅用 A1 样式记号引用单元格。 引用行和列 可用 Rows 属性或 Columns 属性来处理整行或整列。这两个属性返回代表单元格区域的 Range 对象。下例中,用 Rows(1) 返回 Sheet1 上的第一行,然后将单元格区域的 Font 对象的 Bold 属性设置为 True。 Sub RowBold()

49、     Worksheets("Sheet1").Rows(1).Font.Bold = True End Sub 下表举例说明了使用 Rows 和 Columns 属性的一些行和列的引用。 引用              含义 Rows(1)            第一行 Rows              工作表上所有的行 Columns(1)         第一列 Columns("A")      第一列 Columns           工作表上所有的列 若要同时处理若干行或列,请创建一个对象变量并使用 Union 方法,将对 Rows 属性或 Column

50、s 属性的多个调用组合起来。下例将活动工作簿中第一张工作表上的第一行、第三行和第五行的字体设置为加粗。 Sub SeveralRows()     Worksheets("Sheet1").Activate     Dim myUnion As Range     Set myUnion = Union(Rows(1), Rows(3), Rows(5))     myUnion.Font.Bold = True End Sub 用快捷记号引用单元格 可用方括号将 A1 引用样式或命名区域括起来,作为 Range 属性的快捷方式。这样就不必键入单词“Range”或使用引号,如下

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服