暗淡?我?作為?整數,?j?作為?整數,?k?作為?整數,?n?作為?整數
暗淡?啊?Brr(),?d
暗淡?噓?作為?工作表
暗淡?PathOfFile?作為?字符串,?NameOfFile?作為?線
以下只是標註程序,沒有具體說明。有什麽不懂的,可以找相關句子的具體用法,或者提問。
註:超級
“易變”易變函數
PathOfFile?=?此工作簿。路徑?& amp?“\ "”文件路徑,位於當前文檔所在的文件夾下。
NameOfFile?=?“數據來源。xls " '文件名
開?錯誤?簡歷?“Next”防錯語句
用什麽?GetObject(path offfile?& amp?NameOfFile)?使用時,以下操作基於上述文件。
如果?呃?& lt& gt?0?如果出了問題。
GoTo?“EndValue”直接運行到endvalue。
結束?如果
設置?d?=?Createobject("腳本。字典")'創建壹個字典。
為了什麽?每個?噓?在?工作簿("數據源。xls”)。“工作表”遍歷此工作簿中的每個工作表。
如果?先令範圍(" B1 ")?& lt& gt?""?如果B1不為空。
Arr?=?先令範圍(" B1 ")。CurrentRegion?將b1所在的currentregion寫入arr數組。
我?=?先令UsedRange.Columns.Count?I=工作表中使用的最大列數。
為了什麽?j?=?2?去哪?UBound(Arr,2)?循環遍歷數組(即工作表的列)。
n?=?n?+?1'N增量
d(Arr(J,3))?=?n '將C列(不包括C1)寫入字典。
雷迪姆?保存?Brr(1?去哪?我,?1?去哪?n)?重新定義二維數組brr
為了什麽?k?=?1?去哪?我?通過k循環
Brr(K,?n)?=?Arr(J,?k)’給二維數組brr賦值。
下壹個?K
下壹個?J
結束?如果
下壹個?噓
。接近?“假”關閉文件
結束?“With”以結尾,以下操作在當前文件下執行。
範圍(“C2·:D”?& amp?範圍(" A65536 ")。結束(3)。排)。“清除內容”清除CD中除第壹行之外的兩列數據。
為了什麽?我?=?2?去哪?範圍(" A65536 ")。結束(3)。劃?循環通過I。
如果?不是嗎?d .存在(細胞(I,2).值)?然後呢?如果B列中的數據在字典中不存在。
細胞(我,?2)?=?“未找到”B欄顯示“未找到”
細胞(我,?3)?=?“未找到”& C列顯示“未找到”
否則。
細胞(我,?2)?=?Brr(3,?d(細胞(I,2).值))?將數組brr中的相應值賦給列b。
細胞(我,?3)?=?Brr(4,?d(細胞(I,2).值))?將數組brr中的相應值賦給列c。
結束?如果
下壹個?我
EndValue:'單行,前面是goto需要轉到的語句。
結束?潛水艇