前幾天同事妹子突然在群裡@我,問我懂不懂宏,她經常都要把導出來的一堆csv格式數據導入到同一個Excel裡處理、保存。然後我就幫她寫了個宏,但是她又不懂怎麼用
于是就有了上一篇推文【office技巧】宏。
原本給她寫的是通過【打開一個CSV,複制到ActiveSheet裡。接着打開下一個CSV】循環。
但有個缺點:默認情況下CSV用Excel直接打開,長串數字會自動轉成科學記數法存儲,而且過長的後面全部變成0000了。。。
于是昨晚又徹夜不眠地改了一個通用型的版本,V2.0,哈哈哈。
1、宏代碼這個功能通過宏來實現,分兩種模式:
1、導入到Excel的同一個工作表中;
2、導入到Excel的不同工作表,并以CSV名稱命名sheet
Sub ImportMultiCSV()
Application.ScreenUpdating = False
Dim myFile$, myPath$, i%, Arraycol%, myArray() As Integer, independent%
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "選擇目标文件夾"
If .Show = -1 Then
myPath = .SelectedItems(1)
Else
傻瓜式步驟:
靜态步驟:
然後選擇導入的CSV數據有多少列(如原始列數有n列,則輸入>=n的數字都可以。例如我的素材有8列,則輸入8或以上數字都可以):
『模式1』所有CSV數據彙總在同一個sheet中。
『模式2』每個CSV各自成一個sheet。
『模式1』結果:
『模式2』結果:
3、動圖演示
結束語
本次的【宏】可以運用到CSV、TXT在内的所有文本格式數據導入,隻要将代碼裡的〖*.csv〗改成〖*.txt〗就行了。
原創不易,轉載請保留出處。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!