excel列变成行,不要粘贴中的转置。要公式

例如:数据有,A1,A2,A3,A4,A5.我想在D1中输入公式,然后拖动D1至H1,结果就变成A1=D1,A2=E1,A3=F1,A4=G1,A5=H1...求公式,希望有点点说明。
感谢1楼2楼的两位,经过自己研究,我知道是偏移了。但是我反过来就没办法了,也就是把行转换成列。是不是有别的公式?麻烦了。还是用上面的列子:数据有D1,E1,F1,G1,H1.输入公式,拖动A1至A5,结果就变成,A1=D1,A2=E1,A3=F1,A4=G1,A5=H1。。

D1输入=OFFSET($A1,COLUMN(A1)-1,)回车并向右填充至H1。

2楼的,看你补充,我也补充啦:
上面的公式是“列-行”,就变通一下为“行-列”:
A1输入=OFFSET(D$1,0,ROW()-1)回车并向下填充至A5。

参数解释:
函数“OFFSET”——偏移量,它是通过给定偏移量返回新的引用。
“列-行”公式中,“COLUMN()”——所在列的列号,因你要在D1(第4列)输入公式,故给它一个引用地址“A1”,1“-1”=0——不偏移。
原公式=OFFSET($A1,COLUMN(A1)-1,0),左右偏移为“0”,在末尾,故可省略。
“行-列”公式中,ROW()——所在行的行号,直接在第1行输入公式,“()”为空。

其实这些,你可以点击编辑栏左边的“fx”,里面就有详细说明和操作方法。
原3楼讲的“授之以渔”,我觉得必须看对象。很多函数公式的设置也不是在这里一两句简单的解释就能明白,往往是要“在战争中学习战争”的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-07-21
D1=OFFSET($A$1,COLUMN()-4,,) 向右拖拉

公式解释:OFFSET的简单应用.
========================================
对你的补充,我一直不喜欢用某个公式直接这么解答别人问题,因为知其然不知所以然,没授渔具渔法!

A1=OFFSET($D$1,0,ROW()-1) 向下拖拉

你自己先在EXCEL里面理解这俩公式,自己先想想?想过还不明白的话再HI我,学习的必要途径!
第2个回答  2009-07-21
先将A1至A5定义为“范围”
在D1中输入公式“=INDEX(范围,(COLUMN()-3),1)”
选中D1拖拉小黑点至H1

完成
以上引号要去掉

--------------------以下补充-------------------------
解释:index函数常用于返回指定区域中指定单元格的值.

公式中的第一个参数就是引用我们定义的单元格区域,第二个参数"column()-3"利用column()函数获取当前单元格的列值定位于指定区域的行值,第三个参数类同,由此将源指定单元格的行列值互换。

由此我们可以扩展应用到非单列区域的行列数据转制:
=INDEX(范围,COLUMN()-X,ROW()-Y)
其中第二个参数中的x在本例中为3(4-1,D1的列值为4),第三个参数中的Y在本例中为0(1-1,D1的行值为1),可以根据不同情况做修正,使用时注意。

----------------------------再次补充------------------------

楼上的回答比我的更简便,学习中
第3个回答  2009-07-21
在D1中输入=INDEX($A$1:$A$5,COLUMN(A1),)往右拖。
互相转换的倒没有看到,如果将D1:H1转化到A1:A5中则用以下公式,在A1中输入=INDEX($D$1:$H$1,,ROW(A5)),往下拖。
相似回答