
excel中隐藏的多个工作表怎么快速取消隐藏?
1.excel中随便输入了三列数字作为演示,当然如果隐藏或者取消隐藏行的话也是一样的。如图所示的这三列数字 ,可以隐藏中间的一列。
2.那么就在这中间的想隐藏的 F列上点击鼠标右键,然后会在右键出现一个隐藏的选项,只要选择此选项即可以隐藏该列。
3.如图所示, 现在这F列的数据已经被隐藏了,如果不仔细看是看不到此处还应该有一组数据的,但是还是可以通过字母的顺序来获知此处被隐藏了一组。
4.那么现在来取消隐藏这列数据,用鼠标选定这两列数据组,因为是隐藏的中间一列,所以要将其两边的E与G列都选择起来。如图所示。
5.选择完成后点击鼠标右键,然后会在右键菜单中出现一个取消隐藏的选项,选择此选项后此F列便会重新出现了。如图。
6.其实想要取消隐藏还有另外的一种简单的方法。就是在E与G列数据之间的那条分界线,可以将鼠标移动到此分界线的右侧,当鼠标变成了一个可移动的图标时,可以拖动鼠标向右,如图所示。
7.向右拖动的时候那被隐藏的F列已经显示出来了,直到将其数据完全显示,松开鼠标,然后此被隐藏的数据列就又重新显示出来了。
按ALT+F11进入VBA界面,按Alt+i+m插入模块
粘贴下面的代码后按F5即可取消所有工作表的隐藏。
Sub allvisible()
Dim s As Worksheet
For Each s In ThisWorkbook.Worksheets
s.Visible = xlSheetVisible
Next s
End Sub
2014-09-03
Sub test()
For Each sh In ThisWorkbook.Sheets
sh.Visible = True
Next
End Sub
另外可以用视图管理器,在所有工作表显示时创建一个视图.下次只需切换到该视图就可以显示全部工作表.
2018-03-09
1、一次取消所有工作表的隐藏
Excel可以一次隐藏多个工作表,但取消工作表隐藏却需要一个个的设置,用VBA编写一段代码,一秒完成!
注意
要想使用VBA功能,需要把代码粘贴到添加的模块中,详见动画演示
要想保存VBA代码,需要把文件另存为xlsm格式文件,详见动画演示
动画演示:
代码:
Sub 取消隐藏()
For x = 1 To Sheets.Count
If Sheets(x).Name <> "总表" Then
Sheets(x).Visible = -1
End If
Next x
End Sub
Sub 隐藏()
For x = 1 To Sheets.Count
If Sheets(x).Name <> "总表" Then
Sheets(x).Visible = 0
End If
Next x
End Sub
其他都挺好,再分享个:
2、根据模板批量生成日报表
根据模板批量生成报表,没什么好方法,只能一个一个的复制然后修改名称。但这对VBA来说,只需点一下按钮即可瞬间完成。
代码:
Sub 生成报表()
Dim x As Integer
Dim sh As Worksheet
For x = 1 To 31
Set sh = Sheets.Add
With sh
.Name = x & "日"
Sheets("日报模板").Range("1:15").Copy sh.Range("A1")
End With
Next x
End Sub
3、拆分工作表为单独的excel文件
把当前excel文件中除第1个工作外的所有工作表,均保存为单独的excel文件到3月文件夹中。
拆分演示(在拆分过程中会画面会停几秒,请耐心等待)
代码:
Sub 拆分表格()
Dim x As Integer
Dim wb As Workbook
Application.ScreenUpdating = False
For x = 2 To 32
Sheets(x).Copy
Set wb = ActiveWorkbook
With wb
.SaveAs ThisWorkbook.Path & "/3月/" & Sheets(x).Name & ".xlsx"
.Close True
End With
Next x
Application.ScreenUpdating = True
End Sub
4、合并多个Excel文件工作表到一个文件中
3月文件夹下有N张报表,要求把该文件夹中所有excel文件的第1个工作表合并到当前的excel文件中,以单独的工作表存放。
代码:
Sub 合并表格()
Dim mypath As String
Dim f As String
Dim ribao As Workbook
Application.ScreenUpdating = False
mypath = ThisWorkbook.Path & "/3月/"
f = Dir(ThisWorkbook.Path & "/3月/*.xlsx")
Do
Workbooks.Open (mypath & f)
With ActiveWorkbook
.Sheets(1).Move after:=ThisWorkbook.Sheets(Sheets.Count)
End With
f = Dir
Loop Until Len(f) = 0
Application.ScreenUpdating = True
End Sub