如何在excel中用巨集(VBA)實現VLOOKUP的功能

2021-07-08 20:30:34 字數 1360 閱讀 1806

1樓:慶年工坊

function myvlookup(val, rg as range, n as integer, f as boolean)

arr = rg

if f then

for i = ubound(arr) to 1 step -1if val >= arr(i, 1) thenmyvlookup = arr(i, n)end function

end if

next

else

for i = 1 to ubound(arr)if val = arr(i, 1) thenmyvlookup = arr(i, n)end function

end if

next

end if

myvlookup = "nothing is find!"

end function

2樓:

sub test()

dim dic as object,mary,mrow as long,

set dic=createobject("scripting.dictionary")

with worksheets("資料")

mrow=.cells(.rows.count,1).end(3).row

mary=.[a2].resize(mrow-1,2)

end with

for i=1 to ubound(mary,1)

dic("" & mary(i,1))=mary(i,2)

next i

with worksheets("求解表")

mrow=.cells(.rows.count,1).end(3).row

mary=.[a2].resize(mrow-1,1)

for i=1 to ubound(mary,1)

if dic.exists("" & mary(i,1)) then

mary(i,1)=dic.exists("" & mary(i,1))

else

mary(i,1)="no find!"

end if

next i

.[b2].resize(ubound(mary,1),1)=mary

end with

end sub

3樓:矮漢恨天高

既然使用了vba就沒必要再使用內建函式,vba可以把vlookup重新定義。

4樓:毋亙

vba不見得比內建函式快哦

5樓:匿名使用者

上傳附件 我看看

留個聯絡唄

EXCEL中用VBA複製整行,EXCEL中怎麼用VBA抽取整行資料?

用 vlookup 函式。到excel幫助中學習ta的用法。這裡假設表1的資料在a h列 用函式可在表二的b1輸入公式如下,公式右拉完成 a1輸入序號 vlookup a1,sheet1 a h,column 0 如果用vba實現,不管表1資料有幾列,整行復制。如下 private sub work...

在excel中如何使用vba的巨集

保護公式可以這樣 選擇不需要保護 需要錄入內容 的單元格,設定單元格屬性,最後一個 保護 卡里面的 鎖定 取消,其它那些沒有取消鎖定的有公式的單元格自然是鎖定狀態。下一步是在工具 審閱 新版本 或者 工具 選單 舊版本 裡面選擇 保護工作表 設定一個密碼後確認。完成這兩步之後,鎖定的單元格內容就無法...

excel中用巨集新增特定批註

sub aa 當 rng區域 內資料大於 n 時,插入批註dim n as integer n 100 插入批註的閥值,更改 n 的實際值 dim rng as range set rng range a1 b5 作用的區域,更改 內的內容 for each c in rng if c.value ...