假定表格中A列是輸入姓名的,現(xiàn)在A1單元格已經(jīng)有一個姓名了,我要從A2單元格往下輸入,要保證每次輸入不重復(fù),方法如下:
選中A2單元格,點擊數(shù)據(jù)菜單->有效性,設(shè)置標簽里面,允許一欄選為“自定義”,公式為:
=IF(ISBLANK(A2),TRUE,IF(ISERROR(VLOOKUP(A2,$A$1:B1,2,FALSE)),TRUE,FALSE))
點擊確定,選中A2單元格,用鼠標往下拖動填充柄(填充柄:位于選定區(qū)域右下角的小黑方塊。將用鼠標指向填充柄時,鼠標的指針更改為黑十字),填充完預(yù)定要輸入姓名的區(qū)域即可。
現(xiàn)在試一下,在A2單元格以下的A列輸入數(shù)據(jù)時,只要與前面任一單元格的內(nèi)容一致,就會顯示輸入值非法的提示框,好了,任務(wù)完成。
好吧!把公式原理說一下,你就知道了。
上面的公式中,用填充柄進行填充后,假如是第88行,其數(shù)據(jù)有效性的判斷公式相應(yīng)填充為:
=IF(ISBLANK(A88),TRUE,IF(ISERROR(VLOOKUP(A88,$A$1:B87,2,FALSE)),TRUE,FALSE))
再來分析上面的公式,首先是用最外層的IF函數(shù),判斷條件是ISBLANK(A88),作用是先判斷A88是否已填入數(shù)據(jù),現(xiàn)在,如果要在A88中填入數(shù)據(jù),哪ISBLANK函數(shù)為FALSE,IF轉(zhuǎn)向后面的“IF(ISERROR(VLOOKUP(A88,$A$1:B88,2,FALSE)),TRUE,FALSE)”部份執(zhí)行,這又是一個邏輯判斷,條件是“ISERROR(VLOOKUP(A88,$A$1:B87,2,FALSE))”,這是公式的核心內(nèi)容。首先來看VLOOKUP(A88,$A$1:B87,2,FALSE),這個函數(shù)的作用是從A1到B87的區(qū)域內(nèi),查找是否存在有與A88單元格的內(nèi)容相同的單元格,有兩種可能:
1、如果有的話(假定是A11),就返回B11單元格的內(nèi)容,這時,ISERROR(B11)判斷為FALSE,(ISERROR作用是判斷是否為#N/A,如果是就返回TRUE,不是就返回FALSE),哪第二層IF函數(shù)返回值為FALSE,整個公式的值為FALSE,EXCEL的有效性判斷為非法值,就會出現(xiàn)提示。
2、如果沒有,“VLOOKUP(A88,$A$1:B87,2,FALSE)”就會返回一個錯誤值為“#N/A”,此時ISERROR函數(shù)結(jié)果為TURE,哪第二層IF函數(shù)返回值為TRUE,整個公式返回值TRUE,EXCEL的有效性判斷為合法值,就可以輸入了。
這樣,C1295單元格的公式可設(shè)置為:
=IF(ISBLANK(C1295),TRUE,IF(ISERROR(VLOOKUP(C1295,$C$1:D1294,2,FALSE)),TRUE,FALSE))
注意,這里的$C$1:D1294區(qū)域是你電話號碼表上的姓名列區(qū)域(從開始到你輸入姓名上一行的內(nèi)容),如果姓名是從第五行開始的,哪就應(yīng)該改為$C$5:D1294。
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。