昏暗排列,brr
Set d = createobject("腳本。dictionary ")'來創建壹個字典對象d。
set d 1 = createobject(" scripting。dictionary ")'創建壹個字典對象d1。
對於本工作簿中的每個sh。“工作表”在當前工作簿中查找工作表名稱不是“merge”的工作表。
如果噓。名稱& lt& gt“Merge”Then '如果您找到壹個工作表名稱不是“Merge”的工作表,請執行下列操作:比較合並。
m = 0: n = 0
Arr = sh。【a1】。' currentregion '將當前工作表的內容賦給ARR數組。
對於i = 2 To UBound(arr)'把當前工作表第二列的內容作為字典的D標記,給他取值I,所以估計第二列的內容是符號化的。
d(arr(i,2)) = i
接下來我
對於j = 2 To UBound(arr,2)'把當前工作表第1行的內容作為字典d1的符號,給他取值j,估計第1行就是標題行。
d1(arr(1,j)) = j
下壹個j
f = Dir(ThisWorkbook。路徑與路徑。" \ " & amp先令姓名和名稱。".'在當前工作簿目錄中查找以當前工作表命名的工作簿。
如果在當前工作簿目錄中找不到名為“merge”的工作簿,則跳出。
設置wb = Workbooks。打開(ThisWorkbook。路徑與路徑。" \ " & ampf)'如果找到,請打開工作簿。
Brr = WB。工作表(1)。【A1】。'當前區域'將打開的工作簿中工作表1的內容賦給數組BRR。
對於i = 2到UBound(brr)'比較並查找存儲在字典D,d1中的標誌信息和值。
m = d(brr(i,1))
調試。打印I;m
對於j = 2到下界(brr,2)
n = d1(brr(1,j))
調試。打印j;n
如果m & lt& gt”“而n & lt& gt如果在字典D,d1中找到存儲的標誌信息,則更新存儲在相應arr中的值。
arr(m,n) = brr(i,j)
調試。打印“ZD:”;arr(m,n)
如果…就會結束
下壹個j
接下來我
wb。關閉假
先令【a1】。CurrentRegion = arr?將比較更新後存儲在arr中的值重新分配給當前工作表,以完成比較更新!
如果…就會結束
下壹個
100:
MsgBox "主鍵"
末端接頭
例如,有兩個這樣的工作簿:
在sdd1.xls中,可以運行宏來更新學生各科成績!而在SS合並中,中學編號和學科名稱可以任意排列,如下: