有相當(dāng)一段時間沒碰代碼了,這次應(yīng)朋友之邀,做了點(diǎn)工作,略記如下:
一、需求分析
1、朋友需求
需求還是比較明確的,就是利用電腦自帶的攝像頭,在Excel中調(diào)用,拍照,插入到指定位置。簡稱“即拍即插”。
2、方法原理
初步分析,認(rèn)為理論可行,基本步驟為:
- 啟動攝像頭小窗
- 點(diǎn)擊截屏
- 生成臨時圖片文件
- 圖片文件處理
- 作為圖片插入當(dāng)前位置
二、條件準(zhǔn)備
1、查找資料
互聯(lián)網(wǎng)的便利性就在于不用重復(fù)發(fā)明輪子,上網(wǎng)上搜搜,也許就找到了答案,至少提供基礎(chǔ)的參照,所以第一步是去找樣例參考。
分別在ExcelHome搜索到問題,因?yàn)闆]有圓滿的答案,繼續(xù)找;后來 從CSDN上搜索到樣例,不過下載需積分。
- 掃碼關(guān)注微信號
- 在微信中輸入“答案”獲得答案
- 點(diǎn)擊“領(lǐng)取獎勵”的網(wǎng)頁
- 輸入答案,獲得積分
- 下載樣例
- 運(yùn)行樣例,發(fā)現(xiàn)沒裝Excel
2、配置環(huán)境
找了個Excel 2010試用版,發(fā)現(xiàn)不習(xí)慣,重新?lián)QExcel 2003吧。
運(yùn)行案例,發(fā)現(xiàn)無視頻,想起來攝像頭好像一直有問題,難道是驅(qū)動問題?
按Fn+F6,出現(xiàn)視頻監(jiān)控信息,無視頻圖像,顯示“攝像頭被其他應(yīng)用占用”。暈,于是有了下面的猜想:
a) 被誰占用,聯(lián)想電腦你告訴我呀
b) 聯(lián)想說微軟沒告訴我,我也不知道
c) 微軟說我定了規(guī)范,應(yīng)用程序不遵守,我也不知道被誰調(diào)用
d) 用戶你就猜吧。
搜索類似問題,網(wǎng)上一大堆,看來是一個比較普遍性的問題,上聯(lián)想網(wǎng)站更新驅(qū)動吧。該網(wǎng)站提供給了3種方法查詢驅(qū)動:
方法1:需要機(jī)器ID,按提示拆電池找ID,哈哈,機(jī)器居然關(guān)機(jī)了(初時沒反應(yīng)過來),幸虧沒有什么重要的東西沒保存的。總算找了一個有點(diǎn)象的,重啟電腦,輸入該ID,結(jié)果不正確。看來此路不同。
看到方法3,準(zhǔn)備按類別篩選,點(diǎn)“筆記本”,結(jié)果顯示
:(
抱歉,您請求的頁面現(xiàn)在無法打開!
您所訪問的頁面不存在于support.lenovo.com.cn網(wǎng)站上。 反饋給我們
可能的原因:
可能您輸入的URL 地址拼寫錯誤
您要尋找的頁面或文件已被刪除、過期或不再提供。
回頭看方法2,發(fā)現(xiàn)可下載“Lenovo聯(lián)想驅(qū)動管理”,一鍵搞定那是最好了,于是下載、安裝、檢測,沒有發(fā)現(xiàn)攝像頭驅(qū)動有問題或需要更新。
看來此路不通,怎么辦?老辦法,卸載重裝。卸載現(xiàn)有攝像頭驅(qū)動重新安裝,無果;卸載Communication Utility,重新安裝后,居然OK了。不知所以然。
三、開發(fā)調(diào)試
1、層層過關(guān)
環(huán)境終于搞定,開始跑案例,居然一次通過,Good!
問題是,不能總在這個文件中使用插入照片吧,要有全局性的入口,于是自定義工具欄來了:
- 通過“工具-自定義”對話框,新建一個工具欄
- 加入按鈕,定義文字和圖標(biāo)
- 給這個按鈕分配宏
- 試驗(yàn)運(yùn)行,OK
問題繼續(xù):文件關(guān)閉了,這個工具欄按鈕就不能Work了。
看來要讓文件一直在后臺跑。
怎么辦?使用加載宏。
問題繼續(xù):全局自定義工具欄按鈕無法與加載宏文件中的宏關(guān)聯(lián)。
怎么辦?需要寫代碼實(shí)現(xiàn)自定義工具欄按鈕。
2、編寫代碼
VBE編程環(huán)境好久沒碰,只能重頭再來。這個時候系統(tǒng)提供的幫助就太重要了。還好,畢竟有基礎(chǔ),很快上路。末了發(fā)現(xiàn)自定義按鈕的Icon沒有,按鈕圖標(biāo)怎么改?搜,查到了FaceID,為什么commandbar幫助中沒有這個屬性呢?
問題繼續(xù):用哪個FaceID值呢?查幫助,沒有FaceID與圖標(biāo)的對照表。
只好臨時試驗(yàn)幾個值,隨便選一個了。
繼續(xù)試驗(yàn)可用,還好比較順利,終于搞定。
四、測試交付
拿著做好的加載宏文件到第二臺機(jī)器上測試,一次性通過,Good!
在Excel 更高版本上可用嗎?簡單測試發(fā)現(xiàn)在Excel 2010上可用。
發(fā)給朋友測試,靜候佳音。順附使用指南:
- 將附件xla文件下載到本地硬盤
- 打開Excel 2003,點(diǎn)擊“工具-加載宏”菜單,彈出對話框,點(diǎn)擊右側(cè)的“瀏覽”按鈕,選擇步驟1下載的文件,則“用攝像頭拍照”加載宏添加到右側(cè)列表中了,點(diǎn)擊勾選中它,點(diǎn)擊左側(cè)確定關(guān)閉對話框
- 此時會出現(xiàn)一個“新工具”工具欄,其中有一個“插入照片”按鈕
- 點(diǎn)擊該按鈕,進(jìn)行初始化攝像頭(第一次用可能要幾秒鐘),出現(xiàn)攝像頭畫面
- 單擊畫面,則自動生成截圖,并插入到當(dāng)前光標(biāo)所在單元格
- 移動光標(biāo)到其他單元格,點(diǎn)擊攝像頭畫面,可繼續(xù)插入截圖,以此類推
- 關(guān)閉攝像頭畫面,插圖完畢。
- 下次啟動Excel后,包含“插入照片”按鈕的“新工具”工具欄會自動出現(xiàn),位置可任意調(diào)節(jié)。