我有一個Excel工作簿,其中有兩張表,名爲「Dashboard Supplier View」和「ComputingSolutions」。在儀表板供應商視圖選項卡中,用戶必須記下名稱中的值cell「categoryName」。當用戶在這個命名單元中寫下「Computing Solutions」並運行代碼時,我希望代碼轉到ComputingSolutions表單並將該表中列A中的所有供應商名稱存儲到數組中,以然後打印出原始工作表中的所有供應商名稱儀表板供應商視圖VBA:代碼運行但沒有生成輸出
「n」變量指的是ComputingSolutions表單上的已命名單元格,並且是該表單上的供應商數目(此編號已被寫下,用戶不需要更改)
當我運行代碼時,什麼也沒有顯示出來。在指定位置的儀表板供應商視圖表上沒有打印任何內容。我也沒有得到任何錯誤。我查了所有的名字,一切都拼寫正確。我不確定可能是什麼問題,但我懷疑它與激活工作表有關。
Public Sub DashboardSupplier()
Dim category As String
Dim supplierArray() As String
Dim c As Integer
Worksheets("Dashboard Supplier View").Activate
category = Names("categoryName").Value
'Suppliers for selectec category
If category = "Computing Solutions" Then
Worksheets("ComputingSolutions").Activate
n = Names("supplierAmount").Value
ReDim supplierArray(1 To n) As String
For c = 1 To n
supplierArray(c) = Cells(3 + c, 1)
Next c
Worksheets("Dashboard Supplier View").Activate
For c = 1 To n
Cells(6 + c, 4) = supplierArray(c)
Next c
End If
End Sub
'n'變量與命名單元格有什麼關係?名爲'n'的單元格是? –
您是否嘗試過調試?在「If category =」計算解決方案「然後」塊中放置一箇中斷(例如) - 您的代碼是否達到該點? –
n通過n =名稱(「supplierAmount」)引用指定的調用supplierAmount。值 –