[excel]:篩選問題

2012-06-15 6:56 am
假設有個大約咁個表,係紀錄貨倉仲有幾多生果:
product quantity
Apple 10
Orange 8
mango 7
.
.
.
.
.
.
.
.
banana 7
依度大約有2000行左右
然後,係quantity方面,大約有二百項需要作出修改,即有200個生果quantity唔同咗,你要作出update,佢就俾咗個表俾你,內容大約係咁"
product quantity
mango 4
lemon 7
banana 8
.
.
.
.
.
.
.
orange 7
佢依個表,只係show出要修改quantity的生果,
我想問,除咗一項一項修改200次,有咩方法可以更快

回答 (2)

2012-06-15 4:47 pm
✔ 最佳答案
你好。

這個問題不是用篩選來解決的,有一個更簡單的方法,Lookup。

這次我會選擇使用VLookup。

簡單來說vlookup是用來比對資料的,以下是一個例子。

先下載例子檔案:https://dl.dropbox.com/u/15368661/example/VLOOKUP.xls

我們現時需要的就是在C2寫一公式並應用至以下全部(你的所有Qunatity)

公式:=VLOOKUP(A2,$H$2:$I$5,2,FALSE)

這公式可以讓你所有修訂了的資料都更改,但沒有修改的卻變成了#N/A,

所以我們要多做一些步驟,由於上述公式,我們得到了一堆新的Quantity和#N/A
(沒有變的數字),所以我們在D2鍵入以下公式並下拉應用至所有資料:

=IF(ISERROR(C2),B2,C2)

D2中就是你想要的Quantity,複製整欄,檢視->選擇性貼上->值 (你可以貼在原本的B2,然後把C和D欄都刪去)

(不做這一步的話儲存格中的會是公式)

完成。在此我解釋一下這些函數。

VLOOKUP其實就是讓你比對兩個表格,並作出修改。

公式:=VLOOKUP(A2,$H$2:$I$5,2,FALSE)

A2是你要參照的資料,E2:F5是你要比對的整個表格,2是指顯示第N格的數值,例如H2:I5這個表只有兩欄,鍵入1會出現水果名字,2則是數量。

H2和I5中間的$是用來鎖定列表,這裡有點難解釋,簡單來說就是讓公式應用至其他格時不會移位。

FALSE是指必需相同才採用(謹記必需加上false)

ISERROR則是如果vlookup中顯示了#N/A,就會回傳TRUE,所以我利用這做了一個IF,當出現#N/A時,就用回舊值。

有不明白歡迎討論。
2012-06-20 4:54 am
之前讀完個課程,課程有教到Excel VBA實用技巧
我覺得導師教得幾好
有免費試睇
由基礎到進階都有
詳細可以參考Excel VBA 程式編寫基礎班
http://www.systematic.com.hk/vba.htm


收錄日期: 2021-04-13 18:44:36
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20120614000051KK00642

檢視 Wayback Machine 備份