?

關于經管類專業程序設計語言選擇的探討

2016-12-21 10:55崇美英李穎賈艷萍
電腦知識與技術 2016年28期
關鍵詞:計算思維程序設計

崇美英+李穎+賈艷萍

摘要:文章通過對我校開設的“VB程序設計”課程的現狀和問題的分析,提出了用“VBA程序設計”替代目前開設的“VB程序設計”,并分析了將“VBA程序設計”作為非計算機專業計算機程序設計語言課程的優勢,同時提出了“VBA程序設計”課程教學方法和模式,給出“VBA程序設計”案例,供該課程改革使用。

關鍵詞:程序設計;VB;VBA;計算思維

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2016)28-0073-03

1 概述

中國高等院校計算機基礎教育課程體系2014中指出:非計算機專業的本科計算機教育宗旨是以應用為目標,培養學生掌握應用計算機的能力,為將計算機與信息技術用于所學專業打下基礎,使學生最終能夠運用計算機和其相對應學科的知識,處理和解決其專業的實際應用問題,使學生逐漸成為既熟悉其專業知識,又掌握計算機應用的復合型人才。鑒于此,我校面向經管類專業學生開設了《VB程序設計》課程。

2 VB程序設計課程現狀及存在問題

VB程序設計是我校針對經管類專業學生開設的唯一的一門程序設計課程。自2012年開始,從減輕學生負擔的角度考慮,程序設計語言完成了從C語言到VB語言的更替,但在教學中卻發現,學生除了像學習C語言一樣需要記住眾多的概念、術語、語句格式、語法規則等等外,還要記住VB中的控件及眾多的控件屬性(且為英文描述),因此對于學生而言非但沒有減輕負擔,反而還要記住更多的內容,進而加重了學生的學習負擔。同時,經管類專業學生與理工類專業學生具有著相同的程序設計要求,這對于大部分將來不會直接從事程序設計工作的經管類學生而言,無疑使學生們認為VB程序設計缺乏實用價值,并逐漸降低了對課程的學習興趣,有些學生通過抄襲完成課程內容,有些學生甚至選擇放棄。

另外,隨著操作系統不斷更新,VB還要與不斷升級的操作系統相匹配,因此對于學生自己安裝和使用Visual Basic 6.0帶來困難。

3 VBA 作為程序設計語言的優勢

3. 1 什么是VBA

VBA是Visual Basic for Application的縮寫,是MS-Office自帶的底層開發語言,它是在Office中包含的一種用于擴展Office功能的編程語言。由于VBA是所見即所得,因此對于初學者而言,它的學習和使用要比其他程序設計語言簡單。

3.2 選擇VBA的優勢

VBA是嵌套在Office軟件包中的應用程序,它既提供了面向對象的程序設計方法和比較完整的程序設計語言,又簡單易學。因此VBA程序設計不僅能夠使學生建立基本的程序設計思維,同時也有利于培養學生的計算思維能力,非常適合非計算機專業的學生學習。

另外,由于VBA的存在,MS-Office不僅僅是應用程序,更是一個開發平臺,對于經管類專業的學生,如果能夠在掌握Office辦公軟件的基礎上再掌握VBA的基本編程方法,那么學生在今后工作崗位上就可以根據自身需要利用VBA對Excel、Word和PowerPoint進行二次開發,以獲得自己所需的特定功能,實現繁瑣、重復工作的自動化,進而提高工作效率,更為把我校學生培養成高素質、應用型人才打下基礎。

3.3 課程改革設想

通過VBA程序設計語言的學習,使學生在程序設計思想的構建,以及計算思維的培養方面都能有所收獲。

同時,在學生熟練掌握Office辦公軟件的基礎上,通過運用VBA實現對其二次開發,進而獲得自身工作中所需的特定功能,達到工作效率最大化。特別是VBA在Excel中的應用,可使經管類專業學生在未來工作崗位上受益匪淺。

在教學中,采用能夠激發學生自主探究和能力提升的“任務驅動”教學模式。

3.3.1 任務驅動教學模式

“任務驅動教學法”是一種建立在建構主義學習理論基礎上的教學法,它將以往以傳授知識為主的傳統教學理念,轉變為以解決問題、完成任務為主的多維互動式的教學理念;將再現式教學轉變為探究式學習,使學生處于積極的學習狀態,每一位學生都能根據自己對當前問題的理解,運用共有的知識和自己特有的經驗提出方案、解決問題。

“任務驅動教學法”的基本環節是創設情境,確定問題(任務),自主學習、協作學習,效果評價。

在日常生活中,經常會接觸到通過驗證用戶名和密碼才能進入系統的情況,如在自動存取款機上進行操作,登陸QQ進行聊天等,我們以設計系統登錄界面作為任務,使學生帶著真實的任務在探索中學習,在這個過程中,學生還會不斷地獲得成就感,可以更大地激發他們的求知欲望,逐步形成一個感知心智活動的良性循環,從而培養出獨立探索、勇于開拓進取的自學能力。

課堂上設計的任務是要求學生設計一個如圖1所示的登陸界面程序。要求通過登陸界面,對進行操作的用戶進行用戶名和密碼的驗證,當用戶名和密碼均正確時才能通過驗證,然后進入如圖2所示的下一界面,完成更進一步的操作。

代碼如下:

Private Sub CommandButton1_Click()

