會(huì)員登錄 - 用戶注冊(cè) - 網(wǎng)站地圖 Office中國(guó)(office-cn.net),專(zhuān)業(yè)Office論壇
當(dāng)前位置:主頁(yè) > 技巧 > Excel技巧 > 操作 > 正文

Excel 2000自定義函數(shù)

時(shí)間:2005-04-12 13:37 來(lái)源:未知 作者:未知 閱讀:
雖然Excel中已有大量的內(nèi)置函數(shù),但有時(shí)可能還會(huì)碰到一些計(jì)算無(wú)函數(shù)可用的情況。假如某公司采用一個(gè)特殊的數(shù)學(xué)公式計(jì)算產(chǎn)品購(gòu)買(mǎi)者的折扣,如果有一個(gè)函數(shù)來(lái)計(jì)算豈不更方便?下面就說(shuō)一下如何創(chuàng)建這樣的自定義函數(shù)。

  自定義函數(shù),也叫用戶定義函數(shù),是Excel最富有創(chuàng)意和吸引力的功能之一,下面我們?cè)赩isual Basic模塊中創(chuàng)建一個(gè)函數(shù)。 在下面的例子中,我們要給每個(gè)人的金額乘一個(gè)系數(shù),如果是上班時(shí)的工作餐,就打六折;如果是加班時(shí)的工作餐,就打五折;如果是休息日來(lái)就餐,就打九折。首先打開(kāi)“工具”菜單,單擊“宏”命令中的“Visual Basic編輯器”,進(jìn)入Visual Basic編輯環(huán)境,在“工程-VBAobject”欄中的當(dāng)前表上單擊鼠標(biāo)右鍵,選擇“插入”-“模塊”,在右邊欄創(chuàng)建下面的函數(shù)rrr,代碼如下: Function rrr(tatol, rr) If rr = "上班" Then rrr = 0.6 * tatol ElseIf rr = "加班" Then rrr = 0.5 * tatol ElseIf rr = "休息日" Then rrr = 0.9 * tatol End If End Function (如圖9)。

VB編輯器

圖9

  這時(shí)關(guān)閉編輯器,只要我們?cè)谙鄳?yīng)的列中輸入rrr(F2,B2),那么打完折后的金額就算出來(lái)了(如圖10)。

引用函數(shù)

圖10

7、矩陣計(jì)算

  Excel的強(qiáng)大計(jì)算功能,不但能夠進(jìn)行簡(jiǎn)單的四則運(yùn)算,也可以進(jìn)行數(shù)組、矩陣的計(jì)算。

 。1)數(shù)組和矩陣的定義   

  矩陣不是一個(gè)數(shù),而是一個(gè)數(shù)組。在Excel里,數(shù)組占用一片單元域,單元域用大括號(hào)表示,例如{A1:C3},以便和普通單元域A1:C3相區(qū)別。設(shè)置時(shí)先選定單元域,同時(shí)按Shift+Ctrl+Enter鍵,大括弧即自動(dòng)產(chǎn)生,數(shù)組域得以確認(rèn)。  

  一個(gè)單元格就是一個(gè)變量,一片單元域也可以視為一組變量。為了計(jì)算上的方便,一組變量最好給一個(gè)數(shù)組名。例如A={A1:C3}、B={E1:G3}等。數(shù)組名的設(shè)置步驟是:選定數(shù)組域,單擊“插入”菜單,選擇“名稱(chēng)”項(xiàng)中的“定義”命令,輸入數(shù)組名,單擊“確定”按鈕即可。更簡(jiǎn)單的命名辦法為:選擇數(shù)組域,單擊名稱(chēng)框,直接輸入名稱(chēng)就行了。   

  矩陣函數(shù)是Excel進(jìn)行矩陣計(jì)算的專(zhuān)用模塊。用“插入”-“函數(shù)”命令打開(kāi)“粘貼函數(shù)”對(duì)話框(如圖11),選中函數(shù)分類(lèi)欄中的“數(shù)學(xué)與三角函數(shù)”,在右邊欄常用的矩陣函數(shù)有: MDETERM——計(jì)算一個(gè)矩陣的行列式; MINVERSE——計(jì)算一個(gè)矩陣的逆矩陣; MMULT——計(jì)算兩個(gè)矩陣的乘積; SUMPRODUCT——計(jì)算所有矩陣對(duì)應(yīng)元素乘積之和。

粘貼函數(shù)對(duì)話框

圖11

 。2)矩陣的基本計(jì)算   

  數(shù)組計(jì)算和矩陣計(jì)算有很大的區(qū)別,比如下面這個(gè)例子中,A和B都是定義好的數(shù)組,因?yàn)檫@兩個(gè)數(shù)組都是3×3的,輸出結(jié)果也是3×3個(gè)單元格。計(jì)算時(shí)先選定矩陣計(jì)算結(jié)果的輸出域,為3×3的單元格區(qū)域,然后輸入公式。如果輸入“=A+B”或“=A-B”,計(jì)算結(jié)果是數(shù)組對(duì)應(yīng)項(xiàng)相加或相減,輸入“=A*B”表示數(shù)組A和B相乘,輸入“=A/B”表示數(shù)組A除數(shù)組B。如果要進(jìn)行矩陣計(jì)算,就要用到相應(yīng)的矩陣函數(shù)。矩陣相加、相減與數(shù)組的加減表達(dá)形式是一樣的,也是“=A+B”和“=A-B”,表示矩陣相乘可以輸入“=MMULT(A,B)”,而矩陣相除是矩陣A乘B的逆矩陣,所以計(jì)算公式是“=MMULT(A,MINVERSE(B))”。公式輸入后,同時(shí)按Shift+Ctrl+Enter鍵得到計(jì)算結(jié)果。 對(duì)于更復(fù)雜的矩陣計(jì)算,可以采用分步計(jì)算.

(責(zé)任編輯:admin)

頂一下
(0)
0%
踩一下
(0)
0%
發(fā)表評(píng)論
請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動(dòng)的言論。
評(píng)價(jià):