Excel情報局 職場聯盟Excel ![]() 大家好,最近DeepSeek(深度求索)AI智能在抖音火爆了,聽說美國的ChatGPT都感覺到了危機,最重要的是DeepSeek是開源免費的。智能化更加優秀。 那么如何運用DeepSeek實現在Excel中對工作簿內所有工作表進行批量合并呢? 如下圖所示: 有“銷售部”、“財務部”、“生產部”3張分表,我們想要將這3張分表合并到新的總表中,3張分表的首行都為格式和內容相同的標題行。并且合并后的總表也只能有首行一行標題行。 DeepSeek Chat是由深度求索公司開發的AI智能助手。DeepSeek Chat基于DeepSeek大語言模型開發,可以進行自然語言處理和文本生成,回答各種問題,提供信息查詢、對話交流、知識問答等服務。 我們來摘要一段DeepSeek前期思考,整個過程感覺像人一樣思考: 【嗯,用戶有一個Excel工作簿,里面有多個工作表,每個工作表的第一行是標題行。用戶想把這些不同工作表里的數據合并到一個新的工作表中,并且保留首行作為標題行。需要寫一段VBA代碼來實現這個功能。 首先,我需要理解每個工作表中的數據結構。比如,“銷售部”、“財務部”、“生產部”都有相同的列結構:部門、姓名、工號。數據行從第二行開始,每個工作表有三行數據,但實際情況下可能有更多。我需要確保代碼能處理不同數量的數據行。 接下來,合并數據的步驟應該是這樣的:新建一個工作表,作為匯總表。然后遍歷每一個現有的工作表,跳過第一個標題行,把數據復制到匯總表中。 需要注意的是,匯總表的標題行只需要出現一次,所以第一次復制時要包含標題,之后的不再包含,或者先單獨復制標題行,再處理數據。 可能的陷阱:如果工作表中有除了數據之外的其它內容,比如中間有空行或者其它格式,可能會影響結果。但根據用戶提供的數據示例,每個工作表的結構是規范的,所以暫時不需要處理這些特殊情況。 另外,要確保VBA代碼能夠動態識別所有的工作表,排除掉可能存在的非數據工作表。例如,用戶可能有一個匯總表已經存在,或者在代碼運行前需要先檢查是否存在,若存在則刪除或覆蓋】 DeepSeek給出我們最終的VBA代碼解決方案: 代碼說明: 創建名為"匯總"的新工作表,若已存在則清空內容。 從第一個工作表復制標題行到匯總表首行。 遍歷所有工作表(排除匯總表自身)。 自動識別每個工作表的數據范圍(從A2到C列最后一行)。 將數據依次追加到匯總表中。 最終自動調整列寬并彈出完成提示。
DeepSeek還針對一些特殊情況給出的一些注意事項,很貼心: 注意事項: 確保所有工作表結構一致(列順序:部門、姓名、工號)。 標題行必須位于每個工作表的第一行。 支持任意行數的數據合并。 結果保存在新建的"匯總"工作表中。 代碼會跳過沒有數據的工作表(僅含標題行的工作表)。 我們根據下面的“運行方法”,在Excel或WPS表格中進行操作,最終即可完成多工作表合并: 運行方法: 按 Alt+F11 打開VBA編輯器。 插入新模塊。 粘貼代碼。 按F5運行宏。 查看生成的"匯總"工作表。 |
|