Excel如何快速获取工作簿中的工作表名
在工作中有时需要记录每个工作表的名称,手动去抄,有点费力,效率太低。运用以下方法,操作非常方便、准确。
操作
方法一:代码法
步骤1:在“表名”上单击鼠标右键,在弹出的快捷菜单中选择“查看代码”,如图3-198所示。
图3-198
步骤2:在代码窗口中录入以下代码。
Sub a()
For Each sh In Sheets
k = k + 1
Cells(k, 1) = sh.Name
Next
End Sub
步骤3:单击运行代码按钮,如图3-199所示。运行成功后,可获得表格名称,如图3-200所示。
图3-199
图3-200
这种方法就是传说中的VBA写代码法,需要资深职场人士对代码的语法非常熟悉,有兴趣的小伙伴可以自行研究。如果代码实在看不懂,推荐用另外一种方法。
方法二:名称定义法
步骤1:将鼠标光标放在工作表任意位置,依次单击“公式→定义名称”,定义一个名称,设置引用位置为=get.workbook(1),如图3-201所示。
图3-201
步骤2:选中工作表对应的行数,比如本例为7个工作表,则选中7行,多选一些行也没关系。然后在编辑栏中输入公式=TRANSPOSE(表名),然后按Ctrl+Shift+Enter组合键,快速填充所选区域的公式。TRANSPOSE是转置函数,如图3-202所示。
图3-202
函数运行成功后,就会显示工作表文件对应的路径,效果如图3-203所示。
图3-203
上面的操作首先是利用get.workbook 函数获取表名,然后利用TRANSPOSE函数进行转置,让工作表竖排显示。
工作表获取后,发现会包含工作簿名字,再利用“分列”按钮进行分离。注意分列前,先把函数进行复制/粘贴成文本,即不受函数影响,然后利用分列功能进行分列,利用“]”符号进行分列。
步骤3:分列过程如图3-204所示,选择按分隔符拆分,因为有“]”分隔符在表名的前面。
图3-204
步骤4:在“其他”处输入“]”,如图3-205所示。拆分后的最终效果如图3-206所示。
图3-205
图3-206
总结: 两种方法都能解决问题,感觉第二种方法更容易操作和理解,当然学会了VBA写代码绝对能成为Office达人,不过毕竟还是少数,所以本书还是推荐第二种方法。