2014年7月8日 星期二

啟用 Visual Basic for Application

假設你已經有了EXCEL軟體, 打開它, 第一步工作是啟用你的EXCELVisual Basic for Application (以下說明省略為VBA). 如果你的功能表沒有[開發人員]項目, 請依下列步驟叫出[開發人員] 功能表.

EXCEL的工作畫面按下左上角的Office按鈕, 在彈出的視窗中, 再按下下方的[Excel選項].





Excel選項視窗中左方點選[常用]分頁, 勾選分頁中[在功能區顯示[開發人員]索引標籤]後按[確定], 完成設定.





選取功能表的[開發人員], 相關功能如下列圖示



常用的各項功能說明如下:

Visual Basic : 起動VBA程式撰寫環境

巨集 : 程式撰寫完後, 要讓EXCEL來執行時的指令路徑

錄製巨集 : 把操作的過程記錄下來, 稍後可以透過上述的[巨集]再呼叫重覆執行. 這個功能對於學習巨集及操作VBA的物件模型有很大的幫助.

以相對位置錄製 : 指示EXCEL在錄製巨集時以相對位置的方式錄製, 這是一個選項, 必須在上述錄製巨集前先決定設置與否.

巨集安全性 : 設定巨集能否執行, 及執行前的確認.

插入 : 插入控制物件. 控制物件是人與電腦互動的介面, 包含常見的命令按鈕, 文字方塊, 核取方塊等.

設計模式 : 設定上述插入的物件狀態是在設計模式或執行模式, 也是一個選項, 核取時, 按下物件, 畫面會切換到VBA撰寫環境中, 否則會執行相關令程式.

屬性 : 叫出屬性視窗. 屬性是物件的規格或狀態, 包含常見的名稱, 大小, 顏色, 字型等.

檢視程式碼 : 畫面切換到VBA撰寫環境中, 並開啟顯示選取的物件的程式碼.

XML群組 : XML是可延伸標記語言, 用來定義資料的結構和意義(也就是資料的涵義).

按下[Visual Basic]工具按鈕, 就可以開啟巨集的編輯器Visual Basic Edit(以下以VBE).


編輯器左上方是專案總管, 專案總管中列出了活頁簿與現有的3個工作表等物件. 編輯器左下方是屬性視窗, 會隨著專案總管中選取的物件而顯示該物件的屬性. 編輯器下方的即時運算, 區域變數, 監看式三個視窗可在程式執行時檢查變數, 屬性等的值, 用來協助除錯. 如果沒有看到這幾個視窗, 可以在[檢視]的功能表中把它們叫出來.

那巨集的程式碼要寫在那呢? 在專案總管視窗選取活頁簿或工作表後按在視窗左上方的[檢視程式碼]工具鈕, 或直接在活頁簿或工作表上按兩下, 就可以叫出程式編輯視窗, 如下圖.



VBE視窗與EXCEL視窗可以利用自身工具列中的圖示或WINDOWS的工作列中的圖示自由切換來確認結果或修改撰寫程式碼, 以順利推進工作.

EXCEL與工作自動化

        學習EXCEL是現前的上班族很重要的一項工作技能, 要能在工作上有進一步的發展, 利用EXCEL 來做一些工作的管理, 例如記錄表格的設計, 簡單的數字計算, 繪圖等等, 都可以讓工作取得大幅的進步, 產生很大的效益.

EXCEL基本上是用來處理一些表格, 計算及其所延伸出來的相關工作, 要能用得好, 除了本身的工作有這方面的需求外, 還得花上一些時間, 精神來學習如何操作, 並思考如何結合到工作上, 或工作上的問題, 思考如何運用EXCEL來解決. 如果自身的工作沒有這個需求或不願意花時間思考如何結合工作與工具, 就不會取得大幅長成與熟練.

        EXCEL用到一定的程度時, 漸漸的會發現有一些工作很耗時或重覆在執行, 這時侯自動化的需求就會產生了. EXCEL所提供的自動化, 公式可以算是初階的功能. 公式是包裝好的程式, 又稱為函數, 是會傳回資料的程式. 如果會組合幾個函數一起工作, 就具備了程式的能力了. 例如配合使用IF()函數與WEEKDAY()函數來設定某日的工作.

EXCEL中所提供的另一項自動化的功能是巨集, 巨集是一連串操作EXCEL的動作的組合. EXCEL提供了把動作過程記錄起來的功能, 存放在巨集中, 然後你可以在稍後呼叫執行這個巨集, EXCEL就會自動重覆執行這些動作, 你不必再親自來過.

        雖然有了巨集的功能, 但是能完全一樣的再使用的機會很小, 就算是以相對位置錄製, 仍然有限, 因為在自動化的過程, 常需要一些檢查判斷的結果作為下一個動作的依據, 而錄製巨集沒有辦法做到. 這時候就需要自行調整巨集的內容了.

        EXCEL的巨集是以Visual Basic 為基礎的一連串指令, 所以要修改巨集, 得學習Visual Basic. Visual Basic是一套操作電腦的程式語言, 一般人聽到操作電腦的程式語言, 立刻就會產生排斥, 直覺的認為太難了. 其實難的不是Visual Basic, 難的是你自己的邏輯, 一組完整完善的工作邏輯, 然後用電腦看得懂的方式請電腦來完成.

EXCEL中附的這個版本的Visual Basic是專門用來操作EXCEL, 稱為Visual Basic for Application. EXCEL是由物件所建構起來的一個工作環境, 所以要修改巨集, 還得學習EXCEL物件的相關的知識, 包含物件的屬性, 方法與事件.

        打開Excel工作環境, 出現的畫面是由許多儲存格所組成的一張表格, 儲存格與資料表就是EXCEL的主要物件. 資料表是資料庫的基本元素, 一個資料庫基本上是由一群具有相關性質的資料表所組成的, 所以EXCEL是具備資料庫的功能的, EXCEL也確實有資料庫的相關工具可以使用. 只是EXCEL作為一個資料庫, 功能上有許多的欠缺, 在安全與嚴謹度上明顯不足. 當然這跟EXCEL產品的定位有關, 作為一個通用型的工具必然有的缺點.

        應用EXCEL的巨集與資料庫來工作已經是屬於高階能力, 主要的應用就是建立一套資訊系統. 建立資訊系統除了要學習程式設計, 還要學習資料庫規劃與操作, 如果不是工作上的需求, 很少人會有意願與機會投入, 這一般在中大型企業或是系統開發商才會有的工作, 而且用的工具都是比較專業的資料庫與程式語言.

其實個人或是小型企業也會有資訊系統的需求. 但買一套管理系統, 貴的功能太強大用不著, 便宜的功能又不太容易適用, 缺這缺那的, 最主要是後續的調整與維護都是錢, 要持續擁有一套合用的系統,, 所費不貲. 如果個人或是小型企業能開發自己適用的簡易的系統, 對個人或是小型企業應該是一項重大的幫助. 個人或是小型企業要如何開發自己適用的系統呢? 當然是決心與適當的工具配合, 外加一本合適的指導書.

首先考量的當然是成本, 如果成本不高, 引發了業主的決心, 就可以透過指導書來學習開發一套簡易的資料庫系統. 以此為基礎, 業主可以持續調整擴充自己的需求, 達成以適當的成本擁有合用的資料庫系統的目標. 在這個考量下, EXCEL會是一個不錯的選項, 如果業主已經擁有EXCEL, 那成本就只有指導書了. 雖然EXCEL不夠嚴謹, 不是完全可靠, 但以自行開發維護角度考量, 除了費用低, 還有易於操作的方便性, 可以克服這個問題點, 這會讓學習過程更加容易.

最重要的就是業主的決心了, 因為這是一項還算大的過程, 主要的困難點還是在於毅力. 過程中要學習把想法化為邏輯程序, 這會比較抽象, 常需要重覆測試修改, 以達到幾乎零錯誤. 如果用DIY的觀點把這個過程轉化成樂趣, 最終將獲得極大的成就感.

剩下的指導書, 協助個人或是小型企業擁有自己的資料庫的夢想而展開並完成撰寫, 能透過詳細的說明, 一步一步帶領學習者建立觀念, 擁有技術, 享受樂趣, 品味成就感, 最終為個人或小企業帶來效益.

除此之外, 一點點的英文能力也是需要的, 因為程式碼主要是用英文來寫成的, 但不必害怕, 只會用到很簡單的英文, 而這些英文可以把它們當作一個符號就好.

2014年5月15日 星期四

免費企業資訊系統分享暨設計內容說明

請在文中找到下載點, 別再來函索取. 歡迎來寫使用感言.

自從把庫存管理系統免費分享給有需要的人以後, 陸續收到了索取的留言, 也即時一一的把系統給分享了出去. 這其中最大的快樂就是索取者回覆系統對他們產生了幫助. 當然還是有一些不合用的問題存在, 原因也許來自系統本身, 也許來自電腦配備不同.

看著自己的作品對人有了幫助, 心中除了高興, 也開始思考如何強化功能. 大多數的使用者是含蓄的, 也許是免費的關係, 系統不合用最找其他的就好, 免費提供, 沒有義務解決問題的想法, 並沒有任何的回覆. 功能的增加, 多數得靠自己過去的經驗. 當然也有使用者會詢問一些問題, 這些問題也提供了一些方向.

這次的改版, 以原本的庫存系統為基礎, 再加上時間與金錢的管理來強化系統功能. 報表方面, 因為使用者需求的排版不同, 還是以提供資料供使用者自行發揮的方式來做.

若對自行開發系統有興趣的人, 也可以依序參考本站接下來的文章, 實際動手提昇自己的工作效率.

以下來說明系統整體功能, 合用者, 請自行下載.

系統整體以減少重覆輸入, 降低輸入錯誤, 提昇作業效率的方式思考與設計.

在日常作業中, 使用者只需建好貨品的基本資料一次, 接下來的進出貨, 只要用滑鼠選取要作業的貨品, 不必再輸入貨品的品號品名, 減少錯誤, 提昇效率.
系統也設計了批次選取的功能, 可以設定常用的選取組合, 按個鈕, 系統自動一次選取.


為了讓有大量貨品的使用者能快速找到對象貨品, 增加了欄位篩選的設定及輸入尋找的功能. 雖然是EXCEL的基本功能, 但對EXCEL不熟使用者, 也有效率提昇的幫助.


另外在日期與單號上, 也盡力朝向自動化, 因使用者的差異, 效果可能不佳, 但提醒了使用者可以用公式自動化. 例如單號可與日期, 時間相關.


使用者選取了作業貨品後, 就進入進貨/銷售/異動的作業, 或是加工作業的建立材料用量表.

在進貨/銷售/異動作業中, 使用者只需輸入數量, 廠商/客戶/異動原由也是建立一次, 然後選取輸入. 這些資料, 區分到期與未到期, 當執行進貨/銷售/異動作業時, 系統會檢查日期. 未到期的進銷異資料, 因此提供了一個未來庫存變化的掌握的可能.


系統新增了一個批號管理的功能, 這對貨品的有效期限管理提供了必要的資訊.
新批號, 來自於購入與加工, 一般得自行輸入. 但考量有同批號狀況, 因此在進貨/銷售/異動作業, 配合批號統計, 都有自動查詢, 選取輸入的設計, 提昇作業效率.


系統也把庫存功能擴大到應收付帳. 畢竟, 買-->付款, 售-->收款是很自然的事, 是必要的.

收付款的日期, 模式很多, 系統請使用者利用公式, 讓應收付日期以進銷貨日為基準儘量自動化. 這個部份, 可以依廠商/客戶/原由不同而分別設定.

但使用者可能無法有效設定公式, 如果有一個明確的規則, 可以來函要求協助.


完成進貨/銷售/異動作業, 進入付款/收款/結款作業, 這原本只是記錄進貨/銷售/異動的資料, 現擴大為付款/收款/結款作業.

為了讓使用者找到對象資料, 系統把EXCEL篩選功能叫了出來. 
如果設定好應收付日期的公式, 應收付日在作業中就會自動計算出來, 使用者只需把實際收付款金額, 日期, 單號輸入即可.
系統也考量到呆帳問題, 設有結案欄位. 一般收付款等於應收付時, 系統會自動結案, 出現呆帳, 使用者可以手動強制結案, 結束該筆相關作業.