If Trim(TextBox1.Text) = "admin" And Trim(TextBox2.Text) = "666666" Then

判斷輸入的用戶名和密碼是否正確

UserForm1.Hide

UserForm2.Show

Else

MsgBox "密碼或用戶名不正確"

End If

End Sub

在完成任務的過程中,學生會逐步掌握選擇結構的程序設計思想、常用控件、多重窗體的使用,并將其有機的結合起來,最終完成任務要求。

3.3.2 VBA在Microsoft Word中的應用

從網上拷貝文字到Word文檔中時,經常會含有空段,但Word并不具有刪除空段功能,因此會使用戶感到不便。通過學習VBA,學生可以通過添加以下VBA代碼實現在Word中刪除空段功能。代碼如下:

Sub DelLine()

Dim i As Long

For i = ActiveDocument.Paragraphs.Count To 1 Step -1

統計文檔段落總數,并從文檔最后一段開始找空段

If VBA.Len(ActiveDocument.Paragraphs(i).Range) = 1 Then

ActiveDocument.Paragraphs(i).Range.Delete 刪除空段

End If

Next i

End Sub

3.3.3 VBA在Microsoft Excel中的應用

在數據處理中,有些數據的存放如圖3所示,即有些名字的前面有空格。由于數據量龐大,用戶無法對數據一一檢驗,此時便可通過編寫VBA代碼來刪除名字前的空格,使數據存放如圖4所示。

代碼如下:

Sub DelSpace()

Dim regEX As Object 創建正則對象

Set regEX = CreateObject("vbscript.regexp")

With regEX

.Global = True

.Pattern = "\s+" \s+表示匹配任何空白字符

End With

For Each Rng In [b2:b7]

n = n + 1

Cells(n + 1, "b") = regEX.Replace(Rng, "")

Next

Set regEX = Nothing 釋放對象

End Sub

3.3.4 VBA在Microsoft PowerPoint中的應用

制作包括三道題、四張幻燈片的課堂小測驗。四張幻燈片分別如下圖所示。單擊“開始”按鈕,界面轉向第二張幻燈片;單擊“上一題”或“下一題”按鈕時,屏幕上會顯示相應的界面;單擊“最后得分”按鈕時,在文本框中顯示本次測驗的成績,如圖8所示。

代碼如下:

Public zongfen(2) As Integer 全局數組,用于記錄總得分

Private Sub CommandButton1_Click()

SlideShowWindows(1).View.GotoSlide 2 轉到第2張幻燈片

End Sub

Private Sub CommandButton1_Click() “下一題”按鈕的單擊事件代碼

If OptionButton3.Value = True Then

zongfen(0) = 2 正確時,記分

Else

zongfen(0) = 0

End If

Label1.Caption = OptionButton3.Caption

SlideShowWindows(1).View.GotoSlide 3 轉到第3張幻燈片

End Sub

Private Sub CommandButton3_Click() “上一題”按鈕的單擊事件代碼

If OptionButton2.Value = True Then

zongfen(1) = 2

Else

zongfen(1) = 0

End If

Label1.Caption = OptionButton2.Caption

SlideShowWindows(1).View.GotoSlide 2

End Sub

Private Sub CommandButton4_Click() “下一題”按鈕的單擊事件代碼

If OptionButton2.Value = True Then

zongfen(1) = 2

Else

zongfen(1) = 0

End If

Label1.Caption = OptionButton2.Caption

SlideShowWindows(1).View.GotoSlide 4

End Sub

Private Sub CommandButton5_Click() “上一題”按鈕的單擊事件代碼

SlideShowWindows(1).View.GotoSlide 3

End Sub

Private Sub CommandButton6_Click() “最后得分”按鈕的單擊事件代碼

Dim s, i As Integer

If OptionButton4.Value = True Then

zongfen(2) = 2

Else

zongfen(2) = 0

End If

Label1.Caption = OptionButton4.Caption

s = 0

For i = 0 To 2

s = s + zongfen(i)

Next i

Label2.Caption = s

End Sub

4 結束語

程序設計語言的掌握對于我校經管類專業學生是必要的,但我們的培養目標是希望在講授程序設計的同時將計算思維融入教學,鍛煉學生的計算思維能力,讓學生理解從計算思維出發思考,以計算的方式表達、分析和解決問題的整個過程,使學生掌握程序設計的思想以及問題的求解思路,而非將他們培養成為程序員。VBA語言作為程序設計語言恰好可以最有效地幫助我們實現教學以及人才培養的目標。

參考文獻:

[1] 徐衛克.關于高校非計算機專業程序設計教學的思考[J]. 教育教學論壇,2014(2).

[2] 閆麗,鄧哲. 基于VBA的Office二次開發[J].通化師范學院學報,2006(7) .

[3] 王海坤.淺談Visual Basic程序設計課程教學改革[J].科技資訊,2015(17).

[4] 龍馬高薪教育.VBA Office 從新手到高手[M].北京:人民郵電出版社,2015.

[5] 李桂芝.Visual Basic程序設計案例教程[M].北京:清華大學出版社,2013.

猜你喜歡
計算思維程序設計
基于Visual Studio Code的C語言程序設計實踐教學探索
從細節入手,談PLC程序設計技巧
高職高專院校C語言程序設計教學改革探索
程序設計課程中計算思維和應用能力培養問題研究
PLC梯形圖程序設計技巧及應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合