999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Excel Visual Basic應(yīng)用程序在醫(yī)院醫(yī)用耗材管理中的應(yīng)用分析

2019-03-07 08:41:56馮錦麗
中國醫(yī)學(xué)裝備 2019年2期
關(guān)鍵詞:界面用戶管理

朱 俊 馮錦麗

醫(yī)院耗材管理形式上是數(shù)據(jù)統(tǒng)計,本質(zhì)上是數(shù)據(jù)處理,主要包括數(shù)據(jù)的錄入、出入庫、盤庫及其數(shù)據(jù)統(tǒng)計工作,最終實現(xiàn)賬物相符。數(shù)據(jù)統(tǒng)計方面,通常需要對多方數(shù)據(jù)進(jìn)行提取、篩選、排序、函數(shù)和公式、分類匯總、數(shù)據(jù)透視表、數(shù)據(jù)比對、數(shù)據(jù)維護(hù)等單項或綜合性的操作處理。而上述這些高級應(yīng)用,絕大部分應(yīng)用者在日常應(yīng)用中的選項卡或多重綜合重復(fù)處理即可實現(xiàn),但是對于不同權(quán)限用戶管理、多重數(shù)據(jù)比對等,采用簡單的統(tǒng)計處理將難以為繼,需要采用高級編程功能實現(xiàn)。

通常,醫(yī)院的各類數(shù)據(jù)管理采用數(shù)據(jù)庫形式,而醫(yī)院的醫(yī)院信息系統(tǒng)在耗材管理方面,其搭載的子系統(tǒng)為物資管理程序(簡稱系統(tǒng)),版本號Ver 2.9.3。該系統(tǒng)軟件是由PB語言編程,后臺數(shù)據(jù)庫采用ORACLE數(shù)據(jù)庫管理系統(tǒng)[1]。該軟件客觀記錄了入庫、出庫、網(wǎng)上請領(lǐng)、在線查詢庫存、采購管理、目錄(價格)維護(hù)等日常操作業(yè)務(wù),還可以物資盤點、賬務(wù)管理等一系列綜合查詢,能出具出入庫報表、明細(xì)報表等統(tǒng)計報表。但該系統(tǒng)導(dǎo)出的數(shù)據(jù),不能分級實施權(quán)限管理和自動進(jìn)行數(shù)據(jù)比對,為此需運用基于Excel的Visual Basic應(yīng)用程序(Visual Basic application,VBA)編寫一段醫(yī)用耗材管理程序解決該問題。基于此,本研究結(jié)合Microsoft的Excel,采用Office 2007版進(jìn)行初步處理,運用編程的方法快速、精準(zhǔn)及高效地進(jìn)行醫(yī)用耗材管理。

1 Excel VBA程序概述

VBA區(qū)別于傳統(tǒng)的宏語言、腳本語言,是一種面向?qū)ο蟮某绦蛟O(shè)計方法,提供完整的程序設(shè)計語言。Excel VBA是Office一個應(yīng)用程序套件,內(nèi)嵌了功能強大的VB編程語言,用來開發(fā)自定義Office解決方案。由于VBA的存在,Office就不僅僅是應(yīng)用程序,更是一個開發(fā)平臺,計算機用戶可以利用VBA對Office進(jìn)行二次開發(fā),極大擴(kuò)展其功能[2-3]。

VBA在Excel中的編程平臺是Visual Basic編輯器(Visual Basic editor,VBE)[4]。有兩種VBE打開方式:①快捷鍵方法,Alt+F11,F(xiàn)7代碼窗口;②選項卡方法,在“開發(fā)工具”選項卡中,代碼窗體中點“Visual Basic”或“控件”窗體中,點“設(shè)計模式”或通過雙機控件查看后臺代碼。如果未顯示“開發(fā)工具”選項卡,則Office按鈕Word選項常用勾選“在功能區(qū)顯示‘開發(fā)工具’選項卡”。運行也有兩種方法,即快捷鍵F5和運行“運行子程序/用戶窗體”。

Excel工作簿的存在包含關(guān)系,一般工作表sheet∈工作薄workbook,即一個工作薄中一般有多個工作表sheet,默認(rèn)狀態(tài)有3個工作表,即Sheet1、Sheet2和Sheet3,根據(jù)需要還可以新建工作表Sheet。一般導(dǎo)出的excel表默認(rèn)的將數(shù)據(jù)存放在第一張工作表Sheet1中默認(rèn)此命名,Sheet2、Sheet3為空白表,無數(shù)據(jù),可視情況加入導(dǎo)入數(shù)據(jù)。

2 Excel VBA程序設(shè)計

2.1 設(shè)計思想

