Excel的Range对象(C#)
Range 对象是 Excel 应用程序中最经常使用的对象;在操作 Excel 内的任何区域之前,都需要将其表示为一个 Range 对象,然后使用该 Range 对象的方法和属性。一个 Range 对象代表一个单元格、一行、一列、包含一个或者更多单元块(可以是连续的单元格,也可以式不连续的单元格)的选定单元格,甚至是多个工作表上的一组单元格。 在代码中引用范围。 Address 属性:这个属性返回范围坐标的字符串,坐标以下面几种格式之一表示,包括:“$A$”(单元格在位置 A1)、“$”(在工作表的第一行)和“$A$:$C$”(范围包括介于 A1 和 C5 之间矩形内的所有单元格)。“$”表示绝对坐标(而非相对坐标)。 Excel.Worksheet ws = (Excel.Worksheet)ThisWorkbook.Worksheets[];
Excel.Range rng;
rng = ThisApplication.ActiveCell;
rng = ws.get_Range("A1", Type.Missing);//使用对象的 Range 属性指定一个区域
rng = ws.get_Range("A1:B12", Type.Missing);//使用对象的 Range 属性指定一个区域
rng = (Excel.Range)ws.Cells[, ];//使用工作表的 Cells 属性,指定单个行和列值
rng = ThisApplication.Range("SomeRangeName", Type.Missing);//引用一个命名范围 rng = ws.Range("A1", "C5")//直接引用范围的 Cells、Rows 或 Columns 属性,作用相同
rng = ws.Range("A1", "C5").Cells
rng = ws.Range("A1", "C5").Rows
rng = ws.Range("A1", "C5").Columns rng = (Excel.Range)ws.Rows[, Type.Missing];//引用特定行或特定列或行和列的范围
rng = (Excel.Range)ws.Rows["1:3", Type.Missing];
rng = (Excel.Range)ws.Columns[, Type.Missing]; //Application 对象的 Selection 属性返回与选定单元格对应的范围
rng = (Excel.Range)ThisApplication.Selection; //创建一个包含其他两个合并范围的范围(在引号内指定两个范围,并用逗号隔开)
rng = ThisApplication.get_Range("A1:D4, F2:G5", Type.Missing);//与后三行效果相同
rng1 = ThisApplication.get_Range("A1", "D4");
rng2 = ThisApplication.get_Range("F2", "G5");
rng = ThisApplication.Union(rng1, rng2, Type.Missing, Type.Missing, ……); //创建一个引用其他两个范围重叠部分的范围(在引号内指定两个范围,并不使用分隔符)
rng = ThisApplication.get_Range("A1:D16 B2:F14", Type.Missing);//与后三行效果相同
rng1 = ThisApplication.get_Range("A1", "D16");
rng2 = ThisApplication.get_Range("B2", "F14");
rng = ThisApplication.Intersect(rng1, rng2,Type.Missing, Type.Missing, Type.Missing, Type.Missing,……); //使用范围的 Offset 属性取得相对于初始范围的一个偏移
rng = (Excel.Range) ws.Cells[, ];
for (int i = ; i <= ; i++)
{
rng.get_Offset(i, ).Value2 = i.ToString();
} //使用范围的 CurrentRegion 属性取得一个代表当前区域的范围,这个当前区域由最近的空行和列限定,即连接在一起的单元格
ThisApplication.get_Range("C3", Type.Missing).CurrentRegion.Font.Bold = true; //使用范围的 Areas 属性取得范围集合,其中每个范围对应于范围内容的一个区域 rng = ThisApplication.get_Range("Test", Type.Missing);
for (int i = ; i <= rng.Areas.Count; i++)
{
MessageBox.Show(
rng.Areas[i].get_Address(Type.Missing, Type.Missing,
Excel.XlReferenceStyle.xlA1, Type.Missing, Type.Missing));
}
//使用 End 属性,以及一个 XlDirection 枚举值(xlUp、xlToRight、xlToLeft、xlDown)来取得一个代表区域末端单元格的范围(即四个方向上离该选中范围最远的单元格)
Excel.Range rngLeft, rngRight, rngUp, rngDown;
rng = (Excel.Range) ThisApplication.Selection;
rngRight = rng.get_End(Excel.XlDirection.xlToRight);
rngLeft = rng.get_End(Excel.XlDirection.xlToLeft);
rngUp = rng.get_End(Excel.XlDirection.xlUp);
rngDown = rng.get_End(Excel.XlDirection.xlDown); //使用 EntireRow 或 EntireColumn 属性引用包含特定范围的行或列
rng = ThisApplication.get_Range("Test", Type.Missing);
rng.Areas[].EntireRow.Font.Bold = true; 在代码中操作范围。 自动填充:AutoFill
查找:Find
排序:Sort
Cells 获取一个 Range 对象,该对象表示工作表上的所有单元格(不仅仅是当前正在使用的单元格)。
Cells[行,列] Columns 获取一个表示工作表上的所有列的 Range 对象
Rows 获取一个表示工作表上的所有行的 Range 对象
Excel的Range对象(C#)的更多相关文章
- Excel VBA Range对象基本操作应用示例
[示例01] 赋值给某单元格[示例01-01] Sub test1()Worksheets("Sheet1").Range("A5").Value = 22Ms ...
- 8 Range 对象
8.1 引用Range 引用Range的主要方法: Application.ActiveCell Application.Range Application.Selection Worksheet.C ...
- VB默认属性、动态数组、Range对象的默认属性的一点不成熟的想法
1.默认属性 VB6.0有默认属性的特性.当没有给对象指定具体的属性时,"默认属性"是VB6.0将使用的属性.在某些情形下,省略常用属性名,使代码更为精简. 因为CommandBu ...
- VB类模块中属性的参数——VBA中Range对象的Value属性和Value2属性的一点区别
在VB中,属性是可以有参数的,而VBA中属性使用参数非常常见.比如最常用的:Worksheet.Range("A1:A10") VB的语法,使用参数的不一定是方法,也有可能是属性 ...
- html5学习笔记5--API Range对象(二)
Range对象之cloneRange和cloneContents 代码效果如下 首次点击“选择内容“按钮提示如下 接着会显示 最后显示 以下为整个代码 <!DOCTYPE html> &l ...
- html5学习笔记4--API Range对象(一)
Range对象基本用法 效果图如下(在谷歌浏览器下的展示)
- getSelection、range 对象属性,方法理解,解释
网上转了一圈发现没有selection方面的解释,自己捣鼓下 以这段文字为例子.. <p><b>法国国营铁路公司(SNCF)20日承认,</b>新订购的2000列火 ...
- Range对象理解,浏览器兼容性,获取鼠标光标位置
一.关于浏览器的兼容性 目前主要有3种关于range的类似的对象,分别是W3C range 对象,Mozzlia selection ,ie TextRange 关于这三种的区别,请查看文档 http ...
- HTML5中的Range对象的研究
一:Range对象的概念 Range对象代表页面上的一段连续区域,通过Range对象,可以获取或修改页面上的任何区域,可以通过如下创建一个空的Range对象,如下: var range = docu ...
随机推荐
- 学习鸟哥的Linux私房菜笔记(17)——Linux引导流程
一.系统引导流程 第一步:固件fireware(CMOS/BIOS)--POST加点自检(与操作系统无关) 这一步主要是检查硬盘等硬件是否能正常工作 CMOS:是固化在主板上,详细:http://sc ...
- 项目流程管理&&架构总结
1 项目背景 所在业务在早期没有营销费用,买家购买商品的折扣优惠是由卖家提供的.全部订单的终于价格是由卖家和业务方确定的,整个购买流程非常easy. 如今此业务收受到公司重视,业务团队能申请到营销费用 ...
- 新技能 get —— 五笔打字
推荐一个图表记忆网站,五笔字根表图五笔字根表五笔输入法下载口诀五笔打字练习_查询: 1. 键盘的认识 键盘的版式就是那样设定的,主要是 26 个拉丁字母,分三排: QWERT(撇区), YUIOP(捺 ...
- 新一代Xamarin
新一代Xamarin竟然可以将.NET代码原生编译成:Jar包供Java原生调用.swift类库.obj-c类库.C++类库 供目标平台传统代码直接调用 之前和很多朋友聊到Xamarin觉得确实不错, ...
- 自定义view布局过程详解
布局过程,就是程序在运行时利用布局文件的代码来计算出实际尺寸的过程. 布局分为两个阶段:测量阶段和布局阶段. 测量阶段:从上到下递归地调用每个 View 或者 ViewGroup 的 measure( ...
- 英文构词法 —— ant、ent 后缀
1. -ant:--人 accountant:会计, account(ac+count):计数,账户: assistant:助手: assist:帮助 descendant:后裔: descend:下 ...
- Android 平台下Ftp 使用模拟器需要注意的问题
以下代码在pc上测试通过,可是在android模拟器上就不工作,不过还可以链接到服务器但不能得到文件 纠结了半天,原来是模式的问题,具体请Google 模拟器中采用建议被动模式 public void ...
- 【从翻译mos文章】采用高速全扫描索引(index ffs) 为了避免全表扫描
采用高速全扫描索引(index ffs) 为了避免全表扫描 参考原始: Index Fast Full Scan Usage To Avoid Full Table Scans (Doc ID 701 ...
- QWidget 之paint部分杂记(从Qt4.0到4.8的进化,在Qt 4.4中,Alien Widget诞生了)
Qt 4.0 automatically double-buffers Qt 4.1 QWidget::autoFillBackground Qt 4.2 delayed widget creatio ...
- 手把手教你安装QT集成开发环境(操作系统为ubuntu10.04,需要先安装build-essential和libncurses5-dev)
在安装QT集成开发工具包之前需要先安装build-essential和libncurses5-dev这两个开发工具和库,libncurses5-dev库是一个在Linux/Unix下广泛应用的图形函数 ...