[算表] WorksheetFunction.Vlookup寫入Table參數

看板Office作者 (Blue night)時間7年前 (2018/08/02 09:11), 編輯推噓0(006)
留言6則, 2人參與, 7年前最新討論串1/1
軟體:EXCEL 版本:2010 想要自訂一個Moody's信評轉換成S&P信評的函數 Function Rating(Moodys) Rating = Application.VLookup(Moodys, Range("A:B"), 2, 0) End Function 上述寫法必須先在工作表的AB欄分別定義好相對應的穆迪與標普評等 但因為是要給大家用的 不能要求大家都有能力定義好AB欄 所以想要將 Range("A:B") 直接在自訂函數中寫死 我知道在儲存格中輸入的VLOOKUP函數可以使用類似 =VLOOKUP(Moodys,{"Aaa","AAA";"Aa1","AA+";"Aa2","AA";"Aa3","AA-"},2,0) 這樣的用法 但要如何將{.....}帶入Range("A:B")是我目前頭痛的地方 想請教 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.202.69.28 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1533172268.A.1A8.html

08/02 09:22, 7年前 , 1F
application.vlookup(moodys,[{"Aaa","AAA";...}],2,0)
08/02 09:22, 1F

08/02 10:02, 7年前 , 2F
原來只差這麼一點 謝謝S大!
08/02 10:02, 2F

08/02 10:23, 7年前 , 3F
請問若出現'識別項太長'的問題 有其他解法嗎
08/02 10:23, 3F

08/02 11:06, 7年前 , 4F
如無合適的方式解決的話,看以array方式配合工作表函數
08/02 11:06, 4F

08/02 11:07, 7年前 , 5F
index和match來回傳
08/02 11:07, 5F

08/02 17:10, 7年前 , 6F
解決了!!謝謝S大
08/02 17:10, 6F
文章代碼(AID): #1RObei6e (Office)
文章代碼(AID): #1RObei6e (Office)