充分實現(xiàn)海量數(shù)據(jù)的統(tǒng)計、篩選及比對。編程設(shè)計中需要注意:①盡量使用系統(tǒng)中導(dǎo)出的數(shù)據(jù),盡量不要人為編輯、干預(yù)及錯誤,以免格式、字符等更改導(dǎo)致無法調(diào)試出程序;②編程是非常嚴(yán)謹(jǐn)?shù)墓ぷ鳎⒄Z句、換行符以及非法字符必須嚴(yán)格符合語句定義,否則任何一個環(huán)節(jié)都可能無法調(diào)試出程序;③要理清設(shè)計思路,精心編程,查找問題,分析解決問題。如If…Then…后面的語句,如果只有一句命令的話,Then后面不需要換行,否則容易出現(xiàn)編譯錯誤,無法調(diào)試結(jié)果。

2.2 不同工作表的權(quán)限管理

導(dǎo)出一個工作薄的不同工作表,對其登錄權(quán)限區(qū)別管理,對不同用戶使用不同的登錄權(quán)限:①管理員,賦予打開所有表格權(quán)限,并且可編輯修改等;②普通職員,僅限于自己的個人權(quán)限,只能查看,不可編輯修改,從而實現(xiàn)不同人員權(quán)限的登錄管理[5-6]。

2.3 數(shù)據(jù)比對

物資管理系統(tǒng)中導(dǎo)出兩張表格或工作薄,對兩張表格≥2行/列元素,如4列的表格進(jìn)行一一比對。如果所比較對象的4行/列元素完全一致,則標(biāo)記為相同的條目;否則任何一行/列不一致,則不作標(biāo)記,從而確定兩張表中的物資是否為同一條物資目錄。

3 Excel VBA程序?qū)崿F(xiàn)

3.1 不同工作表的權(quán)限管理

進(jìn)入VBE界面,左側(cè)的“工程”窗口中ThisWorkbook選擇Workbook_Open事件的程序如下:

Private Sub workbook_open()

Application.visible = False: Userform1.show'登錄界面的顯示和控制

End Sub

繼續(xù)在VBE界面,左側(cè)的“工程”窗口中或插入用戶窗體,雙擊“UserForm1”。在控件工具中插入兩個標(biāo)簽label、兩個文本框Text、兩個命令按鈕CommandButton。并對各自的屬性、字體格式等相關(guān)修改,其中密碼文本框PasswordChar的屬性設(shè)置為“*”[7-8]。

“登錄”命令按鈕CommandButton1下的Click,對應(yīng)的程序如下:

Private Sub CommandButton1_Click()

If TextBox1.Text="a" And TextBox2.Text="123" Then'管理用戶a登錄

UserForm1.Hide

For i=1 To Sheets.Count

Sheets(i).Visible=True'顯示Sheet1、Sheet2、Sheet3全部工作表

Next i

ElseIf TextBox1.Text="s1" And TextBox2.Text="123" Then's1用戶登錄

UserForm1.Hide

Sheets(1).Visible=True'只顯示Sheet1工作表Sheets(2).Visible=False

Sheets(3).Visible=False

Sheets(1).Protect'保護(hù)Sheet1工作表

ElseIf TextBox1.Text="s2" And TextBox2.Text="123" Then's2用戶登錄

UserForm1.Hide

Sheets(1).Visible=False

Sheets(2).Visible=True'只顯示Sheet2工作表

Sheets(3).Visible=False

Sheets(2).Protect'保護(hù)Sheet2工作表

ElseIf TextBox1.Text="s3" And TextBox2.Text="123" Then's3用戶登錄

UserForm1.Hide

Sheets(1).Visible=False

Sheets(2).Visible=False

Sheets(3).Visible=True'只顯示Sheet3工作表Sheets(3).Protect'保護(hù)Sheet3工作表

Else

MsgBox "用戶名或密碼錯誤,請重新登錄!"End If

End Sub

其中,可見采用Protect可以實現(xiàn)編輯保護(hù)功能,同理,若取消保護(hù)則用Unprotect即可。

“退出”命令按鈕CommandButton2下的Click,對應(yīng)的程序如下:

Private Sub CommandButton2_Click()

Unload Me

ThisWorkbook.Close

End Sub

3.2 數(shù)據(jù)比對

(1)方法一。從系統(tǒng)中導(dǎo)出兩張表后,同時放在同一工作簿的不同工作表中,原始的表格為默認(rèn)的Sheet1,當(dāng)前待處理表格為默認(rèn)的Sheet2,空表表默認(rèn)Sheet3閑置,不用處理。

Private Sub 數(shù)據(jù)比對()

Dim i As Integer, j As Integer

Dim M As Integer, N As Integer

M=Sheets(1).UsedRange.Rows.Count'M為初始表格行數(shù)

