• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于ExcelVBA技術的門診藥房輔助庫存盤點程序設計

      2020-10-21 06:09:53閆冰洋李潔李維鳳
      河南科技 2020年2期
      關鍵詞:門診藥房

      閆冰洋 李潔 李維鳳

      摘 要:本研究利用Excel VBA技術設計門診藥房輔助庫存盤點程序,以期提高門診藥房庫存盤點效率。其間建立了藥品基礎數(shù)據庫,對HIS系統(tǒng)導出的原始盤點表、自動發(fā)藥機導出的發(fā)藥機藥品庫存信息進行數(shù)學運算,得到最終的門診藥房庫存盤點表。結果表明,單次盤點時間由原來的120min左右降至60min左右,門診藥房輔助庫存盤點程序的應用能有效提高庫存盤點效率。

      關鍵詞:門診藥房;ExcelVBA;藥品盤點

      中圖分類號:TP311.11文獻標識碼:A文章編號:1003-5168(2020)02-0038-03

      Abstract: Excel VBA technology was used to design an outpatient pharmacy-assisted inventory counting program in order to improve the outpatient pharmacy inventory inventory efficiency in this study. In the meantime, a basic medicine database was established, and the original inventory table derived from the HIS system and the medicine inventory information of the dispenser issued by the automatic dispenser were mathematically calculated to obtain the final outpatient pharmacy inventory inventory table. The results show that the single inventory time is reduced from about 120 minutes to about 60 minutes. The application of the outpatient pharmacy-assisted inventory counting program can effectively improve the inventory counting efficiency.

      Keywords: outpatient pharmacy;ExcelVBA;drug inventory

      門診藥房藥品盤點工作是醫(yī)院資產管理的重要工作,對藥品經濟管理與質量管理有著非常重要的作用[1-2]。隨著門診藥房信息化和自動化建設的深入推進,近年來,我國各級醫(yī)院大力引進自動發(fā)藥機,以提高門診藥房取藥準確率和速度[3-4],提高患者的就醫(yī)體驗。但是,自動發(fā)藥機的引進也給門診藥房藥品盤點工作帶來挑戰(zhàn)。例如,自動發(fā)藥機藥品庫存不能與醫(yī)院HIS系統(tǒng)對接,導致HIS系統(tǒng)導出的藥品庫存信息與貨架實存信息不一致,嚴重影響盤點效率。VBA是一種宏語言,結合微軟辦公軟件很容易將日常工作流程轉換為VBA程序代碼,使藥學工作實現(xiàn)自動化,如利用VBA編制中藥采購軟件[5]、藥庫智能化辦公[6]、開發(fā)藥品配伍禁忌審查表[7]等。

      本文將從新鄉(xiāng)市第一人民醫(yī)院門診藥房庫存盤點實際工作入手,分析目前盤點工作的不足,利用Excel VBA語言設計輔助庫存盤點程序,以提高藥品庫存盤點效率,降低藥師的工作強度。

      1 資料與方法

      1.1 輔助盤點程序的算法構建

      此輔助盤點程序的整體思路是:以HIS系統(tǒng)導出的原始盤點表、自動發(fā)藥機導出的庫存數(shù)據為基礎,建立藥品基礎信息庫,設計輔助盤點程序的算法,導入原始盤點表、自動發(fā)藥機庫存數(shù)據,得到最終的門診藥房貨架實際庫存盤點表。

      1.1.1 原始盤點表。從醫(yī)院HIS系統(tǒng)導出原始盤點表,保存成“.xls”格式。導出的原始盤點表的內容格式如表1所示。

      1.1.2 建立藥品基礎信息庫。藥品基礎信息庫內容包括藥品的貨位、名稱、規(guī)格、單位、取藥順序、上藥類型、單工位最大數(shù)量等信息,數(shù)據主要來源于醫(yī)院HIS系統(tǒng)。藥品基礎信息庫格式如表2所示。

      1.1.3 輔助盤點程序設計思路。一是確定藥品唯一性。因庫存藥品存在同名稱、多規(guī)格、多廠家的情況,只檢索藥品名稱無法確定藥品的唯一性,故采用藥典編號確定藥品的唯一性。二是確定門診藥房庫存盤點表信息。根據門診藥房庫存盤點實際情況,導出的庫存盤點表需要包括貨位、藥品名稱、廠家、規(guī)格、數(shù)量、單位等內容。導出的庫存盤點表格式如表3所示。三是庫存盤點表排序與排版。為保證庫存盤點有序進行,根據貨架位置進行排序,并進行排版。

      1.2 輔助庫存盤點程序設計

      輔助庫存盤點程序包括導入原始盤點表、導入自動發(fā)藥機庫存數(shù)據、處理庫存數(shù)據等過程。

      1.2.1 導入原始盤點表。從HIS系統(tǒng)中導出原始盤點表,導入到門診藥房輔助庫存盤點程序[8-9],保存在數(shù)組arr_yskc中,藥品基礎信息庫數(shù)據導入到數(shù)組arr_db中。VBA代碼示例如下:

      Set wb = Workbooks.Open(sht_db.[Q4].Value)

      arr_yskc = wb.Worksheets(1).Range("B5").Resize([A5].End(xlDown).Row - 4, 16)

      wb.Close

      arr_db = sht_db.[A1].CurrentRegion

      ReDim arr_kc(1 To UBound(arr_yskc, 1), 1 To 10)

      For i = 1 To UBound(arr_db, 1)

      dict_ydhj(arr_db(i, 1)) = arr_db(i, 2)

      Next i

      '獲取不重復藥典編號,獲取數(shù)量之外所有信息

      For i = 2 To UBound(arr_yskc, 1)

      If dict_ydzc.exists(arr_yskc(i, 1)) = False Then

      k = k + 1

      If dict_ydhj.exists(arr_yskc(i, 1)) Then

      arr_kc(k, 1) = dict_ydhj(arr_yskc(i, 1))

      Else

      arr_kc(k, 1) = ""

      End If

      arr_kc(k, 2) = arr_yskc(i, 1)

      arr_kc(k, 3) = arr_yskc(i, 2)

      arr_kc(k, 4) = arr_yskc(i, 3)

      arr_kc(k, 5) = arr_yskc(i, 16)

      arr_kc(k, 7) = arr_yskc(i, 11)

      arr_kc(k, 9) = arr_yskc(i, 14)

      End If

      '累加藥典編號對應數(shù)量信息

      dict_ydzs(arr_yskc(i, 1)) = dict_ydzs(arr_yskc(i, 1)) + arr_yskc(i, 7)

      dict_ydzc(arr_yskc(i, 1)) = dict_ydzc(arr_yskc(i, 1)) + arr_yskc(i, 10)

      dict_ydlc(arr_yskc(i, 1)) = dict_ydlc(arr_yskc(i, 1)) + arr_yskc(i, 13)

      Next i

      For i = 1 To UBound(arr_kc, 1)

      If dict_ydzc.exists(arr_kc(i, 2)) Then

      arr_kc(i, 6) = dict_ydzc(arr_kc(i, 2))

      arr_kc(i, 8) = dict_ydlc(arr_kc(i, 2))

      arr_kc(i, 10) = dict_ydcl(arr_kc(i, 2))

      End If

      Next i

      '庫存盤點表賦值

      sht_db.[S2].Resize(UBound(arr_yskc, 1), 10) = arr_kc

      1.2.2 導入自動發(fā)藥機庫存數(shù)據。從自動發(fā)藥機中導出發(fā)藥機藥品庫存數(shù)據,導入到門診藥房輔助庫存盤點程序,保存在數(shù)組arr_fyjkc1中。VBA代碼示例如下:

      '獲取發(fā)藥機庫存

      Set wb = Workbooks.Open(sht_db.[Q5].Value)

      arr_fyjkc = wb.Worksheets(1).Range("A1").CurrentRegion

      wb.Close

      ReDim arr_fyjkc1(1 To UBound(arr_fyjkc, 1), 1 To 3)

      For i = 1 To UBound(arr_fyjkc, 1)

      arr_fyjkc1(i, 1) = arr_fyjkc(i, 2)

      arr_fyjkc1(i, 2) = arr_fyjkc(i, 7)

      arr_fyjkc1(i, 3) = arr_fyjkc(i, 9)

      Next i

      sht_db.[AD1].Resize(UBound(arr_fyjkc, 1), 3) = arr_fyjkc1

      1.2.3 處理庫存數(shù)據。根據導入的HIS系統(tǒng)原始盤點表、發(fā)藥機庫存藥品信息等數(shù)據,對所有品種的藥品數(shù)量信息自動進行加減運算,得到最終的門診藥房貨架實存數(shù)據,保存在數(shù)組arr_kc中,然后導出到Excel表中。VBA代碼示例如下:

      '處理庫存數(shù)據

      arr_kc = sht_db.[S1].CurrentRegion

      arr_fyjkc = sht_db.[AD1].CurrentRegion

      arr_jtsj = sht_db.[AH1].CurrentRegion

      For i = 2 To UBound(arr_fyjkc, 1)

      dict_ydkc(arr_fyjkc(i, 1) &"/"&"zcfyj") = arr_fyjkc(i, 2)

      Next i

      ReDim Preserve arr_kc(1 To UBound(arr_kc, 1), 1 To 13)

      For i = 1 To 4

      arr_kc(1, i + 9) = arr_kc(1, i + 5)

      Next i

      For i = 2 To UBound(arr_kc, 1)

      If dict_ydkc.exists(arr_kc(i, 2) &"/"&"zcfyj") = False Then

      dict_ydkc(arr_kc(i, 2) &"/"&"zcfyj") = 0

      End If

      arr_kc(i, 6) = arr_kc(i, 6) - dict_ydkc(arr_kc(i, 2) &"/"&"zcfyj")

      arr_kc(i, 10) = ""

      arr_kc(i, 11) = arr_kc(i, 7)

      arr_kc(i, 12) = ""

      arr_kc(i, 13) = arr_kc(i, 9)

      Next i

      Set dict_ydkc = Nothing

      sht1.[A1].Resize(UBound(arr_kc, 1), 13) = arr_kc

      2 結果

      使用門診藥房輔助盤點程序之前,原始盤點表上同一藥品存在好幾個條目,需要二次查詢自動發(fā)藥機單品種藥品庫存,貨架藥品盤點后需要進行大量的數(shù)學運算,嚴重影響盤點效率。而使用門診藥房輔助庫存盤點程序,人們可以直接得到門診貨架實存藥品數(shù)量,單次盤點時間由原來的120 min左右降至60 min左右,提高了藥師的工作效率。

      3 結論

      獲取庫存數(shù)據時,該程序以導出數(shù)據的方式保存在本地計算機上,操作不便,若能直接獲取HIS系統(tǒng)和自動發(fā)藥機藥品庫存信息,會增加操作的便捷性??傮w來說,該門診藥房輔助庫存盤點程序的使用,讓藥師有更多的時間為患者提供用藥服務,提高了藥師的專業(yè)技術價值,同時也為提高自動化藥房庫存盤點效率提供了新思路。

      參考文獻:

      [1]唐哲,韋韡,西娜.我院加強藥品盤點監(jiān)管的探討[J].中國藥房,2016(10):1378-1380.

      [2]袁忠偉.提高醫(yī)院藥品盤點賬物相符率的經驗淺談[J].中國執(zhí)業(yè)藥師,2015(4):51-53.

      [3]謝明華,葛敏,彭佳蓓,等.自動化發(fā)藥系統(tǒng)在我院門診藥房的應用實踐與體會[J].中國藥房,2014(41):3889-3891.

      [4]孫家艷,朱靜.韋樂海茨發(fā)藥機在本院門診藥房應用的實踐與體會[J].北方藥學,2015(11):125-126.

      [5]林永進.采用VBA編制中藥采購軟件[D].濟南:山東大學,2016.

      [6]金朝輝,顧錦建,鄭明琳,等.VBA語言在我院藥庫智能化辦公中的應用[J].中國藥房,2016(7):987-989.

      [7]王柯靜,楊波,周遠大,等.基于Excel的藥品配伍禁忌審查表的開發(fā)[J].中國藥房,2013(17):1625-1626.

      [8]Excle Home.Excel VBA經典代碼應用大全[M].北京:北京大學出版社,2019.

      [9]Excle Home論壇.常見字典用法集錦及代碼詳解[EB/OL].(2019-10-01)[2019-12-18].http://club.excelhome.net/forum.php?mod=viewthread&tid=868892.

      猜你喜歡
      門診藥房
      婦幼保健院門診藥房的藥學服務
      PDCA循環(huán)法在降低門診藥房處方調配差錯率中的作用觀察
      門診藥房應用自動化藥房管理系統(tǒng)的分析
      如何提高門診藥房藥學服務水平
      信息化角度解讀門診自動化藥房系統(tǒng)
      本院門診藥房退藥分析與解決辦法
      如何提高門診藥房的藥學服務質量
      門診藥房發(fā)藥誤差分析與對策
      門診藥房推行品管圈活動的方案設計與成效
      我院門診快速發(fā)藥系統(tǒng)應用觀察
      濮阳市| 商城县| 洪湖市| 墨竹工卡县| 旌德县| 江永县| 呼图壁县| 遂溪县| 阿坝| 镇远县| 寻乌县| 金沙县| 汉沽区| 内丘县| 缙云县| 双峰县| 泗阳县| 达孜县| 永安市| 汕头市| 淄博市| 甘德县| 潜山县| 全州县| 长兴县| 渝北区| 屏东市| 司法| 肃南| 汉源县| 织金县| 沙洋县| 乌兰浩特市| 渝中区| 云霄县| 云梦县| 石林| 嵩明县| 宁乡县| 青岛市| 出国|