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.

主站蜘蛛池模板: 波多野结衣无码中文字幕在线观看一区二区| 国产成人精品一区二区不卡| 在线日本国产成人免费的| www.91中文字幕| 久久精品中文字幕少妇| 国产精品久久久久婷婷五月| 欧美视频在线观看第一页| 九九久久精品国产av片囯产区| 亚洲va欧美ⅴa国产va影院| 国产第八页| 国产原创演绎剧情有字幕的| 91在线无码精品秘九色APP| 毛片基地视频| 国产精品lululu在线观看| 99在线观看免费视频| a级毛片毛片免费观看久潮| 九九免费观看全部免费视频| 在线观看国产一区二区三区99| 午夜精品影院| 一级毛片高清| 久久综合色视频| 天堂网亚洲系列亚洲系列| 婷婷六月综合网| 欧美精品三级在线| 国产精品女人呻吟在线观看| 国产精品免费露脸视频| 久久久久免费精品国产| 日韩东京热无码人妻| 久久综合五月婷婷| 91久久精品国产| 区国产精品搜索视频| 亚洲天堂日本| 97精品国产高清久久久久蜜芽| 国产在线小视频| 中文字幕第4页| 大香网伊人久久综合网2020| 久久国语对白| 欧美69视频在线| 国产精品吹潮在线观看中文| 久久这里只有精品66| 久久国产V一级毛多内射| 爱做久久久久久| 亚洲AⅤ波多系列中文字幕| 国产网站免费观看| 国产精品真实对白精彩久久| 亚洲欧美综合精品久久成人网| 456亚洲人成高清在线| 国产系列在线| 91在线精品麻豆欧美在线| 91亚瑟视频| 91人妻在线视频| 欧美成人午夜影院| 国产不卡在线看| 2020国产在线视精品在| 在线免费亚洲无码视频| 亚洲精品图区| 中文字幕无线码一区| 日韩资源站| 日本人妻一区二区三区不卡影院| 麻豆精品在线| 国产麻豆91网在线看| 亚洲午夜福利在线| 日韩欧美国产成人| 中文字幕乱码中文乱码51精品| 色综合天天操| 亚洲综合经典在线一区二区| 国产在线视频欧美亚综合| 亚洲国产中文综合专区在| 亚洲日韩精品综合在线一区二区| 99精品伊人久久久大香线蕉| 黄色网在线| 亚洲国产精品无码AV| 亚洲无码37.| 国产真实乱人视频| www.99精品视频在线播放| 精品少妇人妻一区二区| 亚洲熟女中文字幕男人总站| 久久亚洲国产一区二区| 青青草原国产免费av观看| 无码丝袜人妻| 亚洲欧美色中文字幕| 99久久精品视香蕉蕉|