在Excel 2010中,我有一個VBA函數,它可以搜索工作表並根據三個值找到匹配項。一旦找到匹配,它將返回一個範圍,該範圍是整行數據。現在我在一個單元格的Excel工作表中調用該函數。使用公式可以將該範圍分成單獨的單元格。它基本上就像查找行,然後複製粘貼從調用單元開始的單元格。我能想到的唯一的事情就是每個單元保存範圍內的小區將Excel範圍拆分爲單個單元格
A1 = {my range}
,然後使用後的INDEX函數像
A2 = INDEX(A1, 1,1)
A3 = INDEX(A1, 1,2)
A4 = INDEX(A1, 1,3)
尋找任何建議。我可以發誓有一個非VBA功能,我可以使用它將一個範圍分成單獨的單元格。
用示例編輯: 在我的主工作表中,我有大量的數據,有些數據有錯誤。那些有錯誤的人在另一個工作表中查找。
main worksheet
status, height, width, weight, sheet, m, d, z, e
ok, 1, 2, 5, , 100, 5, 7, 5
err, 1, 2, 6, TEMPA
err, 1, 2, 7, TEMPA
ok, 1, 2, 8, , 102, 7, 9, 8
ok, 1, 2, 9, , 104, 8, 7, 0
組合的高度,寬度和重量是獨一無二的。 helper woksheets與main相同,但會丟失數據。
TEMPA
ok, 1, 2, 6, , 25, 66, 0, 1
ok, 1, 2, 7, , 99, 7, 2, 6
因此,本質上我想加入兩個高度,寬度和重量,但只有那些有錯誤的人。助手工作表的名稱會有所不同,但是這是預先計算的。我編寫的代碼採取三個獨特的條件,轉到幫助程序工作表,進行匹配,然後返回由匹配行組成的範圍對象。
function GetMyRange(h, wd, wt, sht) as Range
'do the match here
end function
該函數的工作原理是我可以設置一些調試語句,我正在進行正確的匹配。然而,在主工作表中,我如何獲取範圍對象並將範圍對象的各個元素放入每個單元格中以「修復」錯誤?
你是否試圖將它從一個單元格中返回整行?或者你還想讓它這樣做? – user2140261
我想要返回整行,但將來自源的單元格放入我的目標中,但是放置在單個單元格中。就像複製/粘貼一樣。 – sinDizzy
您需要使用子例程來執行此操作,從工作表調用的工作表函數或UDF無法執行此類操作。 –