<output id="os3gq"><ruby id="os3gq"></ruby></output>

    1. <mark id="os3gq"></mark>
    2. 5個免費課程
      網站公告
      ·Access快速平臺QQ群號:156702533    ·Access快速開發平臺下載地址及教程    ·歡迎添加微信交流賬號:AccessoftChu    ·如何快速搜索本站文章|示例|資料    
      您的位置: 首頁 > 技術文章 > Access數據庫-宏

      詳細了解access中的宏

      時 間:2012-05-16 09:06:43
      作 者:蔣燦輝   ID:24104  城市:上海
      摘 要:到底什么是宏呢? 我們把那些能自動執行某種操作的命令統稱為“宏”。
      正 文:

      什么是宏

        到底什么是宏呢? 我們把那些能自動執行某種操作的命令統稱為“宏”。

        宏也是一種操作命令,它和菜單操作命令都是一樣的,只是它們對數據庫施加作用的時間有所不同,作用時的條件也有所不同。菜單命令一般用在數據庫的設計過程中,而宏命令則用在數據庫的執行過程中。菜單命令必須由使用者來施加這個操作,而宏命令則可以在數據庫中自動執行。

        在ACCESS中,一共有五十三種基本宏操作,這些基本操作還可以組合成很多其他的“宏組”操作。在使用中,我們很少單獨使用這個或那個基本宏命令,常常是將這些命令排成一組,按照順序執行,以完成一種特定任務。這些命令可以通過窗體中控件的某個事件操作來實現,或在數據庫的運行過程中自動來實現。

        事件操作即像“單擊”按鈕、“雙擊”列表選項這些行為都是對控件的事件操作。所以我們常常會聽到別人說“單擊‘某某’按鈕執行‘某某宏命令’”,就是這個意思。

        

      插圖
      為什么要用宏

        先看個例子,有這樣一個窗體,上面有一個數據表?,F在在這個數據表中添加一個功能,用一個文本框輸入要查詢的內容,而用一個“查詢”按鈕來完成查詢的工作,并將查詢后的數據打印在報表上。

        在窗體那一課里講的命令按鈕向導就能實現這個功能,但對于每個控件來說,要實現相應的功能光憑借向導是遠遠不夠的。

        要讓這些控件實現一定的功用,在ACCESS中有四種辦法。當然最簡單的就是使用控件向導了,除此之外還有“宏”、“VBA”和“SQL語言”,使用這些方法可以使控件完成幾乎所有的數據庫操作。而這其中,向導最簡單,但實現的功能有限,而宏雖然只有53種基本操作,但可以組合成很多種宏組命令,這樣就能實現很多ACCESS中有關窗體、報表、查詢的功能,使用起來也非常方便。而VBA和SQL語言相對起來對用戶的要求也要高一些,當然VBA和SQL語言可以實現的功能也更加全面,自主性也更強,但它們都要寫程序。對于很多普通的用戶,他們不要求會得太多,只要能完成手上的工作就可以了,所以這時使用宏就是他們最好的選擇了。

        使用宏非常方便,不需要記住各種語法,也不需要編程,只需利用幾個簡單宏操作就可以對數據庫完成一系列的操作,中間過程完全是自動的。

        

      插圖
      查看宏設計窗口

        磨刀不誤砍柴功,要學會使用宏,我們先來看看宏的設計窗口吧。

        將鼠標移動到數據庫窗口中的宏對象上,單擊左鍵,就切換到“宏”對象上了,現在的所有操作都是針對宏的了。在這個窗口右側的“創建方法和已有對象列表”列表欄中什么都沒有,這是因為宏的創建方法非常簡單,也很單一,所以既不需要有什么“宏向導”,也不必有很多的視圖,在宏的創建過程中只有一個設計窗口。這個設計窗口非常簡單,現在我們將鼠標移動到數據庫窗口的“新建”菜單上,單擊鼠標左鍵,就會在屏幕上彈出宏設計窗口,如下圖所示。在這個窗口中就可以設計宏了。

      宏設計窗口

        在宏的設計窗口中,“操作”下面的那一列就是宏所能執行的各種操作,在ACCESS2000中,一共有五十三種基本操作,這些操作我們可以通過單擊這列中任何一個值彈出的下拉選單中來選擇,而“備注”下面的那一列中可以輸入執行這種操作時的備注。

        在宏設計器中,還有兩個列的內容是可選的,這就是“宏名”和“條件”字段,現在將鼠標移動到工具欄上,單擊“宏名”按鈕“宏名”按鈕,就會發現在宏設計器上出現了一個“宏名”列,并且這個“宏名”按鈕也凹陷下去,同樣單擊工具欄上的“條件”按鈕“條件”按鈕,在設計器上就會再出現一個“條件”列。這時的“條件”按鈕處于凹陷狀態。此時的宏的設計窗口如下圖所示。

      添加后的宏設計窗口

        宏名這一列就是用來定義一個或一組宏操作的名字,以后要執行這個宏操作時,只要直接運行就可以了。如果我們想在宏執行某個操作之前,對宏是否能執行進行一些限制,就需要在條件這一列中輸入相應的條件表達式,這樣可以實現在宏執行之前先判斷條件是否滿足,如果滿足則執行這個宏,如果不滿足,則不能執行這個宏。

       

       
      創建宏

        講了宏的設計窗口,現在該親手來創建一個宏了。首先我們要打開一個數據庫,單擊數據庫窗口選項卡上的“宏”對象,然后單擊數據庫窗口上的“新建”選項。這時就彈出了宏設計器窗口。

        因為這“宏名”和“條件”兩列并不是宏設計窗口上的默認選項,沒有這兩列,如果要用到這兩個選項,就需要單擊工具欄上的這兩個選項?,F在這兩列都出現在窗口上了。這時我們就可以先為這個宏取個宏名,就叫“查詢”吧,然后我們將鼠標移動到操作這一列的第一行中,左鍵單擊下拉框右面的“向下”按鈕,這時就會彈出一個下拉菜單,在這個菜單上選擇所需的操作命令,然后單擊這個選項,那這個操作就會出現在這個下拉框中了?,F在我們要執行一個叫“Gotocontrol”宏命令,那么就在這個下拉框中選中這個操作命令,如下圖所示。

      選擇宏命令

        在選擇了基本宏操作后,我們還要在宏設計窗口下部的操作參數“控件名稱”中輸入此操作需要的參數,為了確定操作對象的焦點,我們在這個位置輸入“姓名”,這樣當我們執行這個宏的時候窗口上的焦點就會移動到“姓名”這個字段上來了?;旧厦總操作都有操作參數,有的多一些,有的少一些,有的是必須填寫的,有的則可以取默認的值。只有設置好參數的宏操作才是合法的。不然ACCESS就不會接受。

        剛才我們所做的只是這個宏的第一個操作,將查詢的焦點移到“姓名”這個字段上,下一步我們要再加一個操作去找到“姓名”這個字段中的相應記錄。要實現這些,就將鼠標移動到表格的第二行,然后在操作這一個格選取“FINDRECORD”,現在我們來設定操作參數,參數“查找內容”這一欄中,我們輸入“=[需要查詢的值].value”,這個“需要查詢的值”是窗體上一個專門用來輸入查詢值的文本框的名字,而“匹配”這一欄中選擇“整個字段”,“格式化搜索”選“是”,其他的幾個參數都可以取默認,將這些選好以后。“查詢”宏就建好了。當然別忘了保存整個宏啊。

      了解宏包含的操作

        雖然建好了整個宏,但這些操作之間是如何執行的?

        其實這很簡單,我們再看一個例子,如下圖所示。

      實例窗體

        在這個例子當中,有三個宏名,這三個宏可以成為一個宏組。如果我們執行整個宏組,這些宏將會按照從上到下的順序執行,相應的操作也都會從上到下執行,如果我們只是執行這個宏組中的某個宏,那么在執行過程當中,只有這個宏的各個操作會按照從上到下的方向一一執行,而其他宏的操作就不會執行。

        如果宏一的第一個操作條件不滿足后,宏一的其他幾個操作仍然要執行,在宏的設計表格中,每行的“條件”字段只是對同一行的“操作”字段有約束力,而對其他的操作則不起條件約束作用了。

      執行宏

        在ACCESS中,宏并不能單獨執行,必須有一個觸發器。而這個觸發器通常是由窗體、頁及其上面的控件的各種事件來擔任的。比如在窗體上單擊一個按鈕,這個單擊過程就可以觸發一個宏的操作。

        現在建立一個窗體。用一個按鈕單擊事件來觸發我們剛才新建的宏“查詢”。首先將表“員工簡歷”上的“姓名”等字段顯示在這個窗體上,然后在這個窗體上再添加一個文本框,用這個文本框來輸入要查詢的員工姓名,注意還要將這個文本框的名字改為“需要查詢的值”,完成之后在窗體上添加一個按鈕,并把它的名字改為“查詢”。添加好以后就可以在這個按鈕的屬性上設置宏“查詢”的觸發事件了。

        首先我們選中這個按鈕,然后打開這個按鈕的屬性,如下圖所示。

      命令按鈕屬性框

        在屬性選項卡上選擇“事件”選項,然后將鼠標移動到“單擊”選項右邊的方框內,單擊鼠標左鍵,這時在這個方框右側會出現一個“向下”按鈕,單擊這個按鈕,在彈出的下拉選單中單擊“宏1.查詢”項,這樣可以了。以后當這個窗體以數據表視圖出現的時候,單擊這個按鈕就可以執行我們剛才建立的宏了。

        現在我們將視圖切換到窗體的數據表視圖。我們可以通過單擊記錄選定器上的不同按鈕移動到不同的員工記錄上去,現在我們將我們需要查詢的員工姓名輸入到文本框“需要查詢的值”中去,輸入完以后,單擊“查詢”按鈕,現在員工記錄已經跳到我們剛才所輸入的那個員工位置上去了?!?/font>



      Access軟件網QQ交流群 (群號:32587638)       access源碼網店

      最新評論 查看更多評論(0)

      發表評論您的評論將提升作者分享的動力!快來評論一下吧!

      用戶名:
      密 碼:
      內 容:
       

      常見問答

      技術分類

      相關資源

      關于我們 | 服務條款 | 在線投稿 | 友情鏈接 | 網站統計 | 網站幫助