當前位置:成語大全網 - 漢語詞典 - EXCEL VBA:這些陳述是什麽意思?有沒有大神把它們逐句翻譯出來?

EXCEL VBA:這些陳述是什麽意思?有沒有大神把它們逐句翻譯出來?

Private worksheet _ activate()'工作表激活事件

Set d = createobject("腳本。dictionary ")'將d指定為dictionary對象。

arr = Sheet1。使用範圍

對於i = 2到下界(arr)

If arr(i,1)& lt;& gt""然後d(arr(i,1)) = "" 'D添加關鍵字。

然後

同範圍(“B2”)。確認

。刪除

。add3,1,1,join (d.keys,“,”)b2增加的數據有效性等於d關鍵字鏈接的值。

以…結尾

設置d =無

末端接頭

子查詢()

Dim d,arr,brr(),ar,br(),abr(),m,n,I,j,a,b,aa,s

範圍(" A5:P10000 ")。“清除內容”清除(“A5: P10000”)單元格區域的內容。

如果Range("B2") = " "那麽MsgBox "請選擇壹項!程序退出。,64,“提示”:退出短接

如果Range("C2") = " "那麽MsgBox "請填寫出庫數量!程序退出。,64,“提示”:當出口子單元格B2和C2為空時,會彈出壹個對話框。

Arr = Sheet1。“使用範圍”分配數組。

對於在ARR1維度上的i = 2到UBound(arr)'循環。

如果arr (I,1) = Range("B2 "),arr(i,4) = "可用",那麽'判斷單元格是否等於Range("B2 "),arr (I,4) = "可用",執行下面的代碼。

M = m+1 'M個值被累加。

Redim preserve BRR (1to7,1toM)'為BRR數賦值,

對於j = 1到6 'J循環從1到6。

Brr(j,m) = arr(i,j)'給Brr賦值等於相應arr數組方面的值。

然後

Brr(7,m) = arr(i,10)'也是壹個Brr賦值。

如果…就會結束

如果arr(i,1) = Range("B2 "),那麽,判斷arr (I,1) = range ("B2 "),執行下面的代碼。

S = s+1的累加值。

Redim preserve abr (1to7,1tos)' m也是分配給abr的值,等於相應的arr數組方面。

對於j = 1到6

abr(j,s) = arr(i,j)

然後

abr(7,s) = arr(i,10)

如果…就會結束

然後

如果m = 0,則‘如果m等於0,則執行以下過程。

範圍(" B5:H10000 ")。“清除內容”清除((b5: h10000”)單元格區域的內容。

【b5】。resize (s,7) =應用程序。transpose (abr)' {b5]擴展區域後,賦值等於abr轉置的值。

range(" B5:H " & amp;S+4)。Sort [H5]'對H列進行排序。

MsgBox " " & amp範圍(“B2”)& amp;“該物料可發料的庫存為0!程序退出。,64,“提示”彈出提示

' Exit Sub '退出程序。

如果…就會結束

【b5】。resize (m,7) =應用程序。transpose (BRR)' {b5]展開區域後,賦值等於BRR轉置的值。

range(" B5:H " & amp;M+4)。Sort [H5]'對H列進行排序。

arr = Range(" B5:H " & amp;M+4)'重新分配ARR

範圍(" B5:H10000 ")。“清除內容”清除((b5: h10000”)單元格區域的內容。

【b5】。resize (s,7) =應用程序。transpose (abr)' {b5]擴展區域後,賦值等於abr轉置的值。

range(" B5:H " & amp;S+4)。Sort [H5]'對H列進行排序。

ARR數組中的For i = 1 To UBound(ARR)'循環。

A = a+arr(i,3)'給a賦值。

然後

B = Val(Range("C2 ")'給b賦值

如果a-b & lt;如果A-B小於0,則執行以下過程。

MsgBox " " & amp範圍(“B2”)& amp;“現有庫存項目”&;a & amp“不夠這次出站的!程序退出。,64,“提示”彈出提示

出口接頭

如果…就會結束

對於i = 1到UBound(arr)

n = n + 1

ReDim Preserve br(1到7,1到n)

對於j = 1到7

br(j,n) = arr(i,j)

然後

aa = aa + arr(i,3)

If Val(aa)>= Val(b) Then

為...退出

如果…就會結束

然後

br(3,n) = br(3,n) - (aa - b)

[J5]。Resize(n,7) =應用程序。Transpose (br)'上面的代碼是將值賦給[J5]。Resize (n,7)等於轉置的(br)內容。

末端接頭