Accounting 板


LINE

VBA如何取得網頁資料時自動整理格式 網誌圖文版: http://www.b88104069.com/archives/4362 本書前面幾章已基本介紹如何以VBA取得網頁資料,本章上一節介紹了台灣銀行匯率的網 址結構,接下來當然要以VBA方式取得銀行匯率資料。有自己先嘗試過的讀者應該發現, Excel VBA所取得匯率資料,在格式上會有不必要空格和錯位的情形,畢竟網頁資料不是 為Excel所準備的,這種情形不但會發生在台灣銀行網頁,也很有可能發生在其他網頁, 為達到有效率取得網頁資料,勢必要取得資料同時調整格式,本節即介紹如何設計格式調 整的VBA程式碼。 一、沿用上一章所熟悉的VBA程式碼: 二、所圖所示,取得資料是網頁表格的部份,剛好符合需要。下載會發現Excel欄位變得 很寛,所以手動調整了欄寛、將儲存格設定為置中對齊,另外和原始網頁兩相比較,應該 是因為表格合併,造成圖片標黃色部份有錯位的情形。 三、每次下載一個網頁,都必須整理格式和調整錯位,像這樣機械式的操作,便是VBA可 以發揮的地方之一。首先,各位讀者應該還記得第一章第四節所介紹的「錄製巨集程式」 。 四、將原始下載資料整理成如圖所示。 五、原始錄製的巨集程式,總共有152行! 六、整理後的程式碼共12行。利用Excel錄製的巨集極具參考價值,但是如同第一章第五 節「編寫巨集程式」所述,現成的程式碼可能無法執行、可能太多不必要的設定,因此進 一步瞭解研究並加以改造,才是學習VBA的王道。如圖所示,新增一個「Module4」,內容 參考所錄製的巨集「Module3」,於VBA編輯環境可以將兩個以上模組都點開視窗,在不同 模組複製貼上非常方便。 七、程式碼說明如下: Columns("A:I").ColumnWidth = 10 設定A到I欄的欄寛為10。 Columns("A:I").HorizontalAlignment= xlCenter 設定A到I欄的水平置中。 Range("C1").Cut:Range("B1").Select: ActiveSheet.Paste Range("B2").Cut:Range("C2").Select: ActiveSheet.Paste Range("D1").Cut:Range("C1").Select: ActiveSheet.Paste Range("G1").Cut:Range("E1").Select: ActiveSheet.Paste 以上四行程式碼,第一行是剪下「C1」,貼上到「B1」,接下來三行以此類推。程式碼中 間的「:」,是VBA程式碼小幫手,作用是把兩行較短的代碼串連起來,和先前介紹的換行 符號「 _」,一個是合併程式碼、一個是切開程式碼,作用剛好相反。 Range("A1:A2,B1:B2,C1:D1,E1:F1").MergeCells= True 將「A1:A2」、「B1:B2」等範圍儲存格合併。 Range("A1:F2").Interior.ColorIndex= 45 Range("A1:F2").Font.ColorIndex =2 Range("A1:F2").Font.Bold = True 以上三行程式碼,分別設定儲存格填滿顏色、字型色彩、粗體,關於「Colorindex」顏色 代碼,可以設置56種顏色,如下圖所示。 Range("A1:F22").Borders.LineStyle= 1 「A1:F22」範圍裡的儲存格字體設置為粗體。 Range("C3:F22").Style ="Comma" 「C3:F22」範圍裡的儲存格數值格式為仟分位、小數點兩位。 所有網頁取得的資料,如同直接於Excel編製的報表,格式上都需要再作調整。以這一章 為例,匯率資料是會經常性取得的,當然不會想說每次取得、每次都要再調整格式,因此 編寫設計相關VBA程式碼時,應該把內容格式也考量在內。 取得網頁資料是稍微複雜的程式,格式調整相對而言較為簡單容易理解,還能像這一節所 示,透過Excel本身錄製巨集的方式作為參考工具,因此何樂而不為呢。擴大而言,除了 匯率資料,無論是取得哪一類型網頁的資料,都可以用這一節相同方式自動調整資料格式 。 本文內容取自《人人做得到的網路資料整理術》: http://www.books.com.tw/products/0010775391。 延伸閱讀: Excel如何取得台灣銀行匯率 http://www.b88104069.com/archives/4348 Excel如何建立財務報表檔案資料 http://www.b88104069.com/archives/4332 Excel如何財務報表另存新檔 http://www.b88104069.com/archives/4330 -- 周末,我們繼續Excel:=>21.心得=>5.其他=>3.office 會計人的Excel小教室: https://www.facebook.com/acctexcel --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 112.20.96.108
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Accounting/M.1547392909.A.767.html ※ 編輯: moodyblue (112.20.96.108), 01/13/2019 23:24:28







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP