excel怎么吧多列合并到一列

excel怎么吧多列合并到一列,并向下自动填充列如:
1 2 3 。。。。
1 2 3.。。。。
1 2 3.。。。。 合并后
1
1
1
2
2
2
2
3
3
3
这种
下面的回答都不满意。高手进

        将多列表格内容合并在一列中,可以按以下方法操作,下面是原图:

        1、创建一个Excel表格,要求将表格的多列内容合并在一列中。

        2、将表格红色边框内的多列内容,合并在右侧枚红色边框的一列。

        3、在F2表格内输入“=

        4、输入完可以得到这样的效果。

        5、逐步在F3输入“=B3&C3&D3&E3”,F4输入“=B4&C24&D4&E4”……可以得到相应效果。

        6、还有简便的方式:拖拽格式,得到效果!选中表格,拖拽右下角的“+”往下拖拽即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-03-16
比如A列为空白列,是为合并后结果准备的,
B列开始有若干列及行数据,(假设不超过100行)
用vba方法如下:
在工作表界面作如下操作:
按Alt+F11->打开vixual basic编辑器
在打开的vixual basic编辑器窗口作如下操作:
标题栏->视图->工程资源管理器(单击打开)
双击sheet1(注意你的工作表如果是sheet2,就双击sheet2)
右边出现一大片空白区域
将下述代码复制->粘贴进去:
Sub 多列合并()
Dim i As Integer, j As Integer, n As Integer
n = 0
For i = 1 To 100 Step 1
If Cells(i, 2) = "" And Cells(i + 1, 2) = "" Then Exit For
For j = 2 To 200 Step 1
If Cells(i, j) = "" Then Exit For
n = n + 1
Cells(n, 1) = Cells(i, j)
Next j
Next i
End Sub
'运行即可

呵呵,仔细阅读了一下问题,发现上述代码运行结果不是你想要的,应该一列一列提取:
代码更改如下:
Sub 多列合并()
Dim i As Integer, j As Integer, n As Integer
n = 0
For j = 2 To 200 Step 1
If Cells(1, j) = "" And Cells(1, j + 1) = "" Then Exit For
For i = 1 To 100 Step 1
If Cells(i, j) = "" Then Exit For
n = n + 1
Cells(n, 1) = Cells(i, j)
Next i
Next j
End Sub
'运行即可,我试过了,正确的!追问

very good/不过有个问题。空值会忽略。有办法。空值就是空值记录吗。

追答

你如果想记录空值,我更改下代码即可
但你最好告诉我你共有多少行数据和多少列数据

追问

我的记录值是行列式变的。不定的。你也可以告诉我怎么样把所有空值变为0也行

追答

1)选中你的数据区域,编辑-定位-定位条件-空值,确定,
ctrl+h键,查找内容:不输入任何内容
替换为:0
确定
2)或者:
选中你的数据区域
ctrl+h键,查找内容:不输入任何内容
替换为:0
确定

本回答被提问者采纳
第2个回答  2012-03-07
我也遇到过类似的问题,研究了很久才得出的办法,。~~希望能帮助到你。
方法如下:
1、先用转置的办法,将列变成行排列。即选择所有要改变的单元格,复制——选择性粘贴——转置。
2、然后,选择需要改变的所有单元格(转置后的数据);
3、工具--方案,弹出“方案管理器”,点击“添加”按钮,弹出“添加方案”对话框;
4、“方案名”任意输入,点击“确定”到“方案变量值”对话框,继续确定回到“方案管理器”;
5、点击“摘要”,弹出“方案摘要”对话框,结果类型选择默认的“方案摘要”;
6、“结果单元格”不用更改,直接确定;
7、此时EXCEL工作表栏多了一个“方案摘要”工作表,复制该表中“当前值”下的数据单元格,粘贴到别的表格即可。
第3个回答  2012-03-07
excel菜单栏里有个按钮功能 "合并后居中" 选择需要合并的窗口> 点击"合并后居中"追问

在哪。没看见

追答

已给你截图 请查收

追问

合并单元格不能有内容的。

第4个回答  2012-03-07
有一个简单的办法:
1、全选表格,复制,选择性粘贴,转置;
2、把新生成的表格剪切,粘贴到WORD中;
3、在WORD中,单元格合并;新生成的一列表格就是你想要的形式;
4、从WORD中复制这个表格,粘贴到EXCEL中。OK追问

不行。不是我要的效果

追答

也可以用公式=OFFSET(Sheet1!A$1,MOD(ROW()-1,COUNT(A:A)),INT((ROW()-1)/COUNT($1:$1)))
注意:不要在第一行和第一列中用,因为公式计算的第1行的列数第1列中的行数,会导致自身引用错误。

相似回答