系統有加工功能, 含組合與拆賣. 並能計算成本.
加工, 可能有附產品, 不計算成本, 可能有副產品, 要計算成本. 系統都已考量, 都能統計出成本, 只要使用者正確設定與執行加工作業.

加工, 資料會經由異動作業中進行確認相關資訊, 包含材料使用的批號, 


為了掌握批號的數量, 系統有即時統計功能, 作為各項出庫作業, 銷售, 加工, 異動的依循.
有了批號管理, 盤點作業也必須以批號為基礎, 並以產生異動方式來一致化作業流程.


庫存, 除了數量, 庫存價值也是使用者關心的重要資訊.
庫存成本來自兩個項目, 購入品, 加工品. 系統採用與期初庫存合計的加權平均法, 逐月計算.
先算出購入品的庫存成本, 再以此為基礎, 合計計算加工品的材料成本與加工費, 得到加工品的庫存成本.
計算出的庫存單價, 提供到進耗存月結中, 結算庫存金額.
加工品單價可以選擇結轉到基本資料中作為銷售價格參考.


庫存進耗存包含查詢與月結功能. 應按月執行月結, 以掌握經營狀況.
資料中, 結餘是進銷必要現金進出的結果, 庫存額是庫存成本價值.


月末庫存, 記錄月結結果.


對於庫存變化, 如果能掌握未來的狀況, 對日常工作可以提供決策, 接單的依據.
系統也針對安全量作了檢查與標示.


系統提供簡易的統計資料查詢, 供使用者進一步活用為自身需求的資訊.


整體的營運, 可以由月庫存分析中結餘與庫存額變化來掌握.


系統也有對於應收付帳的現金週轉, 提供資訊. 尚未實垷的進貨, 銷售資料也納入預計統計, 使用者可以提昇掌握度.


對於應收付帳, 也提供了供使用者自行活用的簡單統計資料.


所有的系統功能/架構, 匯整在首頁中, 加上啟用程序說明, 完成系統設計與實作.


考量系統長久使用的效率, 設計了舊資料封存, 同樣置於首頁的使用程序中. 


經過網友的使用評比回饋, 確認了這個系統的價值 : 

您好:
看了許多類似EXCEL做的企業管理系統,您的這一套系統是很多中小企業&創業者的福音,系統相對其它業者的功能很齊全:

1.簡單易上手.
2.功能分類清楚.
3.操作邏輯簡潔.

感謝您的分享.

有需求者, 合用者, 請自行下載. <= 按它.

下載次數 (2015-10-25 起)


2014年5月14日 星期三

免費加班管理系統分享暨內容說明

免費加班管理系統分享, 有需求者, 請留言或來函索取.

加班, 即超時工作, 反映了一個企業的營運狀況及管理風格. 針對加班進行分析, 可以提供企業營運效率, 未來規劃等一個參考的依據. 也可藉由自單位預實分析, 持續改善.

基於提昇輸入效率及使用者自主報表設計的原則開發加班管理系統.

因為加班是以人, 事為中心. 人與事, 人, 基本資料多, 對象比較固定; 事, 繁而雜, 需進行分類. 本系統採取由人做事'的角度, 建立人的基本資料, 做為發動端.

資料建立一次, 經由滑鼠選取的方式避免重覆輸入. 配合自動篩選, 可以快速找到對象人員.


人員選取後, 進入記錄作業.
加班內容事先分類以利後續統計分析. 只需輸入一次, 藉由選取, 即可完成輸入.
加班日期, 時數依實際狀況輸入, 相同時, 可以利用自動填滿功能, 減少KEYIN.


資料自動轉入資料庫中. 使用者隨時掌握資料內容.


因為加班會影響成本, 一般會在預算編列時同時編列加班時數, 作為營運預測, 管理. 本系統納入加班預算資料, 以月為單位, 作預實分析.


連結預算時數與實績加班內容, 時數, 快速提供分析對策的功具. 一般實績在預算+-5%以外, 屬於異常狀況, 都應分析對策.


