s*********i 发帖数: 1813 | 1 有一个excel表格,一个3*3的range (A1:C3),想在第四列里面copy and paste这个
range里的内容,但是只要斜线上的cell,也就是说,d1=a1, d2=b2, d3=c3(如下图所
示)。有什么办法可以做到呢?多谢
a1 b1 c1 a1
a2 b2 c2 b2
a3 b3 c3 c3 |
r****y 发帖数: 26819 | 2 在D1里用公式=INDEX(A1:C3,,ROWS($1:1))就得到A1的值
沿着column拖下来就得到各斜线的值
【在 s*********i 的大作中提到】 : 有一个excel表格,一个3*3的range (A1:C3),想在第四列里面copy and paste这个 : range里的内容,但是只要斜线上的cell,也就是说,d1=a1, d2=b2, d3=c3(如下图所 : 示)。有什么办法可以做到呢?多谢 : a1 b1 c1 a1 : a2 b2 c2 b2 : a3 b3 c3 c3
|
s*********i 发帖数: 1813 | 3 万分感谢!我google了半天也没找到答案,太感谢了。
能不能再帮一个小忙:我想写一个极其简单的self defined function,有一个
argument,是一个cell,然后这个function计算这个cell和这个cell同列但往上12行的
cell的差值。比如这个cell叫yoy,yoy(a13)计算的是a13-a1。应该很简单,但就是不
太知道怎么处理cell reference。多谢。10粒包子以表谢意
【在 r****y 的大作中提到】 : 在D1里用公式=INDEX(A1:C3,,ROWS($1:1))就得到A1的值 : 沿着column拖下来就得到各斜线的值
|
r****y 发帖数: 26819 | 4 这个function yoy(a13)的值是打算放在同列的cell里,还是不一定呢?
--这么问,出于考虑是否非要写VBA代码。
【在 s*********i 的大作中提到】 : 万分感谢!我google了半天也没找到答案,太感谢了。 : 能不能再帮一个小忙:我想写一个极其简单的self defined function,有一个 : argument,是一个cell,然后这个function计算这个cell和这个cell同列但往上12行的 : cell的差值。比如这个cell叫yoy,yoy(a13)计算的是a13-a1。应该很简单,但就是不 : 太知道怎么处理cell reference。多谢。10粒包子以表谢意
|
s*********i 发帖数: 1813 | 5 不是同列,应该需要用vba。多谢!
【在 r****y 的大作中提到】 : 这个function yoy(a13)的值是打算放在同列的cell里,还是不一定呢? : --这么问,出于考虑是否非要写VBA代码。
|
r****y 发帖数: 26819 | 6 ok, 先建立一个user defiend function,具体步骤如下:
1.Open up a new workbook.
2.Get into VBA (Press Alt+F11)
3.Insert a new module (Insert -> Module)
4.Copy and Paste the Excel user defined function examples:
Function yoy(cell)
yoy = cell.Value - cell.Offset(-10, 0).Value
End Function
这个用户自定义函数的操作是对一个给定的cell,取该cell的值减去同一列往上数10行的
cell的值。用Offset(-10,0)表示相对位移是同列往上数10行。
5.Get out of VBA (Press Alt+Q)
然后在任何一个cell里使用公式比如:=yoy(D13)即可得到D13-D3的值。
【在 s*********i 的大作中提到】 : 不是同列,应该需要用vba。多谢!
|
s*********i 发帖数: 1813 | 7 非常感谢!问题已解决,并且创建了一个add-in,这样以后在其他的workbook里面也可
以随时调用这个函数了,很方便,谢谢。刚开始学习vba,问一个小问题,这个
function的argument (cell),是什么类型呢?比如cell as integer, as double什么的
,趁机多学习一下。
行的
【在 r****y 的大作中提到】 : ok, 先建立一个user defiend function,具体步骤如下: : 1.Open up a new workbook. : 2.Get into VBA (Press Alt+F11) : 3.Insert a new module (Insert -> Module) : 4.Copy and Paste the Excel user defined function examples: : Function yoy(cell) : yoy = cell.Value - cell.Offset(-10, 0).Value : End Function : 这个用户自定义函数的操作是对一个给定的cell,取该cell的值减去同一列往上数10行的 : cell的值。用Offset(-10,0)表示相对位移是同列往上数10行。
|
r****y 发帖数: 26819 | 8 cell As Object
VBA的数据类型可以参考这个:
http://www.beyondtechnology.com/vba008.shtml
这个网页介绍如何选择cells也很不错:
http://support.microsoft.com/kb/291308
【在 s*********i 的大作中提到】 : 非常感谢!问题已解决,并且创建了一个add-in,这样以后在其他的workbook里面也可 : 以随时调用这个函数了,很方便,谢谢。刚开始学习vba,问一个小问题,这个 : function的argument (cell),是什么类型呢?比如cell as integer, as double什么的 : ,趁机多学习一下。 : : 行的
|
|
s*********i 发帖数: 1813 | 9 再次感谢!
【在 r****y 的大作中提到】 : cell As Object : VBA的数据类型可以参考这个: : http://www.beyondtechnology.com/vba008.shtml : 这个网页介绍如何选择cells也很不错: : http://support.microsoft.com/kb/291308
|