- 2017/7/18 14:12:59
- 类型:原创
- 来源:电脑报
- 报纸编辑:电脑报
- 作者:
一次性合并多薄多表
@太阳多肉
一个文件夹下有多个Excel工作簿,每个Excel工作簿里面又有多可工作表,有什么方法可以一次性合并文件夹内多薄多表中的内容吗?可以借助VBA代码实现,在文件夹内新建一个Excel,然后输入VBA代码:
Dim Arr, MyPath$, MyName$, R&, Col%, aR_n&,shname
Dim Wb As Workbook '定义源文件,同目录下其它文件
Dim Ws As Worksheet '定义目标文件,当前文件
Dim F As Object
shname=activesheet.name '定义合并的工作表名
Application.ScreenUpdating = False
MyPath = ActiveWorkbook.Path & "\"
MyName = Dir(MyPath & "*.xls")
For Each Ws In ActiveWorkbook.Sheets
'清除原有记录
Set F = Cells.Find("*", , , , , xlPrevious)
If Not F Is Nothing Then
Ws.Rows("2:" & F.Row + 1).Delete '多加一防止只有一行标题行时删除标题
End If
Next Ws
'逐个打开文件相同表名合并
Do While MyName <> ""
If MyName <> ActiveWorkbook.name Then
Set Wb = GetObject(MyPath & MyName)
For Each Ws In Wb.Sheets
With Ws
if ws.name=shname then
Set F = .Cells.Find("*", , , , , xlPrevious) '求源文件最大行
If Not F Is Nothing Then
R = F.Row
If R > 1 Then '如果只有一行或空表不合并
Col = F.Column
Arr = .Range(.Cells(2, 1), .Cells(R, Col))
Set F = Sheets(Ws.name).Cells.Find("*", , , , , xlPrevious) '求目标文件最大行
If F Is Nothing Then
aR_n = 2
Else
aR_n = F.Row + 1
End If
Sheets(Ws.name).Cells(aR_n, 1).Resize(UBound(Arr), Col) = Arr
Sheets(Ws.name).Cells(aR_n, Col + 1).Resize(UBound(Arr)) = MyName '填充文件名
End If
End If
endif
End With
Next Ws
Wb.Close False
Set Wb = Nothing
Set Ws = Nothing
End If
MyName = Dir
Loop
Application.ScreenUpdating = True
End Sub
最后,就是为新增加的宏命令指定一个按钮,今后点击按钮就可以自动进行多薄多表的合并。
董师傅点评:其实可以借助Excel插件工具——多薄多表合并mergebooks.dll,省去输入代码这个过程且操作更丰富,例如可以进行分类汇总合并。
迷你图清晰展现数据变化
@星兔粑粑
为了直观展示数据变化,经常要在Excel销售表格中使用“图表”中的“折线图”,不过Excel生成的“折线图”比较大很占空间,有没有更好的方法呢?在一个单元格中可以绘制出简洁的小图表吗?使用迷你图功能就可以做到,方法如下:
在Excel工作表中,切换到“插入”选项卡,就可以看到“迷你图”选项卡,点击其中的“折线图”按钮,在弹出的“创建迷你图”对话框的“数据范围”处输入一个数据区域,例如A2~H2,在“位置范围”处输入放置图表的目标单元格位置,例如J2单元格,最后点击“确定”就可以创建一张折线迷你图,用同样的方式可以为设置一系列的折线迷你图。
为了让折线迷你图更美观,点击“迷你图工具”选项卡在的“设计”,再在“样式”中选择“其他”,打开迷你图样式库,之后选择一个自己喜欢的样式,再在“显示”选项组中点击“高点”和“低点”,以便在图表中突出显示最高值和最低值,最后可以通过更改“标记颜色”让图表中的最高值和最低值更好的被识别。
董师傅点评:Excel 2010及以上的版本才有迷你图功能。
请关注董师傅微博
怎么办公最有效率?怎么办公最轻松?来看看董师傅的珍藏,相信你一定会有意外的收获。顺带也可以听听董师傅的理财心得,倾听财富的声音!同时有问题也可以微博私信董师傅。
报纸客服电话:4006677866 报纸客服信箱:pcw-advice@vip.sin*.c*m 友情链接与合作:987349267(QQ) 广告与活动:675009(QQ) 网站联系信箱:cpcw@cpcw*.c*m
Copyright © 2006-2011 电脑报官方网站 版权所有 渝ICP备10009040号