作者home0303 (Blue night)
看板Office
標題[算表] WorksheetFunction.Vlookup寫入Table參數
時間Thu Aug 2 09:11:06 2018
軟體: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://webptt.com/m.aspx?n=bbs/Office/M.1533172268.A.1A8.html
1F:→ soyoso: application.vlookup(moodys,[{"Aaa","AAA";...}],2,0) 08/02 09:22
2F:→ home0303: 原來只差這麼一點 謝謝S大! 08/02 10:02
3F:→ home0303: 請問若出現'識別項太長'的問題 有其他解法嗎 08/02 10:23
4F:→ soyoso: 如無合適的方式解決的話,看以array方式配合工作表函數 08/02 11:06
5F:→ soyoso: index和match來回傳 08/02 11:07
6F:→ home0303: 解決了!!謝謝S大 08/02 17:10