[摘 要]論文以Excel 2003/XP環(huán)境為基礎,給出了進銷存管理信息系統(tǒng)的單元格的實現(xiàn)方法與庫存信息的自動生成的VBA程序實現(xiàn)方法,對中小企業(yè)實現(xiàn)企業(yè)信息化管理具有很好的借鑒價值。
[關鍵詞]Excel 2003/XP;進銷存管理信息系統(tǒng);設計方案
[中圖分類號] F270.7
[文獻標識碼] A
[文章編號] 1673-0194(2006)09-0014-02
[收稿日期] 2006-06-30
[作者簡介] 朱順泉(1965-),湖南人,2004年上海財經大學應用經濟學博士后出站,現(xiàn)為廣東商學院信息學院教授。主要研究方向:管理信息系統(tǒng),信用評級與財務預警,投資決策與風險分析等。
1 引言
目前市面上一般的進銷存管理信息系統(tǒng)至少需要幾千元,而且需要大量維護費用,購買現(xiàn)成的進銷存管理信息系統(tǒng),對于一個剛剛起步中小企業(yè)來說,是不可取的。是否可以開發(fā)出一個簡單易行的進銷存管理信息系統(tǒng)呢?這里介紹在Excel 2003/XP環(huán)境下,來開發(fā)中小企業(yè)的進銷存管理信息系統(tǒng),實現(xiàn)中小企業(yè)的進銷存信息管理的辦公自動化,這樣可以既省錢又省力地進行企業(yè)信息化管理的建設。
2 進銷存管理信息系統(tǒng)單元格的操作實現(xiàn)方法
這里我們要實現(xiàn)的是:一個小公司的進銷存信息管理,假設每月的銷售記錄不超過1 000個數(shù)據(jù),進貨的記錄不超過50個數(shù)據(jù),產品品種為5種,即AA、BB、CC、DD、EE。實現(xiàn)的步驟如下:
(1)創(chuàng)建銷售工作表
進入Excel,單擊“文件”菜單,再單擊“新建”命令,創(chuàng)建一個新工作簿。在工作表sheet1上建立產品銷售報表,方法是單擊工作表標簽sheet1,進入工作表sheet1,在A1單元格內輸入“日期”,在B1單元格內輸入“購貨單位”,在C1單元格內輸入“產品型號”,在D1單元格內輸入“銷售數(shù)量”。用鼠標雙擊工作表標簽,改名為“銷售”,如圖1所示。
(2)創(chuàng)建進貨工作表
在工作表sheet2上建立各類產品進貨情況表,方法是單擊工作表標簽sheet2,進入工作表sheet2,在A1單元格內輸入“日期”,在B1單元格內輸入“產品型號”,在C1單元格內輸入“進貨數(shù)量”,再輸入相應的數(shù)據(jù)。用鼠標雙擊工作表sheet2標簽,改名為“進貨”。
(3)創(chuàng)建庫存工作表
單擊工作表標簽sheet3,進入工作表sheet3,在A1單元格內輸入“產品型號”,在B1單元格內輸入“進貨數(shù)量”,在C1單元格內輸入“銷售數(shù)量”,在D1單元格內輸入“當前庫存量”,在E1單元格輸入“最小庫存量”,在F1單元格輸入“進貨提示”,在A2、A3、A4、A5、A6單元格內依次輸入各產品型號,如AA、BB、CC、DD、EE,用鼠標雙擊工作表sheet3標簽,改名為“庫存”,如圖2所示。
(4)實現(xiàn)自動動態(tài)統(tǒng)計和進貨提示
①自動動態(tài)統(tǒng)計:在“庫存”工作表中的B2單元格內輸入函數(shù)“=Sumif(進貨!$B$2:$B$51,A2,進貨!$C$2:$C$51)”,用鼠標單擊B2單元格右下角的填充柄不放,向下拖動至B6單元格進行公式復制。同理,在C2單元格內輸入函數(shù)“=Sumif(銷售!$C$2:$C$1001,A2,銷售!$D$2:$D$1001)”,用鼠標單擊C2單元格右下角的填充柄不放,向下拖動至C6單元格進行公式復制。在D2單元格內輸入公式“=B2-C2”,用鼠標單擊D2單元格右下角的填充柄不放,向下拖動至D6單元格進行公式復制。
②自動進貨提示:在F2單元格內輸入公式“=if(D2 至此,當前庫存情況的自動動態(tài)統(tǒng)計和進貨提示工作便完成了。以后,每當在“銷售”工作表或“進貨”工作表中輸入一個數(shù)據(jù),在“庫存”工作表中就自動統(tǒng)計出每一種產品的“進貨數(shù)量”、“銷售數(shù)量”和“當前庫存量”,并且會在“進貨提示”欄內自動提示哪種產品該進貨了。 假設我們規(guī)定了各種產品的最小庫存量(AA,34;BB,100;CC,80;DD,20;EE,100),在進貨表中輸入了產品的進貨數(shù)量(AA,234;BB,1000;CC,360;DD,100;EE,600),在銷售表中輸入了產品的銷售數(shù)量(AA,201;BB,870;CC,300;DD,56;EE,398),打開庫存表,如圖3所示。 從圖中可以看出產品AA和CC需要進貨。 (5)上述操作兩種改進的方法 上邊舉的是一個簡單的例子。實際工作中,只要稍加修改,上例即可適合實際應用。實際應用時,為了少修改函數(shù),可以虛擬進貨和銷售記錄,如進貨記錄為100個數(shù)據(jù),可以虛擬為10 000或者更多(注:這個假設是可以去掉的,后面的程序中就體現(xiàn)了這一點),則在“庫存”工作表中進貨數(shù)量欄的B2單元格內輸入的函數(shù)可以為“=Sumif(進貨!$C$2:$C$10 000,A2,進貨!$D$2:$D$10 000)”。銷售記錄函數(shù)的修改同進貨記錄。如果再添加產品品種,只需在“庫存”工作表中產品型號欄內添入產品名稱,最小庫存量欄內填入此產品的規(guī)定最小庫存量,其他各欄復制相應的公式即可。 假如企業(yè)銷售的產品品種非常多,照上面的方法查看是否進貨就不太方便,我們可以用如下辦法來解決這個問題:仍以上面的5個產品的例子為例,當?shù)玫綀D3以后,選擇“數(shù)據(jù)”菜單,從下拉菜單中選擇“篩選”后,選擇“自動篩選”,如圖4結果。 從進貨提示欄選擇進貨,如圖5所示。這樣,就可以清楚地知道哪種產品該進貨了。 3 進銷存管理信息系統(tǒng)庫存信息的VBA程序自動生成實現(xiàn)方法 以上的操作過程是很繁瑣的,稍微一不小心就很容易出錯,為了避免這種情況的發(fā)生,提高工作效率,也可以通過Excel的VBA宏來實現(xiàn)。為此,編制VBA代碼如下,這樣就可以實現(xiàn)庫存信息管理的自動化。 Sub kc( ) Sheets(\"庫存\").Select For i = 1 To 5 Range(\"b2\").Offset(i - 1, 0) = Application.SumIf(Range(\"進貨!B:B\"), Range(\"A2\").Offset(i - 1, 0), Range(\"進貨!C:C\")) Range(\"C2\").Offset(i - 1, 0) = Application.SumIf(Range(\"銷售!C:C\"), Range(\"A2\").Offset(i - 1, 0), Range(\"銷售!D:D\")) Range(\"d2\").Offset(i - 1, 0) = Range(\"b2\").Offset(i - 1, 0) - Range(\"C2\").Offset(i - 1, 0) If Range(\"d2\").Offset(i - 1, 0) < Range(\"e2\").Offset(i - 1, 0) Then Range(\"f2\").Offset(i - 1, 0) = \"進貨\" Else Range(\"f2\").Offset(i - 1, 0) = \"不進貨\" End If Next i End Sub