0
我是VBA的新手,我嘗試插入VLOOKUP
函數。將函數插入一系列單元格
我從網頁獲取數據,經過一些自動過濾和自動刪除後,數據收縮爲較小的大小。但由於它是一個動態數據,所以最後一行總是變化。
我的數據是這樣的:
A B C
FleetType MSN Registration
我有登記(C
)填滿,並希望找到其在不同的表中所列出的船隊類型。
我試圖用FormulaR1C1
插入公式,但最終得到了1004條消息。我也嘗試使用Application.VLookup
,也得到了1004消息。
由於我無法做到這一點,因爲我知道註冊的前兩個字母提供了關於車隊類型的線索,所以我已經設置了一個嵌套的IF
函數並試圖插入它;沒有運氣也。
這是sub
進出口試圖使其運行(我沒有刪除,我試過的):
Sub formuller()
Worksheets("Data").Select
Worksheets("Data").Activate
'range("A1:A600").Formula = "=IF(LEFT(D2;2)="JK";"Boeing";IF(LEFT(D2;2)="JG";"Boeing";IF(LEFT(D2;2)="JF";"Boeing";IF(LEFT(D2;2)="JH";"Boeing";IF(LEFT(D2;2)="JV";"Boeing";IF(LEFT(D2;2)="JJ";"Boeing";IF(LEFT(D2;2)="JY";"Boeing";IF(LEFT(D2;2)="LJ";"Boeing";"Airbus"))))))))"
On Error Resume Next
Range("A1:A2").FormulaR1C1 = "=IF(LEFT(RC[3];2)=""JK"";""Boeing"";IF(LEFT(RC[3];2)=""JG"";""Boeing"";IF(LEFT(RC[3];2)=""JF"";""Boeing"";IF(LEFT(RC[3];2)=""JH"";""Boeing"";IF(LEFT(RC[3];2)=""JV"";""Boeing"";IF(LEFT(RC[3];2)=""JJ"";""Boeing"";IF(LEFT(RC[3];2)=""JY"";""Boeing"";IF(LEFT(RC[3];2)=""LJ"";""Boeing"";""Airbus""))))))))"
On Error GoTo 0
'Worksheets("Data").Range("A1:A600").FormulaR1C1 = "=VLOOKUP(RC[3];Filo!R1C1:R309C3;3;FALSE)"
有沒有解決這個辦法嗎?我所要求的只是在VBA項目中使用好舊的VLookup
。
把';'改成''',看它是否有效。無論您的本地公式分隔符是什麼,「FormulaR1C1」都使用逗號作爲公式字段分隔符。 – BrakNicku
謝謝,像魅力一樣工作。 –