Offset

Offset

Excel中的OFFSET函数
在Excel中,OFFSET函数的功能为以指定的引用为参照系,通过给定偏移量得到新的引用。返回的引用可以为一个单元格或单元格区域,并可以指定返回的行数或列数。OFFSET函数语法是OFFSET(reference,rows,cols,height,width)。函数OFFSET实际上并不移动任何单元格或更改选定区域,它只是返回一个引用。函数OFFSET可用于任何需要将引用作为参数的函数。例如,公式SUM(OFFSET(C2,1,2,3,1))将计算比单元格C2靠下1行并靠右2列的3行1列的区域的总值。
  • 中文名:
  • 外文名:
  • 适用领域:
  • 所属学科:
  • 英文名:offset
  • 运行平台:软件平台
  • 软件语言:汇编语言
  • 格式:mov寄存器
  • 属性:Excel函数
  • 开发商:Microsoft
  • 作用:返回引用

汇编伪指令

mov寄存器,offset变量名,把变量名的地址传输到寄存器中去,在编译的时候完成。

函数语法

OFFSET(reference,rows,cols,height,width)

Reference作为偏移量参照系的引用区域。Reference必须为对单元格或相连单元格区域的引用;否则,函数OFFSET返回错误值#VALUE!。

Rows相对于偏移量参照系的左上角单元格,上(下)偏移的行数。如果使用5作为参数Rows,则说明目标引用区域的左上角单元格比reference低5行。行数可为正数(代表在起始引用的下方)或负数(代表在起始引用的上方)。

Cols相对于偏移量参照系的左上角单元格,左(右)偏移的列数。如果使用5作为参数Cols,则说明目标引用区域的左上角的单元格比reference靠5右列。列数可为正数(代表在起始引用的右边)或负数(代表在起始引用的左边)。

Height高度,即所要返回的引用区域的行数。Height必须为正数。

Width宽度,即所要返回的引用区域的列数。Width必须为正数。

offset在汇编中可以获得操作数的偏移地址。用法:

例如:平时invoke MessageBox,NULL,addr sztext,addr szcaption,MB_OK

当然前面已经定义过sztext和szcaption为字符串了

szcaption db '小例子',0

sztext db 'powerful!',0

此时invoke MessageBox,NULL,addr sztext,addr szcaption,MB_OK可以写为

push MB_OK

push offset szcaption

push offset sztext

push NULL

call MessageBox

这样看起来就更接近汇编语言习惯了,当然用invoke更简单点,这里只是为了说明offset用法。

函数示例

A

B

1

公式

说明(结果)

2

=OFFSET(C3,2,3,1,1)

显示单元格F5中的值(0)

3

=SUM(OFFSET(C3:E5,-1,0,3,3))

对数据区域C2:E4求和(0)

4

=OFFSET(C3:E5,0,-3,3,3)

返回错误值#REF!,因为引用区域不在工作表中

属性

在Excel中,Offset属性应用于下面两个对象

应用于Range对象的Offset属性。

返回一个Range对象,该对象代表某个指定区域以外的区域。只读。

expression.Offset(RowOffset,ColumnOffset)

expression必需。该表达式返回一个 Range对象。

RowOffset Variant类型,可选。区域偏移的行数(正值、负值或0(零))。正值表示向下偏移,负值表示向上偏移,默认值为0。

ColumnOffset Variant类型,可选。区域偏移的列数(正值、负值或0(零))。正值表示向右偏移,负值表示向左偏移,默认值为0。

应用于TickLabels对象的Offset属性。

返回或设置各级别标签之间的距离以及第一级标签与坐标轴之间的距离。其默认距离为百分之百,代表坐标轴标签与坐标轴之间的默认距离。其值可以为从0到1000之间的一个整数百分比,表示相对于坐标轴标签的字体大小。Long类型,可读写。

expression.Offset

expression必需。该表达式返回一个TickLabels对象。

属性示例

应用于 Range对象的示例:

本示例激活Sheet1上活动单元格向右偏移三列、向下偏移三行处的单元格。

Worksheets("Sheet1").Activate

ActiveCell.Offset(rowOffset:=3,columnOffset:=3).Activate

本示例假定Sheet1中包含一个具有标题行的表格。本示例先选定该表格,但并不选择标题行。运行本示例之前,活动单元格必须位于表格中。

Set tb=ActiveCell.CurrentRegion

tbl.Offset(1,0)Resize(tbl.Rows.Count-1,tbl.Columns.Count),Select

应用于TickLabels对象的示例。

如果偏移量小于500,则本示例将Chart1中数值轴上标签之间的距离设置为当前距离的两倍。

With Charts("Chart1").Axes(xlValue),TickLabels

If .Offset < 500 then .Offset=,Offset*2

End If.End With

jQuery用法

offset()

定义和用法offset()方法设置或返回被选元素相对于文档的偏移坐标。

返回的对象包含两个整形属性:top和left。此方法只对可见元素有效。

Get the current offset of the first matched element relative to the viewport.

The returned object contains two Integer properties, top and left. The method works only with visible elements.

返回值类型

Object{top,left}

示例

获取第二段的偏移

HTML代码:

Hello

2nd Paragraph

jQuery代码:

varp=$("p:last");

varoffset=p.offset();

p.html("left: "+offset.left+",top:"+offset.top);

结果:

Hello

left:0,top:35

相关词条

相关搜索

其它词条