[英]Excel Macro (VBA) that checks cell values against a list in another workbook
我有兩個工作簿,一個是數據(我們稱為 WB 1),它需要對照包含條目真實值的另一工作簿(我們稱為 WB 2)上的值檢查列 k 中的值。 每個條目都有一個附加的數量,因此價格因數量而異。 WB 1 在一個列表中,每行都有條目,WB 2 每行都有一個項目,每列是該數量的價格。 我需要一個宏來相互檢查這些值,並用 WB 2 中的正確值替換 WB 1 上的任何值。
示例數據:
WB 1
| Column A | Column C | Column K |
---------------------------------
| Item Name | 30 | $5.42 |
WB 2
| Column A | Column F | Column G | Column H | ... |
15 30 45
--------------------------------------------------
| Item Name | $2.86 | $4.53 | $6.00 | ... |
您可以使用 vlookup 執行搜索並按照以下說明進行操作以獲得更好的性能。
將 WB1 設置為源工作,將 WB2 設置為目標工作。
使用“For 循環”選擇 WB1 中的項目。 確保選擇適當的列及其元組
對於 rowIndex = 2 到 lastRow
(或者使用范圍)
在搜索之間執行 vlookup。
在所需列中粘貼/顯示輸出
遞增循環(下一行索引)。
(如果您需要確切的代碼片段,請告訴我)
問候, 瑪尼
這是代碼片段
*要記住的要點
階段 1:加載工作簿
階段 2:計算/操作/邏輯
lastRow = SourceData.Rows.Count
For rowIndex= 2 to lastRow
lTemp = sourceWorksheet.Cells(rowIndex, "Q").Value
lDigit = VLOOKUP( value, table, index_number, [not_exact_match] ) 'not_exact_match is usually false
DestinationWorksheet.Cells(rowIndex, "AM").Value = lDigit
next rowIndex
[記得使用符合您要求的適當數據類型聲明變量]/
問候, 瑪尼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.