N=Sheets(2).UsedRange.Rows.Count'N為當(dāng)前表行數(shù)

If M<=N Then

For i=2 To M

For j=2 To N

If Sheets(1).Cells(i, 1)=Sheets(2).Cells(j,1)Then

If Sheets(1).Cells(i,2)=Sheets(2).Cells(j,2)Then

If Sheets(1).Cells(i,3)=Sheets(2).Cells(j,3)Then

If Sheets(1).Cells(i,4)=Sheets(2).Cells(j,4)Then

Sheets(1).Cells(i,5)="*" '條目有相同,則標(biāo)記為"*",并放在Sheet1工作表的第5列中

End If

End If

End If

End If Next j Next i Else

MsgBox "初始表Sheet1和待處理表Sheet2行數(shù)比對溢出,請調(diào)整行數(shù)!"

End If

End Sub

(2)方法二。系統(tǒng)中直接導(dǎo)出兩張不同的表格,并放在D盤中,原始表命名為m,當(dāng)前待處理表格命名為n。

Sub 數(shù)據(jù)比對()

Dim i As Integer, j As Integer

Dim M As Integer, N As Integer

Dim goods1_name As String, goods2_name As String

Dim goods1_type As String, goods2_type As String

Dim goods1_unit As String, goods2_unit As String

Dim goods1_manufacturer As String, goods2_manufacturer As String

Application.ScreenUpdating=False

Workbooks.Open "D: M.XLS"

M=ThisWorkbook.Sheets(1).UsedRange.Rows.Count'M為初始表格行數(shù)

N=ActiveWorkbook.Sheets(1).UsedRange.Rows.Count'N為當(dāng)前表行數(shù)

For i=2 To M

goods1_name=ThisWorkbook.Sheets(1).Cells(i,1)

goods1_type=ThisWorkbook.Sheets(1).Cells(i,2)

goods1_unit=ThisWorkbook.Sheets(1).Cells(i,3)

goods1_manufacturer=ThisWorkbook.Sheets(1).Cells(i,4)

For j=2 To N

goods2_name=ActiveWorkbook.Sheets(1).Cells(j,1)

goods2_type=ActiveWorkbook.Sheets(1).Cells(j,2)

goods2_unit=ActiveWorkbook.Sheets(1).Cells(j,3)

goods2_manufacturer=ActiveWorkbook.Sheets(1).Cells(j,4)

If goods1_name=goods2_name And goods1_type=goods2_type And goods1_unit=goods2_unit And goods1_manufacturer=goods2_manufacturer Then

ThisWorkbook.Sheets(1).Cells(i,5)="*" '標(biāo)記相同條目為“*”,并放在第5列

End If

Next j

Next i

ActiveWorkbook.Close

Application.ScreenUpdating=True

End Sub

可見,用上述兩種方法運行比較得出,方法一較方法二算法更簡潔,速度更快,更節(jié)約運行時間。

4 Excel VBA程序運行結(jié)果

4.1 不同工作表的權(quán)限管理

根據(jù)設(shè)計思路,編程調(diào)試實現(xiàn)后,對應(yīng)其運行結(jié)果。雙擊打開工作簿,即跳轉(zhuǎn)進(jìn)入登錄界面窗體,當(dāng)?shù)卿洖楣芾韱T用戶a和密碼123時,工作簿下的所有工作表Sheet1、Sheet2及Sheet3全部顯示,無保護(hù)狀態(tài),可自由編輯、更改;當(dāng)?shù)卿洖閟1且密碼123時,只顯示Sheet1表且處于保護(hù)狀態(tài),不可編輯、更改,而Sheet2 、Sheet3隱藏不顯示;……;類推,只顯示Sheet2表和Sheet3表。如果登錄的賬戶名或密碼任意一項有錯或無輸入,如輸入錯誤用戶名“aa”,則提示“用戶名或密碼錯誤,請重新登錄!”[1]對話框,其權(quán)限管理界面如圖1所示。

圖1 權(quán)限管理界面圖

圖2 多重數(shù)據(jù)比對界面圖

4.2 數(shù)據(jù)比對

對物資名稱、規(guī)格、單位及廠家4個條件同時完全相同的條目進(jìn)行價格對照,比較2008年的入庫價與2010年建立的現(xiàn)行仍在執(zhí)行的價格,如果價格不一樣的條目,則用星號“*”標(biāo)記出來。常常應(yīng)用在醫(yī)院與京津冀價格比較、調(diào)價,前后目錄庫比對(如圖2所示)。

Sheet1中比對結(jié)果表中的第2行名稱為“11F尿試紙條”與Sheet2中的第4行名稱為“11F尿試紙條”,其規(guī)格、單位及廠家3個條件也完全一致,則在Sheet1的第五列E列用星號“*”標(biāo)記。類比其他數(shù)據(jù),對應(yīng)的比對相同的結(jié)果,從而實現(xiàn)海量數(shù)據(jù)的相同項的比對。

