【高分悬赏】EXCEL表格数据统计的快捷办法!

如图所示,现有表格为图一。
以第二行例:3124:(商品代码)浅灰底#(颜色)1(数量)。

将表格统计出图二这种方式,有没有一种快捷的办法,求大神告知!
求详细的解答,最好有详细的步骤,因为手工统计效率实在是太低了。

第1个回答  2013-05-02
可以用vba,
工作薄标签处(就是写着sheet1的地方)右键“查看代码”
添加下面代码
Sub a()
r1 = 2
Cells(1, 2) = Left(Cells(1, 1), Len(Cells(1, 1)) - 1)
Cells(1, 3) = Val(Right(Cells(1, 1), 1))
r2 = 1
Do Until Cells(r1, 1) = ""
t1 = Left(Cells(r1, 1), Len(Cells(r1, 1)) - 1)
For r = 1 To r2
x = 0
If t1 = Cells(r, 2) Then
Cells(r, 3) = Val(Cells(r, 3)) + Val(Right(Cells(r1, 1), 1))
x = 1
Exit For
End If
Next r
If x = 0 Then
r2 = r2 + 1
Cells(r2, 2) = t1
Cells(r2, 3) = Val(Right(Cells(r1, 1), 1))

End If
r1 = r1 + 1
Loop
End Sub
然后运行就行了

注意:
代码就是将A列的数据,按照你的要求,分别在B列汇总,在C列求和。
第2个回答  2013-05-02

需要个辅助列完成。

例子

本回答被提问者采纳
第3个回答  2013-05-02
在B15写入=REPLACE(A15,FIND("#",A15,1)+1,100,) 然后下拉,就可以在B列得到3124:浅灰底#
在C15写入=RIGHT(A15,LEN(A15)-FIND("#",A15,1)),然后下拉,就可以在C列得到商品数量
B,C两列就是你要得到的图二追问

可是得不到最下面的合并整数呀。就是相同货号合并,然后得出的总数量。

追答

再将B,C列做数据透视表.

第4个回答  2013-05-02
统计什么?
没看太明白,
不过依据你的意思,
是把# 左边的分出来,右边的 相加么?

如果是这样
用公式提取前半部分,后半部分,然后 数据透视表, 2分钟解决追问

是这样的,请问能否告知详细的步骤,感激不尽。

追答

写起来费劲,请查收百度 私信

第5个回答  2013-05-02
先加辅助列将数量提取为单独一列:
C1=LOOKUP(9^9,--RIGHT(A1,ROW($1:$9)))
将公式向下复制。
再将商品代码和颜色提取到B列:
B1=SUBSTITUTE(A1,C1,)
然后用选择性粘贴将BC列内容固定下来。
最后排序、分类汇总即可。
相似回答