Excel實用工具3:Excel函數寶典

引子:學好并熟練運用Excel函數將能發揮出Excel無盡的威力。然而,Excel有幾百個函數,要想將它們全都熟練掌握是一件非常困難的事。并且,函數之間的相互配合,變化多端,有著多種多樣的使用情形。如果我們隨時能夠查閱到各個函數詳細的語法和使用說明,并且有豐富的示例作為參考,那一定非常有助于我們解決問題,也有利于我們函數運用水平的精進。

今天給出的這個工具——Excel函數寶典,就是想要將Excel函數集中在一起,不僅有詳細的語法和使用說明,還有豐富的參考示例,便于學習,便于查閱參考。

由于時間有限,整理全部的Excel函數語法以及應用示例并不是三兩天就能完成的。因此,這里先給出工具的架構,以及功能演示,聽聽大家的意見,我再進行完善。

“Excel函數寶典”的功能

“Excel函數寶典”實際上就是Excel函數庫,力圖匯集所有的Excel函數,甚至有用的自定義函數。主要功能有:

l查找想要的函數并給出該函數的詳細語法和使用說明。

2輸入函數名后查找

2在分類框中選擇想要的函數后查找

l方便獲取每個函數的應用示例,作為參考。

“Excel函數寶典”的使用

可以在工作表界面中輸入想要查找的函數,也可以在彈出的用戶窗體中輸入想要查找的函數,單擊“查找”按鈕查找到該函數的詳細語法和使用說明。

找到函數后,單擊“詳細示例”按鈕,調出包含關于該函數詳細信息以及應用示例的工作簿文檔。

下面的視頻演示了如何使用“Excel函數寶典”。

“Excel函數寶典“的設計

工作表設計

下圖1所示為工作表主界面,在命名為“SearchFuncName”的單元格中輸入函數名,單擊右側的“查找”按鈕,即可調出相關函數信息。

圖1

“函數庫”工作表存放全部函數的基本信息,包括函數名、類別、版本、作用、語法、參數說明。包含著函數名的區域:

名稱:FuncName = OFFSET(函數庫!$A$3,0,0,COUNTA(函數庫!$A:$A)-2,1)

“數據”工作表存放程序后臺需要的數據,包含著一些命名區域。

函數類別名:Cate

引用位置:=OFFSET(數據!$A$2,0,0,COUNTA(數據!$A:$A)-1,1)

各分類的名稱所代表的區域:

名稱:查找與引用

引用位置:=OFFSET(數據!$D4,0,0,COUNTA(數據!$D:$D)-1,1)

名稱:文本

引用位置:=OFFSET(數據!$E$2,0,0,COUNTA(數據!$E:$E)-1,1)

……

用戶窗體設計

在VBE中,插入用戶窗體,放置相應的控件,設置控件格式并命名,如圖2所示。


圖2

函數工作簿

函數工作簿包括函數的詳細信息及應用示例,如圖3所示。


圖3

編寫代碼

工作表代碼

在“主界面”工作表的Activate事件中,輸入下面的代碼:

Private Sub

Worksheet_Activate()

[SearchFuncName] = "在這里輸入你要查找的函數名"

[SearchFuncName].Select

End Sub

每次激活該工作表時,代碼在命名為“SearchFuncName”的單元格中輸入提示信息,并選擇該單元格。

Sub wsFindButtonClick()

ufmFunc.Show

End Sub

單擊工作表中的“查找”按鈕時,調出用戶窗體。

用戶窗體代碼

用戶窗體初始化代碼:

Private Sub

UserForm_Initialize()

'在類別組合框中輸入類別項

cmbCate.List =Application.Transpose([Cate])

'查找名稱SearchFuncName單元格中函數的信息

FindData (Trim([SearchFuncName]))

End Sub

“函數類別”組合框代碼:

當“函數類別”組合框中的內容改變量,用相應的函數名填充“函數名稱”組合框,同時清除函數信息文本框中的內容。

單擊“查找”按鈕的代碼:

Private Sub

cmdFindByName_Click()

[SearchFuncName] = txtFind.Text

FindData (txtFind.Text)

End Sub

單擊“通過類別查找”按鈕的代碼:

Private Sub

cmdFindByCate_Click()

txtFind.Text = ""

[SearchFuncName] = cmbFunc.Text

FindData (cmbFunc.Text)

End Sub

查找數據代碼:

根據傳遞給子過程的值,在“函數庫”工作表中查找到相應的函數,并將函數信息輸入到用戶窗體上相應的文本框中。

下面的子過程用于清除文本框中的數據:

Sub ClearData()

txtName.Text = ""

txtCate.Text = ""

txtVer.Text = ""

txtUse.Text = ""

txtSyntax.Text = ""

txtPara.Text = ""

End Sub

“詳細示例”按鈕代碼:

Private Sub cmdSample_Click()

OpenFunctionWB (cmbFunc.Text)

Unload Me

End Sub

打開與函數名相同的函數工作簿,同時卸載用戶窗體。

“關閉”按鈕代碼:

Private Sub cmdClose_Click()

Unload Me

End Sub

其他代碼

OpenFunctionWB過程用于打開指定的工作簿:

bIsBookOpen函數用于判斷工作簿是否已打開:

結語

這個應用程序界面設計和架構的搭建基本完成,主要需要完善的是:

l收集整理并補充Excel函數的應用示例。(首先是以從Contextures Blog整理出的《帶你快速學會30個Excel函數》為基礎,將這30個函數工作簿整理完善)

在此其礎上:

l美化界面并擴展功能。

希望有興趣的朋友能夠多提寶貴建議!

本文同時發表于【完美 Excel】微信公眾號:excelperfect

要下載Excel函數寶典(測試版)在【完美Excel】公眾號底部發送消息:excelperfect

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容