官术网_书友最值得收藏!

序 我的自學之路

我是羅剛君,來自四川的一個小縣城——資中縣。

我是個地道的三無人員——無高等學歷(初中畢業)、無突出特長、無顯赫背景,所以1996年1月,當時才19歲的我就踏上了打工之路。

錯失機遇

在打工生涯的前幾年,一直在東莞市裕元鞋廠流水線上工作,無緣接觸電腦,甚至曾有一段時間在心理上抵觸電腦。

記得大概是1998埗年時,東莞市高 鎮開始刮起了電腦風潮,滿街的打字班、Office初級班、高級文秘班、繪圖班等在大量招收學員。當時流水線上有較多同事都陸續報名打字班和Office初級班,少數同事開始學習CAD繪圖和VB編程等課程。曾有一位已經學了兩個月的同事勸我也報名學習電腦,還說電腦的熟練程度會大大影響未來找工作的成功率,而且對于我們這種一心想擺脫流水線的人群而言,電腦才是最好的出路。可惜當時我并沒有接受同事的勸導,只拋下一句“你已經學完了,現在不也和我一樣在流水線工作嗎?”

現在想來,悔之晚矣!若當初聽了同事的話,早8年學習Office軟件,則早日實現個人目標。

從1996年到2004年年初的8年間,我都在鞋廠的流水線和鞋材廠生產車間的注塑機上度過,一直無法實現轉入文職的愿望。

艱辛的DOS征程

在裕元鞋廠工作期間,廠里為約10萬員工提供免費的廠報和雜志,廠報編輯部會每月向廠里的員工征稿。

工廠從1998年開始由12小時工作制轉為8小時工作制,所以在流水線工作的我也每天擁有了大量的閑暇時間。為了消除無聊、打發時間,我每月向廠報投稿,陸續地發表了近百篇文稿,包括小小說、評論和詩歌等。因此,后來廠里的多個辦公室內招文員時,我也獲得了一些面試的機會,可惜的是每次都被最后一關擋下來——電腦打字測試。

碰壁多次后,我開始下定決心要惡補電腦技術。

當時的我手中并沒有閑錢購書學習,月薪650元,需要郵寄600元回家,手里的50元包含了整月的一切開支。所以只能下班后去書店翻閱電腦書籍,將自認為有用的和感興趣的知識點記在腦中,然后回到宣明會提供的免費電腦室上機練習。

最初,我最有興趣的是DOS命令。當時電腦室并沒有網絡,更談不上百度和Google了,所以常去書店翻看DOS教科書,記下三句命令后回到宣明會的電腦室練習。當掌握好當前三句命令后再去書店查閱同一本書,記下另三句命令后回到電腦室繼續練習……如此周而復始。

由于電腦室每天開放的時間和機臺都極其有限,而排隊上機者眾多,所以會經常記下了代碼卻沒有電腦練習,導致簡單的幾十句DOS代碼我用了一個多月的時間才掌握好。若在如今這種網絡四通八達的環境下,可能只需幾個小時就可以全部掌握這些命令的基本語法,熟悉它們的功能。

坎坷購機自學路

在學會DOS之后,我對電腦開始有了濃厚的興趣,于是在工廠附近的“恒輝電腦培訓班”報名學習Word,這是基于投稿寫作的需要。

當時雖然報了Word班,其實沒有上過一節Word課,每天下班后都去培訓班一個人對著書和電腦自學,當時的李枝花老師曾經笑侃:“所有學生都像你這種方式學習,我開班就輕松多了”。其實我現在也慶幸當時養成了自學的習慣,雖然學習進度偏慢,但學得比較全面、系統,而且記憶很深刻。

在自學Word期間,可以聽到旁邊的Excel班老師的講課內容。當時老師每天在講的內容都與股票數據相關,設置單元格格式、排序、篩選、函數、數據透視表等無一不是在操作股票數據,所以我誤以為Excel就是炒股票之用,毅然決定20天自學完Word后不再繼續學習Excel。現在想來,培訓班的Excel教材很可能是一位股票愛好者所寫,所以書中的一切數據都與股票相關,不知道除我之外,是否還有其他人也被誤導?

