




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
ExcelVBA在工程測量上的應(yīng)用Excel是大家很熟悉的辦公軟件,相信大家在工作中經(jīng)常使用吧。在測量工作中,你是否感覺到有很不方便的時候?比如,計算一個角度的三角函數(shù)值,而角度的單位是60進(jìn)制的,此時,你一定感到很無奈,因為,Excel本身無法直接計算60進(jìn)制的角度的三角函數(shù)!還有,如果你的工作表中有了點坐標(biāo)值(二維或者三維),要在CAD中展繪出來,怎樣才能又快又直接?不然,就只有拐彎摸角了,很痛苦?。∑鋵?,只要對Excel進(jìn)行一些挖掘,就可以發(fā)現(xiàn)Excel的功能我們還沒有好好的利用呢。Excel本身提供了強(qiáng)大的二次開發(fā)功能,只要我們仔細(xì)的研究,沒有什么能難倒我們的。下面,好好筆者將帶你走近Excel,認(rèn)識它的強(qiáng)大的二次開發(fā)環(huán)境VBAIDE,用它來解決上面所提到的問題,就非常容易了。初識VBAIDE首先,你必須懂得一些簡單的VB編程常識。如果不懂就只有通過其他的途徑去學(xué)習(xí)了。但用不著深入的研究,只要靜下心來,幾個小時就可以了。打開Excel,按Alt+F11即進(jìn)入VBAIDE,學(xué)過VB的人一看就知道那就是熟悉的VB界面。下面看看如何定義一個函數(shù),然后利用它來解決60進(jìn)制的角度的三角函數(shù)計算問題。在菜單上依次點擊[插入]->[模塊],然后輸入如下代碼PublicFunctionDEG(nAsDouble)DimAAsDouble,BAsDouble,CAsDouble,DAsDouble,EAsDouble,FAsDouble,GAsDouble,KAAsDoubleD=Abs(n)+0.000000000000001F=Sgn(n)A=Int(D)B=Int((D-A)*100)C=D-A-B/100DEG=F*(A+B/60+C/0.36)*pi/180EndFunction這樣,就定義了一個名字叫DEG的函數(shù),它的作用就是轉(zhuǎn)換60進(jìn)制的角度為Excel認(rèn)識的弧度。編輯完后按Alt+Q即返回Excel,再在某一單元格輸入=sin(deg(A1))(A1既可以是單元格的值,也可以是輸入的角度值),回車,哈哈,怎么樣?結(jié)果出來了吧?你可以用計算器檢驗一下是否正確。如果出現(xiàn)#NAME?那就要設(shè)置一下安全設(shè)置。依次點[工具]->[宏]->[安全性],在安全級選項卡上選擇“中”或者“低”,然后關(guān)閉后重新打開就可以了,以后只要是60進(jìn)制的角度,就用它轉(zhuǎn)換,非常方便哦。工程測量中,經(jīng)常碰到導(dǎo)線的計算,如果手頭沒有平差計算程序就只有手工計算了,這時候你曾經(jīng)想過編個小程序來計算?其實,這很簡單,筆者在宛坪(上海至武威)高速公路上做測量監(jiān)理,因為有大量的導(dǎo)線需要復(fù)核,故編寫了一個附合導(dǎo)線計算程序,代碼很簡單,但很實用。下面是該程序的代碼:鼠Su功b商附合導(dǎo)線計鏡算庭(索)螞Dimm弱AsInt通eger,低nAsI液nteger懶,msA穿sDoub充le,gg奏AsDo烈uble,飄shtAs巡Objec尸t,xx版AsDou怕ble,y氧yAsD煉ouble,堂SAs尊Double問Setsh瞎t=Th劍isWork引book.A弦ctiveS舒heet妖DoWhi驚lesht花.Cells拐(m+3拋,4)<銜>""烏m=m齡+1Loop英Forn亮=3To嶺m+2粱ms=D袖EG(ms)愁+DEG盯(sht.C刺ells(n悅,4))爪ms=R稠AD(ms)略S=S泥+sht.怖Cells(繳n,3)Next拉ms=D世EG(ms)檢gg=R朱AD(DEG菊(sht.C妹ells(3哲,5))孫+ms-擱DEG(s磚ht.Cel足ls(3+每m,5)阿)-pi謠*m)泛xx=0她:yy=辯0交Forn過=4To珠m+2'方位角粱sht.Ce吧lls(n,貿(mào)5)=紋RAD(DE插G(sht.顛Cells(研n-1,名5))+閥DEG(s喬ht.Cel致ls(n-練1,4)莖)-pi啊-DEG憐(gg)/耍m)'坐標(biāo)增量隨sht.Ce推lls(n,蠅6)=薯Format餡(sht.C屋ells(n蔑-1,兄3)*C夸os(DEG淘(sht.C粱ells(n鏈,5)))秩,"###工##.###疊#")涌sht.Ce恩lls(n,鹿7)=緊Format寨(sht.C們ells(n窄-1,暖3)*S獅in(DEG銜(sht.C浪ells(n吳,5)))杠,"###間##.###衫#")'坐標(biāo)增量和啟xx=x業(yè)x+sh拾t.Cell剖s(n,6舍)停yy=y畝y+sh攔t.Cell醉s(n,7弟)Next懸xx=x適x+sh晃t.Cell州s(3,1碑0)-s錘ht.Cel話ls(m+瘡2,10庫)醋yy=y過y+sh劑t.Cell衣s(3,1致1)-s岔ht.Cel葉ls(m+鐘2,11姨)盼sht.Ce脅lls(m粥+4,5前)=丘"企△估α哈="&F鬧ormat(吊gg,"#僵##.###犁###")或sht.Ce障lls(m遇+4,6蹦)=白"紅△迫X="&閥Format題(xx,"囑###.##殃#")于sht.Ce喬lls(m煌+4,7滿)=緞"使△尾Y="&傘Format月(yy,"車###.##它#")半sht.Ce逮lls(m害+4,3葬)=鏟"傷∑水S="&嗓Format捐(S,"#現(xiàn)##.###秤")委sht.Ce仆lls(m躬+4,9智)=喬"成△妖S="&邀Format均(Sqr(x梁x*xx芒+yy炮*yy),失"###.極###")冷sht.Ce敲lls(m全+4,1儉0)=橫"疼相對精妻度殘1/"&規(guī)Forma適t(S/聰Sqr(xx球*xx做+yy*輸yy),失"#####紹#")桃Forn足=4To叉m+2強(qiáng)sht.Ce女lls(n,原8)=嗽Format胳(xx/航S*sh旨t.Cell站s(n-箱1,3),踐"###.才####")秤sht.Ce銳lls(n,澡9)=辦Format謝(yy/右S*sh喚t.Cell勝s(n-濁1,3),營"###.黑####")Next闖Forn躬=4To遭m+1挖sht.Ce哄lls(n,損10)=毛sht.C毛ells(n絕-1,灰10)+藍(lán)sht.Ce僑lls(n,剩6)-售sht.Ce跌lls(n,缸8)藍(lán)sht.Ce泰lls(n,覆11)=衫sht.C趣ells(n竊-1,倦11)+靈sht.Ce溪lls(n,廳7)-勿sht.Ce仔l(wèi)ls(n,梯9)Next狗Co葛lumns(返"F:K")黎.Selec型t折Se遼lectio墻n.Numb闊erForm掏atLoca柱l="0枕.000_鑼"唱EndSu件b潮Public同F(xiàn)unct爹ionRA臣D(NuA端sDoub秋le)As潤Doubl呈e存DimA營AsDou兼ble,B傭AsDo社uble,沖CAsD建ouble,亮DAs曠Double豬,EAs所Doubl冠e,FA唐sDoub虧le,G倘AsDou圈ble,p棒AsDo豪uble及D=Ab糟s(Nu)邁F=Sg佛n(Nu)軌p=18掀0#/p模i改G=p境*60#心A=In舞t(D*快p)蹦B=In完t((D-杜A/p經(jīng))*G)W=B至C=(D街-A/槍p-B你/G)域*20.6躁264806枝2粘RAD=雪(C+A碗+B/決100)挪*F撐EndFu測nction犬值得注意的是碑,輝前睜面提到奪的疼D躁E盯G隙函數(shù)別忘記加京進(jìn)去。咽如果自己定義男一個名字森叫?!拔饔嬁退闵颉敝竦氖獍粹o掛,指定此工具牌的宏舊為慈“國單一附合導(dǎo)線彼計刻算擦”月,那么,只要稻按下面的格式集輸入原始數(shù)據(jù)睛(斜體是輸入眾的)景,細(xì)點毅“佛計箭算米”再就可以得到計汪算結(jié)果了。所稅有的過程都是屑自動的,無須枯再釘手工填寫,述是不是很代方便品?霜下面我們就來斬解決上面提到缺的怪與訂CA狹D鐮的連接和通訊傻問題。載進(jìn)警入巷VBAID猴E擦,黃按晝[煙工玩具百]->視[慈引籃用菠]偵,搞找到欣可使用的引用易,繳在崇“甲AutoCA反D200集0渣類型傻庫近”點的左邊打鉤,如點確定就行了程。錫在模塊中輸入權(quán)以下代碼:武Global崇Sheet券AsOb腥ject,地acadmt否extAs上acadm階text,超fontHi侍ghtAs牙Doubl輩e筆Globa剃lxlBo保okAs濃Excel虛.Workb鉛ook濤Global傷p0(2)頑AsDo壤uble,頑p1(2)荒AsDou餓ble,p銜2(2)A掉sDoub浮le畏Global魯acadA采ppAs幻AcadAp棄plicat朝ion衣Global唇acadD秤ocAs堵AcadDo完cument段Global叨acadP撈ointA夸sacad緣Point亡Globa聰lnumb啦erAs懲Intege躍r扶Publi胡cType許pt嫂nAs紙Intege遇r鏈pt(2)莫AsDo休uble強(qiáng)Global狼pt()裁Aspt抬Globa述ltext鉛1AsA歐cadTex逗t勤Glo波balCA有DAsO怎bject蓄Glo蝶balp(誘2)As丟Double誤,iAs鋪Integ貫er,j賽AsInt鼠eger塌闊Global逗hAs癥Intege批r,lA禁sInte沖ger與Public既Funct奧ionGe鋒t_ACAD饑(DwtA在sStri脆ng)As急Boole根an乒DimY蝦ERAs護(hù)Intege說r濃On捐Error其Resum爬eNext躬Se敵tacad械A(chǔ)pp=款GetObj蹦ect(,聯(lián)"AutoC餃AD.App妖licati偉on")揪If致ErrT趟hen隱橡Err.逢Clear舅考Set旦acadAp彈p=Cr庫eateOb須ject("磨AutoCA添D.Appl貼icatio葵n")甘遮IfE蠢rrThe蛛n嘩桑沈MsgBox登Err.D咽escrip蜓tion惜頓舊OnErr環(huán)orGoT忘o0志楚蝦Get_AC施AD=F精alse戚耐桌ExitF侄unctio蔥n些脊End屑If體En扔dIf腰On飽Error劫GoTo閘0耍Setac脾adDoc穿=acad維App.Ac搭tiveDo農(nóng)cument畏ac豎adApp.踢Visibl響e=Tr惜ue勞Ge吊t_ACAD沿=Tru輕e源Di扮mtype床FaceA蛋sStri起ng皆Di炒mBold降A(chǔ)sBo禮olean墳Di倆mItal謙icAs樸Boolea侍n嗽Di認(rèn)mchar申SetAs衫Long辯Di負(fù)mPitc繳handFa炒milyA興sLong考ac鬼adDoc.保Active考TextSt看yle.Ge伴tFont杠typeFa燥ce,Bo芒ld,It視alic,訴charSe昨t,Pit底chandF浪amily投acadDo神c.Acti誕veText周Style.津SetFon你t別"臭宋梢體朵",Bol啟d,Ita羅lic,c趁harSet森,Pitc重handFa乞mily郵EndFu淘nction番Sub徒顯示對話框葡(劑)千Form1.稅Show(屈0)蟻EndSu系b河Public姑Funct月ionDr黎aw_Poi歌nt(Poi盤nt()A僑sDoub具le)As礙acadP邁oint望Se錘tDraw中_Point扭=aca欺dDoc.M箱odelSp短ace.Ad罩dPoint俯(Point座)漁Dr斤aw_Poi培nt.Upd鹽ate市EndFu照nction婚Public薄SubS本et_lay池er(sA侮sStri鴿ng)坐Di糞mlaye屯rObjA牌sAcad嘆Layer筒Se式tlaye委rObj=艱acadD倦oc.Lay舉ers.Ad遣d(s)今ac宰adDoc.燕Active度Layer愛=laye訊rObj葬EndSu好b健再按以下模式皇做個對話框:犧窗體的釋名字就南叫纏“恰Form1亞”洗雙蜂擊春“暢展點楚”威按鈕,輸入以設(shè)下代碼:婦Dimp0純(2)As作Doubl竿e,p1(妻2)As胞Double壓,p2(2惹)AsD刊ouble那DimT1鑒AsDo至uble,慌T2As謊Double橋,T3A男sDoub準(zhǔn)le,T4克AsDo盞uble磁Public依neAs悄Integ千er,sp壺AsSi靜ngle,退czAs狼Single勉CallG額et_ACA姐D("")叢Dimtx杠tAsA征cadTex綿t恰Dimla洪AsAc訪adLaye胡r躲ForEa蛇chLay克erIn碌acadDo棄c.Mode擺lSpaceNext午CallS財et_lay器er("zd原h(huán)")噸SetSh盯eet=鈔ThisWo假rkbook艙.Activ垮eSheet如Dimi喬AsInt藏eger臣DoWhi先leShe沫et.Cel摸ls(i+銷1,3)菜<>""畫OrSh渣eet.Ce恐lls(i薯+1,1魂)<>"圾"鞏IfShe授et.Cel宜ls(i+黃1,3)婦=""坦OrShe替et.Cel摔ls(i+子1,4)恩=""妨ThenG繪oToII糟WithS錦heet霜p1(0)列=.Cel系ls(i+殖1,3)奇.Value職p1(1)淚=.Cel蹲ls(i+靈1,4)記.Value也p1(2)腹=.Cel中l(wèi)s(i+野1,5)稠.Value粒EndWi田th務(wù)p(0)=趕p1(0)罩p(1)=縫p1(1)抬CallS省et_lay絲er("ZD擔(dān)H")獅CallD踏raw_Po袍int(p1哈)屬fontH梳ight=嫂TextB全ox5.Va略lue爪IfCel詢ls(i+笨1,2)爛=""譽(yù)ThenG壤oTooo皮Settx桑t=ac鉗adDoc.闖ModelS駕pace.A獵ddText形(Cells有(i+1蔑,2),濾p,fon蠶tHight湖)五txt.Co記lor=贈acMage元ntaoo:碼IfCel拾l(fā)s(i+俊1,5)毯=""鋤ThenG剝oToII音Set_la盛yer("炭GCD")糧p(1)=軍p1(1)個-fon水tHight摟Settx辰t=ac密a
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物學(xué)科實驗操作經(jīng)驗交流計劃
- 畫出童年小班藝術(shù)表現(xiàn)計劃
- 優(yōu)化流程的年度工作框架計劃
- 班級心理素質(zhì)提升活動的案例分享計劃
- 2025年中國新型建材行業(yè)市場競爭格局及投資方向研究報告(智研咨詢)
- 2025年鐵紅項目建議書
- 2025年系列自動遙測氣象站項目合作計劃書
- 汽車零件互換性規(guī)則設(shè)定
- 構(gòu)建穩(wěn)定可靠的數(shù)據(jù)庫同步體系
- 三國演義的英雄氣概讀后感
- 發(fā)展?jié)h語 初級讀寫一 第二課 謝謝你
- 部編版六年級語文下冊第一單元大單元教學(xué)任務(wù)單
- 人教版小學(xué)語文1-6年級背誦內(nèi)容完整版
- 2023徐金桂“徐徐道來”(行政法知識點)版
- 《事故汽車常用零部件修復(fù)與更換判別規(guī)范》
- 2024-2030年中國酒類流通行業(yè)發(fā)展動態(tài)及投資盈利預(yù)測研究報告
- 物業(yè)管理如何實現(xiàn)降本增效
- DL-T825-2021電能計量裝置安裝接線規(guī)則
- 信息科技重大版 七年級下冊 互聯(lián)網(wǎng)應(yīng)用與創(chuàng)新 第一單元單元教學(xué)設(shè)計 互聯(lián)網(wǎng)創(chuàng)新應(yīng)用
- 2024年興業(yè)銀行股份有限公司校園招聘考試試題及參考答案
- 2024智慧城市城市交通基礎(chǔ)設(shè)施智能監(jiān)測技術(shù)要求
評論
0/150
提交評論