版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
ExcelVBA在工程測(cè)量上的應(yīng)用Excel是大家很熟悉的辦公軟件,相信大家在工作中經(jīng)常使用吧。在測(cè)量工作中,你是否感覺(jué)到有很不方便的時(shí)候?比如,計(jì)算一個(gè)角度的三角函數(shù)值,而角度的單位是60進(jìn)制的,此時(shí),你一定感到很無(wú)奈,因?yàn)?,Excel本身無(wú)法直接計(jì)算60進(jìn)制的角度的三角函數(shù)!還有,如果你的工作表中有了點(diǎn)坐標(biāo)值(二維或者三維),要在CAD中展繪出來(lái),怎樣才能又快又直接?不然,就只有拐彎摸角了,很痛苦?。∑鋵?shí),只要對(duì)Excel進(jìn)行一些挖掘,就可以發(fā)現(xiàn)Excel的功能我們還沒(méi)有好好的利用呢。Excel本身提供了強(qiáng)大的二次開發(fā)功能,只要我們仔細(xì)的研究,沒(méi)有什么能難倒我們的。下面,好好筆者將帶你走近Excel,認(rèn)識(shí)它的強(qiáng)大的二次開發(fā)環(huán)境VBAIDE,用它來(lái)解決上面所提到的問(wèn)題,就非常容易了。初識(shí)VBAIDE首先,你必須懂得一些簡(jiǎn)單的VB編程常識(shí)。如果不懂就只有通過(guò)其他的途徑去學(xué)習(xí)了。但用不著深入的研究,只要靜下心來(lái),幾個(gè)小時(shí)就可以了。打開Excel,按Alt+F11即進(jìn)入VBAIDE,學(xué)過(guò)VB的人一看就知道那就是熟悉的VB界面。下面看看如何定義一個(gè)函數(shù),然后利用它來(lái)解決60進(jìn)制的角度的三角函數(shù)計(jì)算問(wèn)題。在菜單上依次點(diǎn)擊[插入]->[模塊],然后輸入如下代碼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這樣,就定義了一個(gè)名字叫DEG的函數(shù),它的作用就是轉(zhuǎn)換60進(jìn)制的角度為Excel認(rèn)識(shí)的弧度。編輯完后按Alt+Q即返回Excel,再在某一單元格輸入=sin(deg(A1))(A1既可以是單元格的值,也可以是輸入的角度值),回車,哈哈,怎么樣?結(jié)果出來(lái)了吧?你可以用計(jì)算器檢驗(yàn)一下是否正確。如果出現(xiàn)#NAME?那就要設(shè)置一下安全設(shè)置。依次點(diǎn)[工具]->[宏]->[安全性],在安全級(jí)選項(xiàng)卡上選擇“中”或者“低”,然后關(guān)閉后重新打開就可以了,以后只要是60進(jìn)制的角度,就用它轉(zhuǎn)換,非常方便哦。工程測(cè)量中,經(jīng)常碰到導(dǎo)線的計(jì)算,如果手頭沒(méi)有平差計(jì)算程序就只有手工計(jì)算了,這時(shí)候你曾經(jīng)想過(guò)編個(gè)小程序來(lái)計(jì)算?其實(shí),這很簡(jiǎn)單,筆者在宛坪(上海至武威)高速公路上做測(cè)量監(jiān)理,因?yàn)橛写罅康膶?dǎo)線需要復(fù)核,故編寫了一個(gè)附合導(dǎo)線計(jì)算程序,代碼很簡(jiǎn)單,但很實(shí)用。下面是該程序的代碼:鼠Su功b商附合導(dǎo)線計(jì)鏡算庭(索)螞Dimm弱AsInt通eger,低nAsI液nteger懶,msA穿sDoub充le,gg奏AsDo烈uble,飄shtAs巡Objec尸t,xx版AsDou怕ble,y氧yAsD煉ouble,堂SAs尊Double問(wèn)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過(guò)=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庫(kù))醋yy=y過(guò)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)=橫"疼相對(duì)精妻度殘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),營(yíng)"###.黑####")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潤(rùn)Doubl呈e存DimA營(yíng)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測(cè)nction犬值得注意的是碑,輝前睜面提到奪的疼D躁E盯G隙函數(shù)別忘記加京進(jìn)去。咽如果自己定義男一個(gè)名字森叫?!拔饔?jì)客算沈”竹的殊按鈕掛,指定此工具牌的宏舊為慈“國(guó)單一附合導(dǎo)線彼計(jì)刻算擦”月,那么,只要稻按下面的格式集輸入原始數(shù)據(jù)睛(斜體是輸入眾的)景,細(xì)點(diǎn)毅“佛計(jì)箭算米”再就可以得到計(jì)汪算結(jié)果了。所稅有的過(guò)程都是屑自動(dòng)的,無(wú)須枯再釘手工填寫,述是不是很代方便品?霜下面我們就來(lái)斬解決上面提到缺的怪與訂CA狹D鐮的連接和通訊傻問(wèn)題。載進(jìn)警入巷VBAID猴E擦,黃按晝[煙工玩具百]->視[慈引籃用菠]偵,搞找到欣可使用的引用易,繳在崇“甲AutoCA反D200集0渣類型傻庫(kù)近”點(diǎn)的左邊打鉤,如點(diǎn)確定就行了程。錫在模塊中輸入權(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說(shuō)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庫(kù)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徒顯示對(duì)話框葡(劑)千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愛(ài)=laye訊rObj葬EndSu好b健再按以下模式皇做個(gè)對(duì)話框:犧窗體的釋名字就南叫纏“恰Form1亞”洗雙蜂擊春“暢展點(diǎn)楚”威按鈕,輸入以設(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財(cái)et_lay器er("zd原h(huán)")噸SetSh盯eet=鈔ThisWo假rkbook艙.Activ垮e(cuò)Sheet如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=贈(zèng)acMage元ntaoo:碼IfCel拾l(fā)s(i+俊1,5)毯=""鋤ThenG剝oToII音Set_la盛yer("炭GCD")糧p(1)=軍p1(1)個(gè)-fon水tHight摟Settx辰t=ac密a
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版班班通設(shè)備與物聯(lián)網(wǎng)結(jié)合合同2篇
- 二零二五年綠色生態(tài)住宅小區(qū)消防工程設(shè)計(jì)與施工合同3篇
- 二零二五版股份制企業(yè)股份自愿轉(zhuǎn)讓與投資者關(guān)系維護(hù)合同3篇
- 二零二五年度監(jiān)理合同延期補(bǔ)充協(xié)議-責(zé)任劃分與風(fēng)險(xiǎn)承擔(dān)3篇
- 二零二五版中央空調(diào)清洗保養(yǎng)及能耗管理服務(wù)合同3篇
- 二零二五年度國(guó)有資產(chǎn)管理委托服務(wù)合同2篇
- 二零二五版股票質(zhì)押擔(dān)保合同范本編制與解析3篇
- 二零二五年度風(fēng)力發(fā)電項(xiàng)目融資合同2篇
- 二零二五年美發(fā)師國(guó)際交流聘用合同2篇
- 二零二五年度酒店地毯翻新與維護(hù)服務(wù)合同范本3篇
- 五年級(jí)上冊(cè)小數(shù)乘除豎式計(jì)算題200道及答案
- 2024年?yáng)|南亞工業(yè)氣瓶市場(chǎng)深度研究及預(yù)測(cè)報(bào)告
- 棉花良種選育與遺傳育種
- 簡(jiǎn)易勞務(wù)承包合同范本
- SH/T 3078-2024 立式圓筒形料倉(cāng)工程設(shè)計(jì)規(guī)范(正式版)
- 快遞驛站承包協(xié)議書
- 基于視覺(jué)果蔬識(shí)別的稱重系統(tǒng)設(shè)計(jì)
- 體育初中學(xué)生學(xué)情分析總結(jié)報(bào)告
- 部編版語(yǔ)文中考必背文言文7-9年級(jí)
- 農(nóng)藥合成研發(fā)項(xiàng)目流程
- 國(guó)家職業(yè)技術(shù)技能標(biāo)準(zhǔn) 4-04-04-02 網(wǎng)絡(luò)與信息安全管理員(數(shù)據(jù)安全管理員)S 2024年版
評(píng)論
0/150
提交評(píng)論