如果有安裝OutLook, 預實分析/對策的資料需固定寄送時, 系統也有自動附件的功能, 減少作業時間.


政府有每人每月加班上限的規定, 46小時, 以保護勞工身心健康. 系統針對個人月加班時數作統計, 管理者可以隨時快速掌握個人加班, 以免違法.
同時利用樞紐分析表作個人加班時數推移, 以掌握員工的加班狀況, 作為管理參考.


有其他統計報表需求者, 亦可利用明細查詢, 自行以樞紐分析表掌握各項資訊.


最後, 把系統流程架構起來, 在各分頁及首頁附上使用說明, 完成系統


有需求者請來函或留言索取.

2014年5月10日 星期六

免費動態固定資產折舊管理分享暨設計與說明

動態固定資產折舊管理系統免費分享.

一家企業, 或多或少, 都會投資一些硬體軟體, 這些投資就成了企業的固定資產. 這些軟硬體是企業經營的工具, 設備,  其價值經使用而逐年攤提到產品中, 也就成為產品或服務的成本,.

由於固定資產項目很多, 分攤的使用年限少則兩年, 多則三,四十年, 加上購入時間的差異, 一般手工管理要費很多的工夫.

如何讓這些不同性質的固定資產的折舊能在一張工作表中, 依照一個簡單的作業方式, 而且隨所需要的區間動態的自動更新數值, 就成了管理擔當的一項挑戰.

為了達成簡單的作業方式, 動態掌握不同時期, 不同分攤年限的固定資產的折舊的總合推移狀況, 設計了一個自動的表格. 使用者只要輸入固定資產的購入時間, 金額, 分攤年限, 系統會自動依據設定的顯示起始年分, 把折舊額作動態的顯現.





如果合用, 請來函或留言索取. 使用上有問題亦可詢問.

2014年5月9日 星期五

如果-網站開站誌

如果, 一般來說, 是一個在做推論時, 設定假設的條件時的用語. 例如, 你會說, 如果我有錢, 如果我有時間, 如果當時...等等. 有時是與事實相反的, 有時是因果相關的推論. 不是對過去的遺憾, 就是對未來的期許.

那年, 隨著公司的成長變遷, 電腦系統不再適用, 資訊擔當的自己, 也已稍具功力, 便自己挑戰, 嘗試開發一套人事薪資系統. 一開始, 想說, 得設一個公司什麼的, 作為這套系統的出身依據. 自己便想了一個公司名稱, 如果資訊.

資訊系統, 英文是 Information System. Information 太長了, 截短成 IF, 成為 IF-System. 之所以是IF, 因為IF也有中文翻譯, 如果.

可是如果, 一如先前所說, 不是一個名詞, 動詞, 而是連接詞. 作為名字, 是有點怪. 但怪, 正需要不同的觀點, 重新定義. 所以就思考了一下.

如果, 這個果字是名詞, 有水果, 成果的意思. 那最好了, 取成果之意. 如字呢? 是比較抽象了. 抽象, 就把它具像化吧. 認同/信仰佛教的我, 腦中出現了如來, 如所從來, 對了.

如果, 就是如來的成果, 也就是原本就在那裡的. 從不同的角度, 全新的觀點, 得到新視界, 雖然它原本就在那裡, 卻是新成果.

定了名, 逐步完成了系統. 但事與願違, 公司縮編, 系統成而未開張.

隨著業力移轉到處漂流, 與資訊, 寫程式的緣漸漸淺了. 僅能利用工作所需, 開發一些小系統, 小工具來協助工作自動化.

因緣成熟, 認識了個小女孩, 為他寫了個庫存管理的資訊系統, 雖然都是照我的想法寫的. 後來把這個系統分享給了有需要的人來免費索取. 隨著時間的推移, 系統也做了一些強化, 之前做的小工具, 小系統也想整理出來, 供有需要的人來使用.

於是, 這個網站就開張了.

我想, 除了自己已開發的, 如果有網友有好的想法/需求, 我的能力所及, 當找時間來完成, 分享給所有有需要的人.

當看法改變, 就會看到不同的樣貌. 當焦點從自己身上轉移, 更能豐富自己.