分类目录归档:未分类

统计EXCEL工作簿中工作表数量的方法

统计EXCEL工作簿中工作表数量的方法

如果你使用 Microsoft Excel,可以使用 VBA 代码来统计一个 Excel 工作簿中有多少个工作表。

  1. 打开 Excel 工作簿
  2. 按 ALT + F11 打开 VBA 编辑器(或在开发工具中打开)
  3. 在模块窗口中粘贴以下代码:
  4. 按 F5 运行代码,你将看到一个对话框,显示当前工作表中工作簿的数量。
Sub CountSheets()
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim sheetCount As Integer
    sheetCount = 0
    Set wb = ThisWorkbook
    For Each ws In wb.Worksheets
        sheetCount = sheetCount + 1
    Next ws
    MsgBox "工作表数量:" & sheetCount
End Sub

请注意,上面的代码仅适用于 Microsoft Excel,并不适用于其他电子表格软件。

ChatGPT在Excel中的应用

平时有些数据需要分析处理,因为熟悉的Excel函数比较少且函数能处理的问题也有限,操作起来也费时费力。比如仓储行业需要分析库龄的问题,同一个零件号存在多次采购入库和多次出库的情况,当前库存对应的库龄可能存在多个,默认先进先出的原则,如何确定各个库龄对应的数量。

传统的方法是对数据进行拆分,先拆出最后一次入库的明细,然后调回主表,再把库存减掉第一次分配的数量;然后循环个四五次结束,个别情况可能会超过五次,不过这时手动分配都比再拆分然后调回主表要快。

这种循环的问题使用VBA代码来处理就非常省事了,直接运行代码等结果就行了,几万条的记录一个小时基本就处理完了。不过没学过VBA写不出来代码,那就把需要的结果和限制的条件发给ChatGPT让牠写,ChatGPT“思考”几秒钟后就能给出结果,不过可能存在条件表达不清楚或ChatGPT理解错了的情况,这就需要反复沟通。

ChatGPT
ChatGpt
ChatGPT
ChatGPT

沟通了两个多小时,最终解决了这个问题,把代码保存下来,啥时候用复制粘贴就可以了。有时间的话可以把代码再发给ChatGPT让牠逐句解释,也能学习一下。

补充一下,ChatGPT是个大型语言模型,熟悉多国语言,让牠写封英文邮件很轻松,非常适合外贸行业;写篇作文、写个小说都不在话下,甚至诗歌也能写;能写代码,熟悉多种编程语言,比如上面的VBA代码;逻辑能力不够强,用小学六年级的奥数题考过牠,没答对;如果把牠当成智能的搜索引擎来使用,很容易会被带到沟里,因为每次的回答都不一样,看起来都挺好的,其实是一本正经的胡扯。总体来说是个非常不错的帮手,也许不久之后很多工作会被牠替代了。