史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   軟體應用問題討論區 (http://forum.slime.com.tw/f5.html)
-   -   請問一個關於EXCEL「IF」函數的問題? (http://forum.slime.com.tw/thread6399.html)

superhcs 2003-01-03 09:49 PM

請問一個關於EXCEL「IF」函數的問題?
 
各位大大好:
敝人是任教國中的教師,近來為將學生的模擬考成績換算成量尺成績,而大傷腦筋!還請不吝教導。
例如:英語科有45題,答對45題得滿分60,對44題得58分,43題得57分,對42題得54分,如此一直下去,原本我是想說利用EXCEL的IF函數加以換算,但巢狀函數似乎只能使用到「七層」,換句話說,我寫到對37題時,EXCEL就認為錯誤而無法繼續下去,請問有沒有解決辦法呢?還是可以利用其他函數或是方法來達到自動換算的目的,請大家幫個忙,謝謝!

jyao 2003-01-03 10:16 PM

建一個marco (巨集) 吧!

superhcs 2003-01-03 10:29 PM

我不會寫巨集ㄋㄝ!還有其他方法嗎?請幫幫忙,謝謝!

TigerLee 2003-01-03 10:48 PM

你把你的excel檔案e-mail給我,我看一下資料的格式會把答案e-mail回給你
mtxtop@ms22.hinet.net

from Tiger

alan7583 2003-01-03 11:38 PM

可使用Excel的查表函數,以下說明可在help看到
VLOOKUP
請參閱

在一陣列或表格的最左欄中尋找含有某特定值的欄位,再傳回同一列中某一指定儲存格中的值。如果用來比對的數值位於您所要尋找的資料之左邊直欄時,就必須使用到 VLOOKUP 函數。

語法

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

Lookup_value 是您打算在陣列的最左欄中搜尋的值。Lookup_value 可以是數值、參照位址或文字字串。

Table_array 是要在其中搜尋的資料表格。通常是儲存格範圍的參照位址或類似資料庫或清單的範圍名稱。

如果 range_lookup 為 TRUE,則 table_array 第一欄的值必須以遞增次序排列:...,-2,-1,0,1,2,...,A-Z,FALSE,TRUE;否則 VLOOKUP 無法給予正確的值。如果 range_lookup 為 FALSE,則 table_array 不須事先排序。


您可以選擇 [資料] 功能表上的 [排序] 指令設定 [遞增],以確保陣列中的值依遞增次序排列。


Table_array 第一欄裡的值,可以是文字、數字或邏輯值。


英文字母不分大小寫。
Col_index_num 是個數值,代表所要傳回的值位於 table_array 中的第幾欄。如果 col_index_num 引數值為 1,傳回在 table_array 第一欄的值,如果 col_index_num 引數值為 2,傳回 table_array 第二欄的值,依此類推。如果 col_index_num 小於 1,則 VLOOKUP傳回錯誤值 #VALUE!;如果 col_index_num 超過 table_array 總欄數,則 VLOOKUP 傳回錯誤值 #REF!。

Range_lookup 是個邏輯值,用來指定 VLOOKUP 要尋找完全符合或部分符合的值。當此引數值為 TRUE 或被省略了,會傳回部分符合的數值;也就是說,如果找不到完全符合的值時,會傳回僅次於 lookup_value 的值。當此引數值為 FALSE 時,VLOOKUP 函數只會尋找完全符合的數值,如果找不到,則傳回錯誤值 #N/A。

註解

如果 VLOOKUP 函數找不到 lookup_value,且 range_lookup 為 TRUE 時,則使用僅次於 lookup_value 的值。


如果 lookup_value 比 table_array 第一欄中的最小值還小,則 VLOOKUP 傳回錯誤值 #N/A。


如果 VLOOKUP 函數找不到 lookup_value,且 range_lookup 為 TRUE 時,則 VLOOKUP 傳回錯誤值 #N/A。

範例

本處缺一圖表,請看excel之help

在上面的工作表中,儲存格範圍 A4:C12 命名為 "Range":

VLOOKUP(1,Range,1,TRUE) 等於 0.946

VLOOKUP(1,Range,2) 等於 2.17

VLOOKUP(1,Range,3,TRUE) 等於 100

VLOOKUP(.746,Range,3,FALSE) 等於 200

VLOOKUP(0.1,Range,2,TRUE) 等於 #N/A,因為搜尋值 0.1 小於欄 A 中的最小值。

VLOOKUP(2,Range,2,TRUE) 等於 1.71

kbibm 2003-01-04 12:00 AM

可否簡單一點的利用rounddown這個fx把1.333每題,先round掉到0.0位再rounddown到0位不就簡單多了??
若您需要例子, 請給我你的e-mail address

superhcs 2003-01-04 08:15 AM

謝謝各位大大提出的意見,但是非常汗顏,敝人對EXCEL的函數實在不瞭解(本人是文科的!),只是很懷疑:難道真的不能利用簡單的函數像IF來自動換算嗎?或者向前面的大大講的,要用巨集,能否大概講一下,巨集要如何錄製與使用。打擾各位寶貴的時間真的很不好意思!
本人的EMAIL是superhcs1@pchome.com.tw
請大家提供解決方法,謝謝!

jonethon 2003-01-04 10:24 AM

老兄:

本人在史萊姆網站討論區中看到您的留言,所以利用一點時間寫了一個範例檔,希望您更可以充分體驗,在檔案裡附加了許多的說明及建議,
祝您Excel使用功力更上一層。如有任何疑問請來信討論。


範例檔已mail至您的信箱:

superhcs1@pchome.com.tw

superhcs 2003-01-04 01:21 PM

謝謝樓上那位大大的幫忙!我正努力的在研究中,過去除了使用SUM,AVERAGE等一些函數外,其他函數都不會使用,所以看起來真的是「霧煞煞」,不過我會努力的!真的很感謝您撥空說明,THX!

ctwang 2003-01-04 03:01 PM

我是高職教電腦的老師,你的問題應該是使用alen7583網友所言的vlookup比較合適,至於正確的方法,你可到書店看一下電腦書籍都有談到........


所有時間均為台北時間。現在的時間是 10:50 AM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1