離開“恒輝電腦培訓班”后,我于2000年底購買了屬于自己的第一臺電腦,在出租屋里自學電腦知識。當時是漫無目的地學習,今天Photoshop,明天AutoCAD,后天又PowerPoint。意外的是電腦才買了不到七天,出租屋被盜,電腦、手機都被人盜走,所以第一輪電腦學習道路就此終結。

雖然該機只是一臺二手電腦,但卻耗費了我足足半年的積蓄,無比傷感。

同時也感嘆一下東莞市的治安環境,無以言表……

經過以上事件后,我只能再次回到宣明會的免費電腦室學習,其間也曾報了打字班學習五筆輸入法。由于電腦培訓是員工福利,所以聽課和上機練習都免費。可惜的是上完10節課后,居然一分鐘只能打8個字,還不能保證準確率在90%以上。

打字班畢業后,我在書店無意間發現《電腦報》中的內容很有趣,書中關于安裝系統、解決疑難雜癥的問答深深觸動了我,所以我又開始在宣明會的免費電腦室里自學安裝系統、維護系統、修改注冊表和了解控制面板設置等相關知識。由于電腦室中的電腦皆裝有自動還原軟件,所以學習期間不曾讓電腦留下后遺癥。

半年后,我攢夠了一臺電腦的錢,又再次購買了一臺二手電腦,打算進修一下Photoshop和AutoCAD。為了安全起見,我不得不搬到一棟新樓,從一位湖南的二手房東那里租得一個小單間,打算學成后可以換個工作,脫離流水線生活。

很悲劇的是,老天不曾降我大任,卻一直不斷地苦我心志、行拂亂我所為——在出租屋里自學僅半個月,電腦再次被盜。經過了解,二手房東于半夜光景盜竊了整棟樓的所有晚班住戶,十幾家無一例外,房東用兩個卡車拖走了盜竊的物品,當然其中也包括我的電腦。

警察登記了所有人的失竊物品,只留下一句:“破案后會通知你們。”直到5 年后我離開東莞去中山市工作時也沒有得到任何通知。再次感嘆一下東莞的治安……

轉機

2004年后,經“熟人”介紹,我進了一家鞋材廠工作(給了1000多元感謝費),由于前面所言的“三無”狀態仍未改善,所以到新廠后仍然只能在車間里做一名普通員工,開了一年注塑機,臺灣人也稱之為啤機。

由于在新廠里繼續發表一些評論文章,且被廠長和主任所留意到,所以當辦公室里需要一個廠長助理時,我獲得了一個面試機會。

不過,和前面幾次面試并沒有區別,被最后一關擋在門外——當時廠長拿出一張車間每天使用的生產報表,讓我在Excel中設計同等效果的表格。這本是極簡單的工作,僅僅將紙上的文字錄入到表格中,然后對表格添加邊框、合并單元格之類,但是由于沒有學過Excel軟件,所以10分鐘后也沒完成任務。這次面試以失敗告終。

不過,一個月后迎來了轉機,辦公室一直找不到合適的人選,廠長只能勉為其難地接受了我這個半罐水,讓我一邊工作一邊學習。

在那段工作期間,我的職務是NOS小組成員,類似于ISO小組的工作。工作中用得最多的軟件是PowerPoint,通過它制作會議報告,對Excel并沒有涉獵太多。不過在業余時間我開始自學電腦硬件維修、自學FrontPage軟件設計網站、自學遠程控制以及動畫相冊等軟件。

這些自學成果對當時的工作幫助不大,但豐富了生活和興趣,同時為日后自學VBA和網絡管理工作積累了很好的經驗。

起程

2006年,我轉入了廣東省中山市的一家鞋材廠工作,在新廠中主持全廠的稽核、盤點、培訓等工作。由于工作中需要大量使用Excel,所以在這段時間開始自學Excel,包括制表的基礎知識、函數與公式、圖表等技術。

在2006年3月,辦公室電腦終于可以登錄外部網了,眼界頓時開闊不少,不再總是形單影只地獨立學習,可以和外界的網友交流,學習進度相比以前一日千里。

2006年3月4日,第一次登錄Excelhome論壇,找到了志同道合的網友們一同探討Excel技術。2006年3月6日,又注冊了另一個當時國內最大的Office論壇——OfficeFans。