Sheet1中比對結(jié)果表中的第5行名稱為“ABORH血型確認(rèn)卡”與Sheet2中的第8行名稱為“ABORH血型確認(rèn)卡”,雖然其名稱、單位及廠家3個條件相同,但其規(guī)格“8孔/卡,4*12卡/盒”“8孔/卡,2*25卡/盒”不同而得以區(qū)分。相反,Sheet1中比對結(jié)果表中的第6行名稱也為“ABO-RH血型確認(rèn)卡”,與Sheet2中的上述的完全一致,而被標(biāo)記星號“*”。類比其他數(shù)據(jù),比對不相同的結(jié)果,從而實現(xiàn)海量數(shù)據(jù)的不相同項的區(qū)分。

5 結(jié)語

Excel VBA不僅可以應(yīng)用于醫(yī)用耗材管理,并可用于醫(yī)療設(shè)備管理、醫(yī)院病例數(shù)據(jù)分析統(tǒng)計、神經(jīng)系統(tǒng)學(xué)、醫(yī)學(xué)影像學(xué)及生物化學(xué)等各學(xué)科中[9-14]。數(shù)據(jù)統(tǒng)計是醫(yī)院設(shè)備耗材管理的重要方面,通過Excel VBA對不同權(quán)限用戶管理、多重數(shù)據(jù)比對的應(yīng)用分析,以及編程方法在工作中的高級應(yīng)用,可極大減少人為操作,降低錯誤率,有效提高工作效率[15-16]。

猜你喜歡
界面用戶管理
棗前期管理再好,后期管不好,前功盡棄
國企黨委前置研究的“四個界面”
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開發(fā)方法研究
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
人機交互界面發(fā)展趨勢研究
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
“這下管理創(chuàng)新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
手機界面中圖形符號的發(fā)展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
人本管理在我國國企中的應(yīng)用
主站蜘蛛池模板: 老司机精品一区在线视频| 在线免费不卡视频| 亚洲国产精品国自产拍A| 一区二区午夜| 强乱中文字幕在线播放不卡| 亚洲福利片无码最新在线播放| 在线播放精品一区二区啪视频| 老司机午夜精品视频你懂的| 欧美伊人色综合久久天天| 亚洲av片在线免费观看| 91在线免费公开视频| 国产黑人在线| 中字无码av在线电影| 国产精品三区四区| 试看120秒男女啪啪免费| www.日韩三级| 成人午夜久久| 国产免费高清无需播放器| 欧美午夜在线观看| 日本高清在线看免费观看| 国产熟女一级毛片| 中文字幕波多野不卡一区 | 久久国产乱子伦视频无卡顿| 国产91小视频在线观看| 精品国产Av电影无码久久久| 夜夜爽免费视频| 亚洲精品午夜天堂网页| h视频在线观看网站| 亚洲女同欧美在线| 九色在线观看视频| 久久人体视频| 欧美日韩动态图| 黄色三级网站免费| 男人天堂伊人网| 狠狠五月天中文字幕| 午夜精品一区二区蜜桃| 欧美成人区| 日本日韩欧美| 免费无码又爽又黄又刺激网站 | 无码网站免费观看| 成人自拍视频在线观看| 中文字幕无码制服中字| 秘书高跟黑色丝袜国产91在线| 亚洲av成人无码网站在线观看| 综合色88| 狠狠色狠狠综合久久| 国产精品白浆在线播放| 国产精品无码影视久久久久久久| 在线免费观看AV| 欧美激情视频一区二区三区免费| 久久精品娱乐亚洲领先| 青草娱乐极品免费视频| 日韩第一页在线| 国产福利拍拍拍| 欧美色99| 中文字幕人成乱码熟女免费| 久久综合结合久久狠狠狠97色| 国产精品视频导航| 亚洲人成网18禁| 一级毛片中文字幕| 全部无卡免费的毛片在线看| 98超碰在线观看| 亚洲国产欧美国产综合久久| 欧美日韩一区二区三区在线视频| 国产人成在线视频| 国产网站黄| 国产va在线观看| 日韩福利在线观看| 亚欧成人无码AV在线播放| www亚洲天堂| 99热这里只有精品久久免费 | 丁香亚洲综合五月天婷婷| 亚洲欧美成人影院| 一本色道久久88| 国产欧美精品专区一区二区| 国产超碰一区二区三区| 日韩精品中文字幕一区三区| 亚洲欧美色中文字幕| 亚洲精品视频免费| 午夜免费小视频| 国产精品xxx| 麻豆精品久久久久久久99蜜桃|