999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用VBA自動計(jì)算歷年日平均氣溫月標(biāo)準(zhǔn)差

2013-09-29 05:48:44吳有恒孫永順吳世美
中低緯山地氣象 2013年1期

吳有恒,孫永順,吳世美

(1.貴州省貴陽市氣象局,貴州 貴陽 550001;2.貴州省三穗縣氣象局,貴州 三穗 556500)

1 引言

VBA是Visual Basic For Application的簡稱,也叫做宏程序,是建立在Office中的一種應(yīng)用程序開發(fā)工具。通過編寫代碼,使Excel顯示我們想要的計(jì)算結(jié)果,對于新建相同樣式的表格只需通過宏錄制功能便能使Excel自動生成,無需浪費(fèi)時(shí)間去重復(fù)設(shè)計(jì),在VB編輯器中還提供了可視化的窗體設(shè)計(jì)功能,只需拖動相應(yīng)的控件到想要放置的位置上,再編寫相關(guān)事件,一個(gè)簡單的窗體便產(chǎn)生了。筆者通過實(shí)現(xiàn)工作中用到的歷年日均氣溫月標(biāo)準(zhǔn)差的自動計(jì)算來擴(kuò)展VBA編程能力。

2 功能分析及算法

2.1 讀取A文件氣溫并求平均值

打開Excel文件,使用快捷鍵Alt+F11即可調(diào)出VB編輯器,在編輯器左上角的工程資源管理窗口中點(diǎn)擊鼠標(biāo)右鍵新建標(biāo)準(zhǔn)模塊,模塊即是編寫程序代碼的一個(gè)框架,通過在其中創(chuàng)建Sub子過程來實(shí)現(xiàn)算法。

月地面氣象資料格式文件(A文件)按一定順序存放著該月各氣象要素?cái)?shù)據(jù),通過Open語句打開A文件并存放在Open語句分配的緩沖區(qū)內(nèi)供文件進(jìn)行輸入或輸出操作,下面是讀取A文件氣溫并求日平均的值的語句(中文部分是注釋):

2.2 自動生成所需樣式的表格

打開Excel,選擇“工具”→“宏”→“錄制新宏”打開錄制窗口,借助宏錄制功能設(shè)計(jì)表格樣式、字體大小等,錄制完成后生成的代碼會保存在VB編輯器的模塊中。讀取A文件氣溫?cái)?shù)據(jù)計(jì)算得到的日平均值要在生成的表格中按順序存放,如圖1。

圖1 各年日平均氣溫及月標(biāo)準(zhǔn)差表

在表的最后一行是日平均氣溫的月標(biāo)準(zhǔn)差,Excel中有直接計(jì)算樣本標(biāo)準(zhǔn)差的公式,以1月為例在程序中加入代碼Range("B35").FormulaR1C1="=STDEV(R[-32]C:R[-2]C)",該語句表示B35這個(gè)單元格使用公式STDEV計(jì)算從第3行(R[-32]表示35-32=3)到第33行(R[-2]表示35-2=33)的樣本標(biāo)準(zhǔn)差。對于新建如圖1的其余年份的表格,只需把生成表格樣式的代碼放到循環(huán)語句中便能自動生成。

2.3 創(chuàng)建超鏈接方便查閱

在求日平均氣溫月標(biāo)準(zhǔn)差的30 a均值時(shí)新建如圖2的表格。

為方便查看各年日平均氣溫及月標(biāo)準(zhǔn)差,在該表的A列創(chuàng)建訪問相應(yīng)年份的超鏈接,需要用到Hyperlinks對象的Add方法,即超鏈接的添加方法,以代碼中的語句為例:

圖2 歷年日平均氣溫月標(biāo)準(zhǔn)差及均值表

"跳轉(zhuǎn)到"&Sheets("各年日平均氣溫月標(biāo)準(zhǔn)差及30 a均值").Name,TextToDisplay:="返回目錄"

該句中Anchor:=.Range("A2")表示設(shè)置A2單元格為超鏈接;Address:=""表示無引用外部文件或訪問網(wǎng)址的鏈接;SubAddress:="目錄"表示引用本工作薄內(nèi)名為“目錄”的區(qū)域;ScreenTip:="跳轉(zhuǎn)到"&Sheets("各年日平均氣溫月標(biāo)準(zhǔn)差及30 a均值").Name表示當(dāng)鼠標(biāo)移動到A2單元格時(shí)會提示“跳轉(zhuǎn)到各年日平均氣溫月標(biāo)準(zhǔn)差及30 a均值”;TextToDisplay:="返回目錄"表示在A2單元上顯示“返回目錄”,如圖1中A2單元格的藍(lán)色字體所示。

3 窗體設(shè)計(jì)

在VB編輯器中通過插入用戶窗體,設(shè)計(jì)了3個(gè)文本框用于獲取區(qū)站號、開始年份和結(jié)束年份,通過傳遞用戶輸入的數(shù)據(jù)改變A文件名,使得日平均氣溫月標(biāo)準(zhǔn)差的計(jì)算同樣適用于其他臺站,而且開始和結(jié)束年份不固定可以任意輸入,但是對于文本框輸入內(nèi)容都有條件限定,區(qū)站號只允許輸入5位數(shù)字,開始和結(jié)束年份只允許輸入4位數(shù)字,因?yàn)檠職v史數(shù)據(jù)用的都是近30 a的氣候資料,所以年份間隔必須為30 a,輸入錯誤會彈出消息框要求重新輸入,區(qū)站號和年份輸入正確后會提示“確保所有的A文件都放置在D:OSSMO 2004ReportFile下”,該目錄也是測報(bào)軟件默認(rèn)存放A文件的路徑。

最后點(diǎn)擊上圖中計(jì)算按鈕后便會呈現(xiàn)如圖1、圖2所示樣式的31張表格。

4 小結(jié)

圖3 計(jì)算器界面

使用Excel內(nèi)置的VB編輯器編寫宏程序計(jì)算歷年日平均氣溫月標(biāo)準(zhǔn)差雖然只是實(shí)現(xiàn)了旬月歷史數(shù)據(jù)中的一項(xiàng),但通過此次編程實(shí)踐提升了解決工作問題的能力,對于其他歷史數(shù)據(jù)只需對代碼做相應(yīng)改動即可實(shí)現(xiàn)。之所以選擇使用VBA還在于Office辦公軟件的普及,它能引導(dǎo)Excel創(chuàng)建自動化操作并快速處理數(shù)據(jù),實(shí)現(xiàn)很多Excel基本功能所不能實(shí)現(xiàn)的功能。最后還需說明的是宏的運(yùn)行,打開“工具”→“宏”→“安全性”,只需選擇中級即可,之后在打開本文所示已寫好宏程序的Excel文檔時(shí),點(diǎn)擊“啟用宏”便會彈出圖3對話框。

[1]韓小良,韓舒婷.Excel VBA高效辦公實(shí)用寶典[M].北京:中國鐵道出版社,2008.

[2]黃世芹,王珺.VB編程環(huán)境下如何調(diào)用和生成EXCEL文檔[J]. 貴州氣象,2010,34(2):38-39.

主站蜘蛛池模板: 国产九九精品视频| 97人妻精品专区久久久久| 国产伦精品一区二区三区视频优播| 成人亚洲视频| 亚洲日韩精品欧美中文字幕| 就去吻亚洲精品国产欧美| 嫩草国产在线| 精品国产自在现线看久久| 看国产一级毛片| 毛片网站观看| 午夜精品国产自在| 精久久久久无码区中文字幕| 五月婷婷丁香色| 欧美精品不卡| 日本久久网站| 欧美精品v| 91欧美亚洲国产五月天| 亚洲制服丝袜第一页| 91精品国产福利| 91精品国产自产在线观看| 曰韩人妻一区二区三区| 亚洲人成影院在线观看| 福利姬国产精品一区在线| 老司国产精品视频| 在线精品欧美日韩| 在线中文字幕网| 激情网址在线观看| 免费观看亚洲人成网站| 男女性色大片免费网站| 日本黄色a视频| 亚洲男人的天堂在线观看| 丁香六月激情婷婷| 在线免费a视频| 国产精品自在自线免费观看| 国产三级成人| 中文字幕有乳无码| av在线无码浏览| 欧美高清三区| 日韩无码黄色网站| 色综合a怡红院怡红院首页| 四虎亚洲国产成人久久精品| 黄色免费在线网址| 国产免费黄| 亚洲第一黄片大全| 欧美午夜小视频| 无码aaa视频| 99九九成人免费视频精品 | 久久精品中文字幕免费| 中文字幕av一区二区三区欲色| 久久久久国产精品嫩草影院| 成人午夜福利视频| 91色爱欧美精品www| 国产视频a| 1级黄色毛片| 亚洲欧美日韩中文字幕一区二区三区 | 午夜综合网| 久久久久无码精品| 亚洲精品黄| 五月婷婷欧美| 四虎国产精品永久一区| 国产精品视频白浆免费视频| 久久久久国产一区二区| 国产精品污视频| 免费网站成人亚洲| 99久久成人国产精品免费| 久久久精品无码一二三区| 亚洲欧洲日产国产无码AV| 亚洲国产精品美女| 亚洲天堂视频网站| 9cao视频精品| 亚洲中文字幕久久无码精品A| 亚洲天堂精品视频| 亚洲色图欧美激情| 国产成人啪视频一区二区三区| 女人18毛片一级毛片在线| 日韩一级二级三级| 欧美一级在线播放| 91福利国产成人精品导航| 伊人狠狠丁香婷婷综合色| 国产又粗又爽视频| 国产系列在线| 91在线精品麻豆欧美在线|