在以上兩個論壇中學會了Excel函數和圖表,2006年底榮升OfficeFans論壇之圖表區版主,2007年4月受ExcelHome論壇的邀請,成為ExcelHome論壇版主。以后的幾年中,又陸續成為ExcelTip等其他五六個論壇的版主。

至此,終于開始正式踏足Excel領域。

補充:在中山市工作期間,再次買了一臺二手電腦,用于學習Excel。此電腦對我助益較大,為我以后的道路奠定了良好基礎。可惜的是在中山市工作兩年半后輾轉回到東莞市另一家鞋材廠做網絡管理,電腦在出租屋里再次被盜……

請問東莞市的公安局長們,東莞的治安問題比國足奪冠難多少?

VBA處女作

自從2006年開始學習VBA后,VBA的趣味性吸引了我,以前下班后偶爾看小說、看電影、下象棋、投稿寫作的愛好全都轉移到了VBA之上。

前半年,我的業余時間一半用來學習函數,另一半用來學習VBA,之后則連續三個月專攻Excel VBA,幾乎每天加班自學,把Excel VBA的幫助翻了個遍。

2006年,我還沒有自己的QQ號,也不會使用QQ。現在想想,當時沒有QQ對我學習VBA而言既有利又有弊,益處是沒有QQ工具,就可以專心致志地學習VBA,不被外界打擾,更不會因QQ閑聊耽誤學習進度和影響學習興趣;弊處是沒有QQ好友與我交流,無法獲得需要的學習資料,影響學習進度。

在Excel VBA的學習過程中,我開發了不少小型插件,發表在各大Office論壇中,逐漸擴大了個人影響力。

2007年年初,有電子工業出版社的編輯找我合作出書,經過近兩個月的交流,未能達成共識,最終放棄。

也是在這一年,我學會了使用QQ軟件,通過QQ認識了北京的一位在校大學生,她在VBA方面有所建樹,與我常有技術交流,同時也感謝她將我介紹給了電子工業出版社的另一位編輯。

2007年7月左右,我開始和電子工業出版社合作出版我的第一本VBA著作《Excel VBA范例大全》。經過3個月加班加點的努力寫作,連續90天沒有休息一天,每天工作到23:00左右,終于在2007年10月完成了86萬字、共585頁的處女作。

此書經過編輯、排版、糾錯、印刷等后期加工,于2008年3月正式上市。

從愛好到事業

學習VBA,是緣于本人對VBA的興趣和愛好,工作中暫時不曾用到過。

不過當完成VBA處女作,對VBA的掌握更牢固、應用更熟練后,VBA的功效就自然地呈現出來。這也是我曾經對VBA學員講過的——別問有沒有用,你有幾分耕耘?

很多知識皆如此,學得夠好時它才能發揮效用,在學成之前,它確實可有可無。

例如,作為英語專業的學生翻譯10句錯3句,那么想靠英語謀生簡直是異想天開,但若翻譯10句正確10句時,英語將是你的護身符,同時也是找工作的敲門磚。

當完成第一部VBA著作后,愛好仍然是愛好,但同時也上升為事業,開始通過VBA養家,甚至幾年后通過稿費在武漢買了一套住房。

從2007年開始寫作,至今已出版9.1部Excel圖書,包括:

1.《Excel VBA范例大全》

2.《Excel 2007常見技法與行業應用實例精講》

3.《Excel 2007 VBA開發技術大全》

4.《Excel 2007函數案例速查寶典》

5.《Excel VBA程序開發自學寶典》

6.《Excel 2010 VBA編程與實踐》

7.《Excel 2010函數與圖表速查手冊》

8.《Excel VBA程序開發自學寶典(第2版)》

9.《Excel函數、圖表與透視表從入門到精通》

10.《來吧,帶你玩轉Excel VBA》

其中《Excel 2007 VBA開發技術大全》原本是兩個網友的作品,由于她們時間不夠,所以我友情客串一下,幫忙完成了該書最后一章,近50頁。因此,只能算作我的0.1部圖書。

VBA有用嗎

VBA是否有用?其優勢如何體現?

這兩個問題反復出現在論壇和QQ群中。

我想第一個問題已不需要回答,只要你看了前面的敘述,那么答案已經在你心中。

VBA的優勢如何體現?這因人而異,就完全取決于用戶的掌握程度和使用方式。對我而言,有太多太多的現實意義,除了前面說的寫書外,還通過VBA開發商業插件,以及通過VBA大大簡化工作。

說說我的兩次親身經歷吧。

經歷一是“VBA實現無人值守工作”。

大約六年前,我曾做過半年報表匯總工作,每天將前一天的品檢部、生產部和生管部報表整理到一個工作簿中,然后分組統計,并生成圖表和透視表發送給經理。以前的同事每天讓三個部門的文員將報表發到郵箱中,然后打開三份報表并整理數據、生成總表,每天需要0.5到1小時。我接手該工作后,采用以下方式處理。

1 在服務器的共享磁盤中創建一個名為“明細”的文件夾,讓三個部門的同事將每天完工的明細報表都按今天的日期命名并保存到該文件夾中。

2 在本地磁盤創建一個文件夾“模板”,其中存放一個用于匯總的模板工作簿,工作簿中采用VBA代碼自動打開遠程共享的明細文件,并按設定的流程全自動匯總報表,當“模板”文件夾中生成匯總表后將匯總結果自動復制一份到服務器中名為“總表”的共享文件夾中,文件以當天的日期命名。下圖即為文件匯總流程與文件夾之間的關系示意圖

3 通知經理從服務器共享文件夾“匯總表”中提取今日匯總的報表。

由于匯總表中的VBA代碼設置為打開報表時自動執行,它會到指定的文件夾中檢查是否存在需要匯總的三份報表,以日期文件名作為判斷標準,如果不存在則產生提示框,然后自動關閉文件;如果文件存在則自動匯總報表數據,完成后在本機保存一份匯總表,同時另存一份到共享文件夾“總表”中,一切工作全自動進行,需要執行的只有一步——雙擊打開本機中的總表模板。換言之,以往近1小時的工作現在只需要雙擊工作簿就完成了。

后來的某天,我因某些原因睡過了頭,第二天早上9點多尚未起床,結果經理9:00開會時需要報表。當接通經理的電話后,我在電話中告知經理匯總表已經完成,自己有事在外,并請經理打開我的電腦,從D盤中打開匯總表模板查看即可。其實當經理打開該模板時,代碼才開始運行,數秒鐘后自動匯總完畢,并生成一個匯總表。

換言之,某些工作借助VBA可以實現無人值守,讓代碼全自動執行,從而解脫雙手。

經歷二是“3句代碼讓3小時工作變成3秒”。

有一次我去分公司處理電腦故障,看到辦公室有個同事在制作一個生產報表。

下圖是公司的產值表,表中需要計算的是每個員工生產的所有產品的數量乘以單價得到的產值。要完成需求有三個難點:

每個員工生產的產品種類的數量不一致

產品數量和單價欄中包括單位名稱且單位不一致

存放結果的單元格需要合并從而無法填充公式

我看到該同事在計算產值表時按上圖中F列所示方式設計公式,不到5000行的數據每天需要花費3~5小時才能完成,而且計算結果的準確度也沒有保障。

所以我為此報表寫了一個自定義函數,只用了三句代碼。完整代碼如下:

Function Cal(rng1 As Range, rng2 As Range)
    For i = 1 To Application.ThisCell.MergeArea.Rows.Count
        Cal = Cal + Val(rng1.Offset(i -1)) * Val(rng2.Offset(i -1))
Next
End Function

調用代碼的方法是選擇F列第2行到工作表最后一個非空行的整個區域,然后在編輯欄中錄入以下公式:

=cal(D2,E2)

當按下組合鍵【Ctrl+Enter】后,選區中將自動填充所有公式。計算結果如下圖所示。

整個工作僅需3秒即可完成,而且計算結果100%準確。

本書特點

由于除了五筆打字以外,我的一切電腦知識都是自學而來,因此本書也以經典自學教材為最高目標,期望讀者借助本書可以自學VBA,通過VBA提升工作效率。因此本書為了讀者自學方便,在諸多細節處提供了人性化的提示和標識,盡可能地提升讀者的閱讀體驗。

本書人性化細節主要體現在以下幾個方面。

