从net开发人员的角度理解excel对象模型五

从net开发人员的角度理解excel对象模型五

ID:30402382

大小:85.84 KB

页数:17页

时间:2018-12-29

从net开发人员的角度理解excel对象模型五_第1页
从net开发人员的角度理解excel对象模型五_第2页
从net开发人员的角度理解excel对象模型五_第3页
从net开发人员的角度理解excel对象模型五_第4页
从net开发人员的角度理解excel对象模型五_第5页
资源描述:

《从net开发人员的角度理解excel对象模型五》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、从NET开发人员的角度理解Excel对象模型五从.NET开发人员的角度理解Excel对象模型(五)2010-05-0510:28Range对象Range对象是您在Excel应用程序中最经常使用的对象;在您可以操作Excel内的任何区域之前,您需要将其表示为一个Range对象,然后使用该Range对象的方法和属性。Range类是很重要的,目前为止,本篇文章中的每个示例中在某种程度上都使用了一个Range对象。基本上来说,一个Range对象代表一个单元格、一行、一列、包含一个或者更多单元块(可以是连续的单元格,也可以式不连续的单元格)的选定单元格,甚至是多个工作表上的一组单元格。由于不可能讨论R

2、ange这个大类的所有成员,所以这一部分集中探讨三个主要的问题:在代码中引用范围。在代码中操作范围。使用Range对象达到特定目的。换句话说,由于Range对象在众多不同场合下有众多不同用途,所有本节集中回答"我如何…"这样的问题,而不是提供对所有成员全面的列表。管理选择区域尽管使用当前选择区域作为修改一个范围的属性和行为的做法很具有吸引力,但是您最好避免这样做。就像任何其他共享资源一样,在Excel内的选择区域代表用户的选择。如果您在代码中修改该选择区域,将会导致用户失去对当前选择区域的控制。经验法则是:只有在您想改变用户的选择区域时,才可以调用对象的Select方法。作为一个开发人员,您

3、不能只是为了方便就去调用Select方法。如果您的目的只是设置一个范围的属性,总会有其他替代方法。总之,避免使用Select方法不但可以使您的代码运行得更快,还可以使您的用户免受干扰。如下代码清除用户当前单元格相邻区域,编写这样的代码是很简单的:'VisualBasicThisApplication.ActiveCell.CurrentRegion.SelectDirectCast(ThisApplication.Selection,Excel.Range).ClearContents//C#ThisApplication.ActiveCell.CurrentRegion.Select();

4、((Excel.Range)ThisApplication.Selection).ClearContents();这样做会取消用户的选择。如果最初只选择一个单元格,那么当运行前面的代码片段后,单元格附近的整大块将会被选定。实际上,除非您的目的是选择所有的单元格区域,否则使用如下所示代码是更好的解决方案:'VisualBasicThisApplication.ActiveCell.CurrentRegion.ClearContents//C#ThisApplication.ActiveCell.CurrentRegion.ClearContents();为什么任何人都会想到使用第一个代码片段呢

5、?之所以会使用这样的代码,是因为Excel开发人员在尝试发现如何使用Excel内的各种对象及其方法的一开始都会倾向于使用Excel宏记录器。这个一个好主意,但是宏记录器编写的代码实在很糟糕。通常,宏记录器使用了选择区域,并在记录任何任务的时候修改选择区域。提示当使用一个或一组单元格时,尽可能使用描述您想使用的单元格的范围,而不是修改选择区域。如果您的目的是更改用户的选择区域,则使用Range.Select方法。在代码中引用RangeRange类是很灵活的,您在编程使用范围的时候会发现它给您提供太多的选择。有时Range对象是单个的对象,而有时它代表对象的一个集合。它具有Item和Count成

6、员,尽管Range对象通常指单个的对象,这使得有时如何准确使用Range对象成为一件很棘手的事情。提示下面的几个示例获得一个范围的Address属性。这个属性返回一个包含范围坐标的字符串,坐标以下面几种格式之一表示,包括:"$A"(单元格在位置A1)、""(在工作表的第一行)和"$A:$C"(范围包括介于A1和C5之间矩形内的所有单元格)。"$"表示绝对坐标(而非相对坐标)。使用Address属性是找到您要检索的范围的准确位置的最简单方法。有关引用范围的各种方法的更多信息,请参考Excel联机帮助。以其最简单的方式,您可以编写如下程序清单所示的代码来使Range对象引用单个单元格或者一组单元

7、格。所有示例都假定具有下面的设置代码:'VisualBasicDimwsAsExcel.Worksheet=_DirectCast(ThisWorkbook.Worksheets(1),Excel.Worksheet)Dimrng,rng1,rng2AsExcel.Range//C#Excel.Worksheetws=(Excel.Worksheet)ThisWorkbook.Worksheets[1];Ex

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。