1 本書每一章的楔子都提供了一個虛擬人物羅斯的個人經歷,通過小故事引出VBA正文描述。全書共包含23個不同情節的小故事。

全書23章的內容從入門到中高級層層遞進,而故事中的主人公羅斯的VBA技術水準也相應地逐步提升。不過在不同階段會遇到不同的問題,書中一一給出相應的解決方案。在解決羅斯的疑難的同時,也幫助讀者提高VBA技術。

本書通過23個小故事展示了羅斯的VBA技術成長歷程,讀者也可以跟隨羅斯的腳步從入門到高級進修,在解決工作疑難的同時完善自己的VBA技術。

在每一個章節中,主人公羅斯都遇到了不同的問題,隨后的正文則剛好解決該問題。事實上,不少讀者都是帶著疑問學習VBA,在學習之前可以先閱讀章節前的小故事,看看你和羅斯是否都走過了相同的道路。

2 本書講解VBA語句的語法時,比其他書更注重細節標示。以往的簡單一句語法說明“If condition Then statements Else elsestatements”在本書中將按以下方式呈現給大家:

當然,除了以上語法說明和圖示外,還提供了更詳細的文字注解和案例演示。

再如以往Select Case語句的語法按以下方式說明:

Select Case testexpression

[Case expressionlist-n

[statements-n]] ...

[Case Else

[elsestatements]]

End Select

本書則采用以下方式呈現給大家:

是否更加人性化呢?

3 為讀者提供查詢幫助的關鍵字提示。

新建工作表時使用Add即可,然而在幫助中搜索“Add”時很難找到想要的結果。而本書會在書中第一次出現新建工作表的案例時提供說明“查詢幫助的關鍵字:Worksheets.Add方法”,讀者只要按照提示查詢幫助,即可以瞬間定位目標,提升學習效率。

4 書中的每個Sub過程和Function過程都提供了放置位置提示。因為根據我近6年做VBA圖書售后服務的經驗,發現很多VBA初學者將代碼放錯位置從而導致執行代碼后無法獲得正確結果,所以本書對所有完整的過程都標注代碼放置位置。

5 隨書光盤中提供了書中每個案例的案例文件,而且在每個案例文件的模塊頂部提供代碼思路分析,從而加快讀者的理解、提升學習效率。

例如下圖是光盤中一個文件的代碼與代碼思路分析。

6 書中每句代碼都提供了含義注釋,而且為了幫助讀者快速區分代碼與代碼含義注釋,本書采用雙色印刷,將代碼與代碼注釋印刷為不同顏色。例如:

Sub打開帶密碼且帶有自動宏的工作簿() '放置位置:模塊中
    '禁用打開的所有文件中的所有宏,而不顯示任何安全警告。
Application.AutomationSecurity = msoAutomationSecurityForceDisable
        '打開工作簿時自動輸入密碼
Workbooks.Open Filename:="C:\生產表.xlsm", Password:="ABCC"
      '恢復宏的處理方式:用“安全性”對話框中指定的安全設置來處理。
Application.AutomationSecurity = msoAutomationSecurityByUI
End Sub

7 為了給讀者創建一個良好的學習環境,本書提供兩個交流平臺,包括售后服務論壇,網址如下:

http://www.exceltip.net/

其次提供售后服務QQ群,光盤中的每一個案例文件都標注了QQ群號。

衷心希望每一位讀者都能通過本書全方位地掌握VBA,將VBA技術轉換成生產力,同時也能通過VBA產生經濟效益。

作者:羅剛君

2013-6

主站蜘蛛池模板: 武邑县| 四子王旗| 新闻| 阿拉善盟| 通许县| 武强县| 寻乌县| 建德市| 凉山| 秦皇岛市| 周宁县| 西安市| 霍州市| 枣阳市| 大荔县| 天长市| 宜都市| 夏河县| 辽阳县| 汤原县| 池州市| 新密市| 濮阳市| 桂林市| 当阳市| 和田市| 泽普县| 泽普县| 呈贡县| 芜湖县| 桐庐县| 大同县| 金沙县| 桓台县| 鄂伦春自治旗| 怀远县| 若尔盖县| 渑池县| 右玉县| 阜康市| 尖扎县|