亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦 > 論文大全 > 學(xué)科論文 > 計(jì)算機(jī)論文 > 淺談基于Excel的道路工程計(jì)算技術(shù)論文

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

      時(shí)間: 謝樺657 分享

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

        道路工程是從事道路的規(guī)劃、勘測(cè)、設(shè)計(jì)、施工、養(yǎng)護(hù)等的一門應(yīng)用科學(xué)和技術(shù)。是土木工程的一個(gè)分支。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于Excel 的道路工程計(jì)算技術(shù)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

        淺談基于Excel 的道路工程計(jì)算技術(shù)全文如下:

        道路工程的施工現(xiàn)場(chǎng)數(shù)據(jù)(施工放樣、數(shù)量計(jì)算等)采用手工計(jì)算(各種計(jì)算器)具有直觀好理解的有點(diǎn),缺點(diǎn)是易出錯(cuò)、效率低。用傳統(tǒng)的編程方法(VB、VC 等)優(yōu)點(diǎn)是計(jì)算準(zhǔn)確、效率高,缺點(diǎn)是需要編制專用的程序,需要專業(yè)人員有很好的編程能力,使用者需要一定的培訓(xùn)?;诖耍隕xcel 進(jìn)行相應(yīng)計(jì)算,數(shù)據(jù)的輸入輸出(均在Excel 界面)變得十分直觀、高效,計(jì)算過(guò)程可以采用插入函數(shù)計(jì)算等,在廣大工程人員中有了廣泛應(yīng)用;但是,仔細(xì)分析尚有如下不足:

       ?、贁?shù)據(jù)的輸入、輸出在一個(gè)界面,操作時(shí)宜相互干擾,宜造成原始數(shù)據(jù)易改動(dòng),數(shù)據(jù)量大時(shí),操作界面數(shù)據(jù)類型多、混亂;

       ?、趯?duì)自定義函數(shù)應(yīng)用較少,所定義的公式過(guò)于簡(jiǎn)單、缺乏可維護(hù)性;

       ?、垡?yàn)槿狈?duì)高級(jí)函數(shù)的應(yīng)用,數(shù)據(jù)引用處于較低水平,方法不易分工協(xié)作;

       ?、苷J(rèn)為VBA 就是編程,多數(shù)人退避三舍,造成批量數(shù)據(jù)計(jì)算手工操作過(guò)多,效率低、強(qiáng)度高。

        下面以常見的已知導(dǎo)線點(diǎn)坐標(biāo)、已知中樁坐標(biāo),按指定導(dǎo)線點(diǎn)為測(cè)站和后視點(diǎn)計(jì)算極坐標(biāo)放樣數(shù)據(jù)的excel 過(guò)程來(lái)展示基于數(shù)據(jù)管理、檢索、批量數(shù)據(jù)處理系統(tǒng)過(guò)程、高級(jí)函數(shù)、自定義函數(shù)和VBA 程序。

        1 界面設(shè)計(jì)

        “導(dǎo)線點(diǎn)”表單、“中樁坐標(biāo)”表單向“總控界面”表單提供數(shù)據(jù)檢索和關(guān)聯(lián)的原始數(shù)據(jù),總控界面計(jì)算單個(gè)放樣數(shù)據(jù)、同時(shí)可以批量計(jì)算數(shù)據(jù)填寫于“批量計(jì)算”表單。

        總控界面可以自動(dòng)檢索“導(dǎo)線點(diǎn)”表單導(dǎo)線點(diǎn)個(gè)數(shù)、“中樁坐標(biāo)”表單中樁個(gè)數(shù),測(cè)站、后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁(樁號(hào))均采用下拉列表選擇,相應(yīng)的坐標(biāo)(X,Y)自動(dòng)檢索后填充于表格,這樣可以防止數(shù)據(jù)出錯(cuò)、同時(shí)方便數(shù)據(jù)分類管理。

        2 關(guān)鍵技術(shù)

        以下主要討論:?jiǎn)蝹€(gè)數(shù)據(jù)防止出錯(cuò),需要檢索;批量數(shù)據(jù)處理需要VBA 對(duì)單元格調(diào)用。

        2.1 高級(jí)內(nèi)置函數(shù)應(yīng)用:數(shù)據(jù)管理、數(shù)據(jù)聯(lián)動(dòng)檢索使用

        2.1.1 VLOOKUP 函數(shù)

        本文基于office 2013 版本寫作(其他版本的office可供參考)。該函數(shù)的主要功能:按著查找目標(biāo)把其他表單對(duì)應(yīng)值返回當(dāng)前單元格—把具有相同查找目標(biāo)的值從其他表單返回當(dāng)前表單指定位置。 “主控界面”(B9 即第2 列第9 行)下拉列表找到單個(gè)中樁的樁號(hào)(K115+500),則后面兩列(C9、D9)中通過(guò)該函數(shù)自動(dòng)檢索到“中樁坐標(biāo)”表單對(duì)應(yīng)的X、Y 值(4038008.989、531541.360)。

        VLOOKUP 函數(shù)的調(diào)用格式VLOOKUP 函數(shù)的調(diào)用基本格式為:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

        VLOOKUP 函數(shù)的進(jìn)一步說(shuō)明,VLOOKUP (查找目標(biāo),查找范圍,返回值的列數(shù),精確OR 模糊查找):

        查找目標(biāo):VLOOKUP (B10, 中樁坐標(biāo)! $A

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

        道路工程是從事道路的規(guī)劃、勘測(cè)、設(shè)計(jì)、施工、養(yǎng)護(hù)等的一門應(yīng)用科學(xué)和技術(shù)。是土木工程的一個(gè)分支。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于Excel 的道路工程計(jì)算技術(shù)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

        淺談基于Excel 的道路工程計(jì)算技術(shù)全文如下:

        道路工程的施工現(xiàn)場(chǎng)數(shù)據(jù)(施工放樣、數(shù)量計(jì)算等)采用手工計(jì)算(各種計(jì)算器)具有直觀好理解的有點(diǎn),缺點(diǎn)是易出錯(cuò)、效率低。用傳統(tǒng)的編程方法(VB、VC 等)優(yōu)點(diǎn)是計(jì)算準(zhǔn)確、效率高,缺點(diǎn)是需要編制專用的程序,需要專業(yè)人員有很好的編程能力,使用者需要一定的培訓(xùn)。基于此,引入Excel 進(jìn)行相應(yīng)計(jì)算,數(shù)據(jù)的輸入輸出(均在Excel 界面)變得十分直觀、高效,計(jì)算過(guò)程可以采用插入函數(shù)計(jì)算等,在廣大工程人員中有了廣泛應(yīng)用;但是,仔細(xì)分析尚有如下不足:

        ①數(shù)據(jù)的輸入、輸出在一個(gè)界面,操作時(shí)宜相互干擾,宜造成原始數(shù)據(jù)易改動(dòng),數(shù)據(jù)量大時(shí),操作界面數(shù)據(jù)類型多、混亂;

       ?、趯?duì)自定義函數(shù)應(yīng)用較少,所定義的公式過(guò)于簡(jiǎn)單、缺乏可維護(hù)性;

        ③因?yàn)槿狈?duì)高級(jí)函數(shù)的應(yīng)用,數(shù)據(jù)引用處于較低水平,方法不易分工協(xié)作;

       ?、苷J(rèn)為VBA 就是編程,多數(shù)人退避三舍,造成批量數(shù)據(jù)計(jì)算手工操作過(guò)多,效率低、強(qiáng)度高。

        下面以常見的已知導(dǎo)線點(diǎn)坐標(biāo)、已知中樁坐標(biāo),按指定導(dǎo)線點(diǎn)為測(cè)站和后視點(diǎn)計(jì)算極坐標(biāo)放樣數(shù)據(jù)的excel 過(guò)程來(lái)展示基于數(shù)據(jù)管理、檢索、批量數(shù)據(jù)處理系統(tǒng)過(guò)程、高級(jí)函數(shù)、自定義函數(shù)和VBA 程序。

        1 界面設(shè)計(jì)

        “導(dǎo)線點(diǎn)”表單、“中樁坐標(biāo)”表單向“總控界面”表單提供數(shù)據(jù)檢索和關(guān)聯(lián)的原始數(shù)據(jù),總控界面計(jì)算單個(gè)放樣數(shù)據(jù)、同時(shí)可以批量計(jì)算數(shù)據(jù)填寫于“批量計(jì)算”表單。

        總控界面可以自動(dòng)檢索“導(dǎo)線點(diǎn)”表單導(dǎo)線點(diǎn)個(gè)數(shù)、“中樁坐標(biāo)”表單中樁個(gè)數(shù),測(cè)站、后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁(樁號(hào))均采用下拉列表選擇,相應(yīng)的坐標(biāo)(X,Y)自動(dòng)檢索后填充于表格,這樣可以防止數(shù)據(jù)出錯(cuò)、同時(shí)方便數(shù)據(jù)分類管理。

        2 關(guān)鍵技術(shù)

        以下主要討論:?jiǎn)蝹€(gè)數(shù)據(jù)防止出錯(cuò),需要檢索;批量數(shù)據(jù)處理需要VBA 對(duì)單元格調(diào)用。

        2.1 高級(jí)內(nèi)置函數(shù)應(yīng)用:數(shù)據(jù)管理、數(shù)據(jù)聯(lián)動(dòng)檢索使用

        2.1.1 VLOOKUP 函數(shù)

        本文基于office 2013 版本寫作(其他版本的office可供參考)。該函數(shù)的主要功能:按著查找目標(biāo)把其他表單對(duì)應(yīng)值返回當(dāng)前單元格—把具有相同查找目標(biāo)的值從其他表單返回當(dāng)前表單指定位置。 “主控界面”(B9 即第2 列第9 行)下拉列表找到單個(gè)中樁的樁號(hào)(K115+500),則后面兩列(C9、D9)中通過(guò)該函數(shù)自動(dòng)檢索到“中樁坐標(biāo)”表單對(duì)應(yīng)的X、Y 值(4038008.989、531541.360)。

        VLOOKUP 函數(shù)的調(diào)用格式VLOOKUP 函數(shù)的調(diào)用基本格式為:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

        VLOOKUP 函數(shù)的進(jìn)一步說(shuō)明,VLOOKUP (查找目標(biāo),查找范圍,返回值的列數(shù),精確OR 模糊查找):

        查找目標(biāo):VLOOKUP (B10, 中樁坐標(biāo)! $A$2: $C$999999,2,FALSE)中的第一個(gè)參數(shù)—“B10”,即中樁樁號(hào),當(dāng)前為“ZK115+500”。

        查找范圍:VLOOKUP (B10, 中樁坐標(biāo)! $A $2: $C$999999,2,FALSE)中的第二個(gè)參數(shù)—“中樁坐標(biāo)! $A$2:$C$999999”,即 “中樁坐標(biāo)”表單的A~C 列1-999999 行的區(qū)域,999999—是區(qū)域的行數(shù),可以根據(jù)需要進(jìn)行相應(yīng)變化。

        需要特別注意的是:查找目標(biāo)(樁號(hào)列)一定要在該區(qū)域的第一列;該區(qū)域中一定要包含要返回值所在的列,本例中要返回的值是X。

        返回值的列數(shù):VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,FALSE)中的第3 個(gè)參數(shù)—“2”,它是一個(gè)整數(shù)值。它是“返回值”在第二個(gè)參數(shù)給定的區(qū)域中的列數(shù)。

        本例中我們要返回的是“X”,它是第二個(gè)參數(shù)查找范圍“中樁坐標(biāo)! $A$2:$C$999999”的第2 列。這里一定要注意,列數(shù)不是在工作表中的列數(shù),而是在查找范圍區(qū)域的第幾列。

        精確OR 模糊查找:VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,F(xiàn)ALSE)中最后一個(gè)參數(shù)—“FALSE”,是決定函數(shù)精確和模糊查找的關(guān)鍵。精確即完全一樣,模糊即包含的意思。第4 個(gè)參數(shù)如果指定值是0 或FALSE 就表示精確查找,而值為1 或TRUE 時(shí)則表示模糊。

        2.1.2 excel 單元格下拉列表的建立

        excel 單元格下拉列表的建立流程(以excel2013 為例):

        數(shù)據(jù)驗(yàn)證→數(shù)據(jù)驗(yàn)證→設(shè)置→序列→來(lái)源→選定所需表單對(duì)應(yīng)的列。

        以設(shè)置導(dǎo)線點(diǎn)的測(cè)站為例(后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁也需要類似設(shè)置),需要選擇導(dǎo)線點(diǎn)表單的第一列數(shù)據(jù)。

        2.2 自定義函數(shù):數(shù)據(jù)格式、方位角計(jì)算函數(shù)統(tǒng)一的全局常量定義,所有模塊均用到此常量,這樣其他模塊均可以用到常量Pi 的值。原代碼如下:

        Public Const pi = 3.1415926

        2.2.1 數(shù)據(jù)格式函數(shù)

        radtodms(rad)函數(shù)功能:把弧度轉(zhuǎn)變?yōu)槎确置耄?、分均為整?shù),秒為保留一位小數(shù)的數(shù)值。rad 為參數(shù),radtodms 為函數(shù),源代碼如下:

        Function radtodms(rad)

        degree = rad * 180 / pi

        d = Int(degree)

        f = Int((degree - d) * 60)

        s = Int(((degree - d - f / 60) * 3600) * 10) / 10

        radtodms = Str$(d) + "°" + LTrim(Str$(f)) + "′" +

        LTrim(Str$(s)) + "″"

        End Function

        2.2.2 方位角計(jì)算函數(shù)

        fwj(dx, dy)函數(shù),dx、dy 分別為某點(diǎn)相對(duì)于測(cè)站的X、Y 的坐標(biāo)增量;fwj 為對(duì)應(yīng)于dx、dy 的方位角,方位角計(jì)算結(jié)果單位為弧度。dx=0 時(shí),需要單獨(dú)討論。

        Function fwj(dx, dy)

        If dx = 0 Then

        If dy = 0 Then fwj = "出錯(cuò)!"

        If dy > 0 Then fwj = pi / 2

        If dy < 0 Then fwj = pi * 3 / 2

        Else

        xxj = Atn(Abs(dy / dx))

        If dx >= 0 And dy > 0 Then fwj = xxj

        If dx <= 0 And dy > 0 Then fwj = pi - xxj

        If dx <= 0 And dy < 0 Then fwj = pi + xxj

        If dx >= 0 And dy < 0 Then fwj = 2 * pi - xxj

        End If

        End Function

        2.2.3 夾角計(jì)算

        當(dāng)放樣采用極坐標(biāo)夾角方式時(shí),后視方向的坐標(biāo)增量為dtx, dty,中樁方向的坐標(biāo)增量為dx, dy,jiajiao 為計(jì)算結(jié)果,是中樁方向方位角與后視方向方位角的差。

        Function jiajiao(dx, dy, dtx, dty)

        ' 計(jì)算后視方向

        hs = fwj(dtx, dty)

        ' 計(jì)算單個(gè)中樁夾角

        jiajiao = fwj(dx, dy) - hs

        If jiajiao < 0 Then jiajiao = jiajiao + 2 * pi

        If jiajiao > 2 * pi Then jiajiao = jiajiao - 2 * pi

        End Function

        2.3 VBA程序開發(fā)——批量計(jì)算數(shù)據(jù)

        計(jì)算后視方位角,確定計(jì)算范圍,表頭填寫,逐樁方位角計(jì)算、距離計(jì)算、夾角計(jì)算,數(shù)據(jù)回填表格。

        核心技術(shù)是表格的引用。以源代碼中的第五行為例,“Worksheets("主控界面").Cells(4,3)”其他的引用可以參照此。既可以從單元格提取信息(一般提取信息為文本,必要時(shí)需要通過(guò)VAL 函數(shù)轉(zhuǎn)變?yōu)閿?shù)值才能參加計(jì)算)也可以單元格寫入信息。源代碼略。

        3 運(yùn)行過(guò)程

        運(yùn)行總體步驟如下:

        第一步:輸入原始數(shù)據(jù)表單并校核;

        第二步:利用下拉列表選擇測(cè)站點(diǎn)編號(hào)、后視點(diǎn)編號(hào)、單個(gè)中樁樁號(hào),此時(shí)excel 自動(dòng)計(jì)算該中樁對(duì)應(yīng)的極坐標(biāo)放樣數(shù)據(jù)—方位角和距離等;

        第三步:選定開始樁號(hào)、結(jié)束樁號(hào),批量計(jì)算放樣數(shù)據(jù)按鈕。

        4 結(jié)論

        本文通過(guò)創(chuàng)建excel 模板文件解決的問(wèn)題如下:

       ?、賳蝹€(gè)數(shù)據(jù)計(jì)算為了防止輸入錯(cuò)誤采用了下拉列表與Vlookup 函數(shù)組合的方式;

        ②為了完成單個(gè)數(shù)據(jù)的計(jì)算、格式化自定義了若干函數(shù)并予以引用舉例;

       ?、蹫榱送瓿膳繑?shù)據(jù)計(jì)算編制了VBA 程序。

        對(duì)于道路工程施工數(shù)據(jù)數(shù)據(jù)計(jì)算過(guò)程具有高效、防錯(cuò)等作用。本計(jì)算思路不但可以用于施工計(jì)算,也可以用于設(shè)計(jì)計(jì)算。
       

      相關(guān)文章:

      1.淺談公路工程中的成本管理與成本控制論文

      2.淺談技術(shù)與人文論文

      3.淺談信息技術(shù)與學(xué)科課程的整合論文

      4.淺談高中政治調(diào)研型作業(yè)的設(shè)置論文

      5.用Excel進(jìn)行分步成本核算論文

      6.淺談數(shù)字媒體技術(shù)與數(shù)字媒體藝術(shù)的融合論文

      : $C9999,2,FALSE)中的第一個(gè)參數(shù)—“B10”,即中樁樁號(hào),當(dāng)前為“ZK115+500”。

        查找范圍:VLOOKUP (B10, 中樁坐標(biāo)! $A

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

        道路工程是從事道路的規(guī)劃、勘測(cè)、設(shè)計(jì)、施工、養(yǎng)護(hù)等的一門應(yīng)用科學(xué)和技術(shù)。是土木工程的一個(gè)分支。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于Excel 的道路工程計(jì)算技術(shù)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

        淺談基于Excel 的道路工程計(jì)算技術(shù)全文如下:

        道路工程的施工現(xiàn)場(chǎng)數(shù)據(jù)(施工放樣、數(shù)量計(jì)算等)采用手工計(jì)算(各種計(jì)算器)具有直觀好理解的有點(diǎn),缺點(diǎn)是易出錯(cuò)、效率低。用傳統(tǒng)的編程方法(VB、VC 等)優(yōu)點(diǎn)是計(jì)算準(zhǔn)確、效率高,缺點(diǎn)是需要編制專用的程序,需要專業(yè)人員有很好的編程能力,使用者需要一定的培訓(xùn)。基于此,引入Excel 進(jìn)行相應(yīng)計(jì)算,數(shù)據(jù)的輸入輸出(均在Excel 界面)變得十分直觀、高效,計(jì)算過(guò)程可以采用插入函數(shù)計(jì)算等,在廣大工程人員中有了廣泛應(yīng)用;但是,仔細(xì)分析尚有如下不足:

       ?、贁?shù)據(jù)的輸入、輸出在一個(gè)界面,操作時(shí)宜相互干擾,宜造成原始數(shù)據(jù)易改動(dòng),數(shù)據(jù)量大時(shí),操作界面數(shù)據(jù)類型多、混亂;

       ?、趯?duì)自定義函數(shù)應(yīng)用較少,所定義的公式過(guò)于簡(jiǎn)單、缺乏可維護(hù)性;

        ③因?yàn)槿狈?duì)高級(jí)函數(shù)的應(yīng)用,數(shù)據(jù)引用處于較低水平,方法不易分工協(xié)作;

       ?、苷J(rèn)為VBA 就是編程,多數(shù)人退避三舍,造成批量數(shù)據(jù)計(jì)算手工操作過(guò)多,效率低、強(qiáng)度高。

        下面以常見的已知導(dǎo)線點(diǎn)坐標(biāo)、已知中樁坐標(biāo),按指定導(dǎo)線點(diǎn)為測(cè)站和后視點(diǎn)計(jì)算極坐標(biāo)放樣數(shù)據(jù)的excel 過(guò)程來(lái)展示基于數(shù)據(jù)管理、檢索、批量數(shù)據(jù)處理系統(tǒng)過(guò)程、高級(jí)函數(shù)、自定義函數(shù)和VBA 程序。

        1 界面設(shè)計(jì)

        “導(dǎo)線點(diǎn)”表單、“中樁坐標(biāo)”表單向“總控界面”表單提供數(shù)據(jù)檢索和關(guān)聯(lián)的原始數(shù)據(jù),總控界面計(jì)算單個(gè)放樣數(shù)據(jù)、同時(shí)可以批量計(jì)算數(shù)據(jù)填寫于“批量計(jì)算”表單。

        總控界面可以自動(dòng)檢索“導(dǎo)線點(diǎn)”表單導(dǎo)線點(diǎn)個(gè)數(shù)、“中樁坐標(biāo)”表單中樁個(gè)數(shù),測(cè)站、后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁(樁號(hào))均采用下拉列表選擇,相應(yīng)的坐標(biāo)(X,Y)自動(dòng)檢索后填充于表格,這樣可以防止數(shù)據(jù)出錯(cuò)、同時(shí)方便數(shù)據(jù)分類管理。

        2 關(guān)鍵技術(shù)

        以下主要討論:?jiǎn)蝹€(gè)數(shù)據(jù)防止出錯(cuò),需要檢索;批量數(shù)據(jù)處理需要VBA 對(duì)單元格調(diào)用。

        2.1 高級(jí)內(nèi)置函數(shù)應(yīng)用:數(shù)據(jù)管理、數(shù)據(jù)聯(lián)動(dòng)檢索使用

        2.1.1 VLOOKUP 函數(shù)

        本文基于office 2013 版本寫作(其他版本的office可供參考)。該函數(shù)的主要功能:按著查找目標(biāo)把其他表單對(duì)應(yīng)值返回當(dāng)前單元格—把具有相同查找目標(biāo)的值從其他表單返回當(dāng)前表單指定位置。 “主控界面”(B9 即第2 列第9 行)下拉列表找到單個(gè)中樁的樁號(hào)(K115+500),則后面兩列(C9、D9)中通過(guò)該函數(shù)自動(dòng)檢索到“中樁坐標(biāo)”表單對(duì)應(yīng)的X、Y 值(4038008.989、531541.360)。

        VLOOKUP 函數(shù)的調(diào)用格式VLOOKUP 函數(shù)的調(diào)用基本格式為:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

        VLOOKUP 函數(shù)的進(jìn)一步說(shuō)明,VLOOKUP (查找目標(biāo),查找范圍,返回值的列數(shù),精確OR 模糊查找):

        查找目標(biāo):VLOOKUP (B10, 中樁坐標(biāo)! $A$2: $C$999999,2,FALSE)中的第一個(gè)參數(shù)—“B10”,即中樁樁號(hào),當(dāng)前為“ZK115+500”。

        查找范圍:VLOOKUP (B10, 中樁坐標(biāo)! $A $2: $C$999999,2,FALSE)中的第二個(gè)參數(shù)—“中樁坐標(biāo)! $A$2:$C$999999”,即 “中樁坐標(biāo)”表單的A~C 列1-999999 行的區(qū)域,999999—是區(qū)域的行數(shù),可以根據(jù)需要進(jìn)行相應(yīng)變化。

        需要特別注意的是:查找目標(biāo)(樁號(hào)列)一定要在該區(qū)域的第一列;該區(qū)域中一定要包含要返回值所在的列,本例中要返回的值是X。

        返回值的列數(shù):VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,FALSE)中的第3 個(gè)參數(shù)—“2”,它是一個(gè)整數(shù)值。它是“返回值”在第二個(gè)參數(shù)給定的區(qū)域中的列數(shù)。

        本例中我們要返回的是“X”,它是第二個(gè)參數(shù)查找范圍“中樁坐標(biāo)! $A$2:$C$999999”的第2 列。這里一定要注意,列數(shù)不是在工作表中的列數(shù),而是在查找范圍區(qū)域的第幾列。

        精確OR 模糊查找:VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,F(xiàn)ALSE)中最后一個(gè)參數(shù)—“FALSE”,是決定函數(shù)精確和模糊查找的關(guān)鍵。精確即完全一樣,模糊即包含的意思。第4 個(gè)參數(shù)如果指定值是0 或FALSE 就表示精確查找,而值為1 或TRUE 時(shí)則表示模糊。

        2.1.2 excel 單元格下拉列表的建立

        excel 單元格下拉列表的建立流程(以excel2013 為例):

        數(shù)據(jù)驗(yàn)證→數(shù)據(jù)驗(yàn)證→設(shè)置→序列→來(lái)源→選定所需表單對(duì)應(yīng)的列。

        以設(shè)置導(dǎo)線點(diǎn)的測(cè)站為例(后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁也需要類似設(shè)置),需要選擇導(dǎo)線點(diǎn)表單的第一列數(shù)據(jù)。

        2.2 自定義函數(shù):數(shù)據(jù)格式、方位角計(jì)算函數(shù)統(tǒng)一的全局常量定義,所有模塊均用到此常量,這樣其他模塊均可以用到常量Pi 的值。原代碼如下:

        Public Const pi = 3.1415926

        2.2.1 數(shù)據(jù)格式函數(shù)

        radtodms(rad)函數(shù)功能:把弧度轉(zhuǎn)變?yōu)槎确置?,度、分均為整?shù),秒為保留一位小數(shù)的數(shù)值。rad 為參數(shù),radtodms 為函數(shù),源代碼如下:

        Function radtodms(rad)

        degree = rad * 180 / pi

        d = Int(degree)

        f = Int((degree - d) * 60)

        s = Int(((degree - d - f / 60) * 3600) * 10) / 10

        radtodms = Str$(d) + "°" + LTrim(Str$(f)) + "′" +

        LTrim(Str$(s)) + "″"

        End Function

        2.2.2 方位角計(jì)算函數(shù)

        fwj(dx, dy)函數(shù),dx、dy 分別為某點(diǎn)相對(duì)于測(cè)站的X、Y 的坐標(biāo)增量;fwj 為對(duì)應(yīng)于dx、dy 的方位角,方位角計(jì)算結(jié)果單位為弧度。dx=0 時(shí),需要單獨(dú)討論。

        Function fwj(dx, dy)

        If dx = 0 Then

        If dy = 0 Then fwj = "出錯(cuò)!"

        If dy > 0 Then fwj = pi / 2

        If dy < 0 Then fwj = pi * 3 / 2

        Else

        xxj = Atn(Abs(dy / dx))

        If dx >= 0 And dy > 0 Then fwj = xxj

        If dx <= 0 And dy > 0 Then fwj = pi - xxj

        If dx <= 0 And dy < 0 Then fwj = pi + xxj

        If dx >= 0 And dy < 0 Then fwj = 2 * pi - xxj

        End If

        End Function

        2.2.3 夾角計(jì)算

        當(dāng)放樣采用極坐標(biāo)夾角方式時(shí),后視方向的坐標(biāo)增量為dtx, dty,中樁方向的坐標(biāo)增量為dx, dy,jiajiao 為計(jì)算結(jié)果,是中樁方向方位角與后視方向方位角的差。

        Function jiajiao(dx, dy, dtx, dty)

        ' 計(jì)算后視方向

        hs = fwj(dtx, dty)

        ' 計(jì)算單個(gè)中樁夾角

        jiajiao = fwj(dx, dy) - hs

        If jiajiao < 0 Then jiajiao = jiajiao + 2 * pi

        If jiajiao > 2 * pi Then jiajiao = jiajiao - 2 * pi

        End Function

        2.3 VBA程序開發(fā)——批量計(jì)算數(shù)據(jù)

        計(jì)算后視方位角,確定計(jì)算范圍,表頭填寫,逐樁方位角計(jì)算、距離計(jì)算、夾角計(jì)算,數(shù)據(jù)回填表格。

        核心技術(shù)是表格的引用。以源代碼中的第五行為例,“Worksheets("主控界面").Cells(4,3)”其他的引用可以參照此。既可以從單元格提取信息(一般提取信息為文本,必要時(shí)需要通過(guò)VAL 函數(shù)轉(zhuǎn)變?yōu)閿?shù)值才能參加計(jì)算)也可以單元格寫入信息。源代碼略。

        3 運(yùn)行過(guò)程

        運(yùn)行總體步驟如下:

        第一步:輸入原始數(shù)據(jù)表單并校核;

        第二步:利用下拉列表選擇測(cè)站點(diǎn)編號(hào)、后視點(diǎn)編號(hào)、單個(gè)中樁樁號(hào),此時(shí)excel 自動(dòng)計(jì)算該中樁對(duì)應(yīng)的極坐標(biāo)放樣數(shù)據(jù)—方位角和距離等;

        第三步:選定開始樁號(hào)、結(jié)束樁號(hào),批量計(jì)算放樣數(shù)據(jù)按鈕。

        4 結(jié)論

        本文通過(guò)創(chuàng)建excel 模板文件解決的問(wèn)題如下:

       ?、賳蝹€(gè)數(shù)據(jù)計(jì)算為了防止輸入錯(cuò)誤采用了下拉列表與Vlookup 函數(shù)組合的方式;

       ?、跒榱送瓿蓡蝹€(gè)數(shù)據(jù)的計(jì)算、格式化自定義了若干函數(shù)并予以引用舉例;

       ?、蹫榱送瓿膳繑?shù)據(jù)計(jì)算編制了VBA 程序。

        對(duì)于道路工程施工數(shù)據(jù)數(shù)據(jù)計(jì)算過(guò)程具有高效、防錯(cuò)等作用。本計(jì)算思路不但可以用于施工計(jì)算,也可以用于設(shè)計(jì)計(jì)算。
       

      相關(guān)文章:

      1.淺談公路工程中的成本管理與成本控制論文

      2.淺談技術(shù)與人文論文

      3.淺談信息技術(shù)與學(xué)科課程的整合論文

      4.淺談高中政治調(diào)研型作業(yè)的設(shè)置論文

      5.用Excel進(jìn)行分步成本核算論文

      6.淺談數(shù)字媒體技術(shù)與數(shù)字媒體藝術(shù)的融合論文

      : $C9999,2,FALSE)中的第二個(gè)參數(shù)—“中樁坐標(biāo)! $A

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

        道路工程是從事道路的規(guī)劃、勘測(cè)、設(shè)計(jì)、施工、養(yǎng)護(hù)等的一門應(yīng)用科學(xué)和技術(shù)。是土木工程的一個(gè)分支。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于Excel 的道路工程計(jì)算技術(shù)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

        淺談基于Excel 的道路工程計(jì)算技術(shù)全文如下:

        道路工程的施工現(xiàn)場(chǎng)數(shù)據(jù)(施工放樣、數(shù)量計(jì)算等)采用手工計(jì)算(各種計(jì)算器)具有直觀好理解的有點(diǎn),缺點(diǎn)是易出錯(cuò)、效率低。用傳統(tǒng)的編程方法(VB、VC 等)優(yōu)點(diǎn)是計(jì)算準(zhǔn)確、效率高,缺點(diǎn)是需要編制專用的程序,需要專業(yè)人員有很好的編程能力,使用者需要一定的培訓(xùn)?;诖?,引入Excel 進(jìn)行相應(yīng)計(jì)算,數(shù)據(jù)的輸入輸出(均在Excel 界面)變得十分直觀、高效,計(jì)算過(guò)程可以采用插入函數(shù)計(jì)算等,在廣大工程人員中有了廣泛應(yīng)用;但是,仔細(xì)分析尚有如下不足:

       ?、贁?shù)據(jù)的輸入、輸出在一個(gè)界面,操作時(shí)宜相互干擾,宜造成原始數(shù)據(jù)易改動(dòng),數(shù)據(jù)量大時(shí),操作界面數(shù)據(jù)類型多、混亂;

       ?、趯?duì)自定義函數(shù)應(yīng)用較少,所定義的公式過(guò)于簡(jiǎn)單、缺乏可維護(hù)性;

       ?、垡?yàn)槿狈?duì)高級(jí)函數(shù)的應(yīng)用,數(shù)據(jù)引用處于較低水平,方法不易分工協(xié)作;

       ?、苷J(rèn)為VBA 就是編程,多數(shù)人退避三舍,造成批量數(shù)據(jù)計(jì)算手工操作過(guò)多,效率低、強(qiáng)度高。

        下面以常見的已知導(dǎo)線點(diǎn)坐標(biāo)、已知中樁坐標(biāo),按指定導(dǎo)線點(diǎn)為測(cè)站和后視點(diǎn)計(jì)算極坐標(biāo)放樣數(shù)據(jù)的excel 過(guò)程來(lái)展示基于數(shù)據(jù)管理、檢索、批量數(shù)據(jù)處理系統(tǒng)過(guò)程、高級(jí)函數(shù)、自定義函數(shù)和VBA 程序。

        1 界面設(shè)計(jì)

        “導(dǎo)線點(diǎn)”表單、“中樁坐標(biāo)”表單向“總控界面”表單提供數(shù)據(jù)檢索和關(guān)聯(lián)的原始數(shù)據(jù),總控界面計(jì)算單個(gè)放樣數(shù)據(jù)、同時(shí)可以批量計(jì)算數(shù)據(jù)填寫于“批量計(jì)算”表單。

        總控界面可以自動(dòng)檢索“導(dǎo)線點(diǎn)”表單導(dǎo)線點(diǎn)個(gè)數(shù)、“中樁坐標(biāo)”表單中樁個(gè)數(shù),測(cè)站、后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁(樁號(hào))均采用下拉列表選擇,相應(yīng)的坐標(biāo)(X,Y)自動(dòng)檢索后填充于表格,這樣可以防止數(shù)據(jù)出錯(cuò)、同時(shí)方便數(shù)據(jù)分類管理。

        2 關(guān)鍵技術(shù)

        以下主要討論:?jiǎn)蝹€(gè)數(shù)據(jù)防止出錯(cuò),需要檢索;批量數(shù)據(jù)處理需要VBA 對(duì)單元格調(diào)用。

        2.1 高級(jí)內(nèi)置函數(shù)應(yīng)用:數(shù)據(jù)管理、數(shù)據(jù)聯(lián)動(dòng)檢索使用

        2.1.1 VLOOKUP 函數(shù)

        本文基于office 2013 版本寫作(其他版本的office可供參考)。該函數(shù)的主要功能:按著查找目標(biāo)把其他表單對(duì)應(yīng)值返回當(dāng)前單元格—把具有相同查找目標(biāo)的值從其他表單返回當(dāng)前表單指定位置。 “主控界面”(B9 即第2 列第9 行)下拉列表找到單個(gè)中樁的樁號(hào)(K115+500),則后面兩列(C9、D9)中通過(guò)該函數(shù)自動(dòng)檢索到“中樁坐標(biāo)”表單對(duì)應(yīng)的X、Y 值(4038008.989、531541.360)。

        VLOOKUP 函數(shù)的調(diào)用格式VLOOKUP 函數(shù)的調(diào)用基本格式為:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

        VLOOKUP 函數(shù)的進(jìn)一步說(shuō)明,VLOOKUP (查找目標(biāo),查找范圍,返回值的列數(shù),精確OR 模糊查找):

        查找目標(biāo):VLOOKUP (B10, 中樁坐標(biāo)! $A$2: $C$999999,2,FALSE)中的第一個(gè)參數(shù)—“B10”,即中樁樁號(hào),當(dāng)前為“ZK115+500”。

        查找范圍:VLOOKUP (B10, 中樁坐標(biāo)! $A $2: $C$999999,2,FALSE)中的第二個(gè)參數(shù)—“中樁坐標(biāo)! $A$2:$C$999999”,即 “中樁坐標(biāo)”表單的A~C 列1-999999 行的區(qū)域,999999—是區(qū)域的行數(shù),可以根據(jù)需要進(jìn)行相應(yīng)變化。

        需要特別注意的是:查找目標(biāo)(樁號(hào)列)一定要在該區(qū)域的第一列;該區(qū)域中一定要包含要返回值所在的列,本例中要返回的值是X。

        返回值的列數(shù):VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,FALSE)中的第3 個(gè)參數(shù)—“2”,它是一個(gè)整數(shù)值。它是“返回值”在第二個(gè)參數(shù)給定的區(qū)域中的列數(shù)。

        本例中我們要返回的是“X”,它是第二個(gè)參數(shù)查找范圍“中樁坐標(biāo)! $A$2:$C$999999”的第2 列。這里一定要注意,列數(shù)不是在工作表中的列數(shù),而是在查找范圍區(qū)域的第幾列。

        精確OR 模糊查找:VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,F(xiàn)ALSE)中最后一個(gè)參數(shù)—“FALSE”,是決定函數(shù)精確和模糊查找的關(guān)鍵。精確即完全一樣,模糊即包含的意思。第4 個(gè)參數(shù)如果指定值是0 或FALSE 就表示精確查找,而值為1 或TRUE 時(shí)則表示模糊。

        2.1.2 excel 單元格下拉列表的建立

        excel 單元格下拉列表的建立流程(以excel2013 為例):

        數(shù)據(jù)驗(yàn)證→數(shù)據(jù)驗(yàn)證→設(shè)置→序列→來(lái)源→選定所需表單對(duì)應(yīng)的列。

        以設(shè)置導(dǎo)線點(diǎn)的測(cè)站為例(后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁也需要類似設(shè)置),需要選擇導(dǎo)線點(diǎn)表單的第一列數(shù)據(jù)。

        2.2 自定義函數(shù):數(shù)據(jù)格式、方位角計(jì)算函數(shù)統(tǒng)一的全局常量定義,所有模塊均用到此常量,這樣其他模塊均可以用到常量Pi 的值。原代碼如下:

        Public Const pi = 3.1415926

        2.2.1 數(shù)據(jù)格式函數(shù)

        radtodms(rad)函數(shù)功能:把弧度轉(zhuǎn)變?yōu)槎确置耄?、分均為整?shù),秒為保留一位小數(shù)的數(shù)值。rad 為參數(shù),radtodms 為函數(shù),源代碼如下:

        Function radtodms(rad)

        degree = rad * 180 / pi

        d = Int(degree)

        f = Int((degree - d) * 60)

        s = Int(((degree - d - f / 60) * 3600) * 10) / 10

        radtodms = Str$(d) + "°" + LTrim(Str$(f)) + "′" +

        LTrim(Str$(s)) + "″"

        End Function

        2.2.2 方位角計(jì)算函數(shù)

        fwj(dx, dy)函數(shù),dx、dy 分別為某點(diǎn)相對(duì)于測(cè)站的X、Y 的坐標(biāo)增量;fwj 為對(duì)應(yīng)于dx、dy 的方位角,方位角計(jì)算結(jié)果單位為弧度。dx=0 時(shí),需要單獨(dú)討論。

        Function fwj(dx, dy)

        If dx = 0 Then

        If dy = 0 Then fwj = "出錯(cuò)!"

        If dy > 0 Then fwj = pi / 2

        If dy < 0 Then fwj = pi * 3 / 2

        Else

        xxj = Atn(Abs(dy / dx))

        If dx >= 0 And dy > 0 Then fwj = xxj

        If dx <= 0 And dy > 0 Then fwj = pi - xxj

        If dx <= 0 And dy < 0 Then fwj = pi + xxj

        If dx >= 0 And dy < 0 Then fwj = 2 * pi - xxj

        End If

        End Function

        2.2.3 夾角計(jì)算

        當(dāng)放樣采用極坐標(biāo)夾角方式時(shí),后視方向的坐標(biāo)增量為dtx, dty,中樁方向的坐標(biāo)增量為dx, dy,jiajiao 為計(jì)算結(jié)果,是中樁方向方位角與后視方向方位角的差。

        Function jiajiao(dx, dy, dtx, dty)

        ' 計(jì)算后視方向

        hs = fwj(dtx, dty)

        ' 計(jì)算單個(gè)中樁夾角

        jiajiao = fwj(dx, dy) - hs

        If jiajiao < 0 Then jiajiao = jiajiao + 2 * pi

        If jiajiao > 2 * pi Then jiajiao = jiajiao - 2 * pi

        End Function

        2.3 VBA程序開發(fā)——批量計(jì)算數(shù)據(jù)

        計(jì)算后視方位角,確定計(jì)算范圍,表頭填寫,逐樁方位角計(jì)算、距離計(jì)算、夾角計(jì)算,數(shù)據(jù)回填表格。

        核心技術(shù)是表格的引用。以源代碼中的第五行為例,“Worksheets("主控界面").Cells(4,3)”其他的引用可以參照此。既可以從單元格提取信息(一般提取信息為文本,必要時(shí)需要通過(guò)VAL 函數(shù)轉(zhuǎn)變?yōu)閿?shù)值才能參加計(jì)算)也可以單元格寫入信息。源代碼略。

        3 運(yùn)行過(guò)程

        運(yùn)行總體步驟如下:

        第一步:輸入原始數(shù)據(jù)表單并校核;

        第二步:利用下拉列表選擇測(cè)站點(diǎn)編號(hào)、后視點(diǎn)編號(hào)、單個(gè)中樁樁號(hào),此時(shí)excel 自動(dòng)計(jì)算該中樁對(duì)應(yīng)的極坐標(biāo)放樣數(shù)據(jù)—方位角和距離等;

        第三步:選定開始樁號(hào)、結(jié)束樁號(hào),批量計(jì)算放樣數(shù)據(jù)按鈕。

        4 結(jié)論

        本文通過(guò)創(chuàng)建excel 模板文件解決的問(wèn)題如下:

       ?、賳蝹€(gè)數(shù)據(jù)計(jì)算為了防止輸入錯(cuò)誤采用了下拉列表與Vlookup 函數(shù)組合的方式;

       ?、跒榱送瓿蓡蝹€(gè)數(shù)據(jù)的計(jì)算、格式化自定義了若干函數(shù)并予以引用舉例;

        ③為了完成批量數(shù)據(jù)計(jì)算編制了VBA 程序。

        對(duì)于道路工程施工數(shù)據(jù)數(shù)據(jù)計(jì)算過(guò)程具有高效、防錯(cuò)等作用。本計(jì)算思路不但可以用于施工計(jì)算,也可以用于設(shè)計(jì)計(jì)算。
       

      相關(guān)文章:

      1.淺談公路工程中的成本管理與成本控制論文

      2.淺談技術(shù)與人文論文

      3.淺談信息技術(shù)與學(xué)科課程的整合論文

      4.淺談高中政治調(diào)研型作業(yè)的設(shè)置論文

      5.用Excel進(jìn)行分步成本核算論文

      6.淺談數(shù)字媒體技術(shù)與數(shù)字媒體藝術(shù)的融合論文

      :$C9999”,即 “中樁坐標(biāo)”表單的A~C 列1-999999 行的區(qū)域,999999—是區(qū)域的行數(shù),可以根據(jù)需要進(jìn)行相應(yīng)變化。

        需要特別注意的是:查找目標(biāo)(樁號(hào)列)一定要在該區(qū)域的第一列;該區(qū)域中一定要包含要返回值所在的列,本例中要返回的值是X。

        返回值的列數(shù):VLOOKUP(B10,中樁坐標(biāo)! $A

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

        道路工程是從事道路的規(guī)劃、勘測(cè)、設(shè)計(jì)、施工、養(yǎng)護(hù)等的一門應(yīng)用科學(xué)和技術(shù)。是土木工程的一個(gè)分支。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于Excel 的道路工程計(jì)算技術(shù)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

        淺談基于Excel 的道路工程計(jì)算技術(shù)全文如下:

        道路工程的施工現(xiàn)場(chǎng)數(shù)據(jù)(施工放樣、數(shù)量計(jì)算等)采用手工計(jì)算(各種計(jì)算器)具有直觀好理解的有點(diǎn),缺點(diǎn)是易出錯(cuò)、效率低。用傳統(tǒng)的編程方法(VB、VC 等)優(yōu)點(diǎn)是計(jì)算準(zhǔn)確、效率高,缺點(diǎn)是需要編制專用的程序,需要專業(yè)人員有很好的編程能力,使用者需要一定的培訓(xùn)?;诖?,引入Excel 進(jìn)行相應(yīng)計(jì)算,數(shù)據(jù)的輸入輸出(均在Excel 界面)變得十分直觀、高效,計(jì)算過(guò)程可以采用插入函數(shù)計(jì)算等,在廣大工程人員中有了廣泛應(yīng)用;但是,仔細(xì)分析尚有如下不足:

        ①數(shù)據(jù)的輸入、輸出在一個(gè)界面,操作時(shí)宜相互干擾,宜造成原始數(shù)據(jù)易改動(dòng),數(shù)據(jù)量大時(shí),操作界面數(shù)據(jù)類型多、混亂;

       ?、趯?duì)自定義函數(shù)應(yīng)用較少,所定義的公式過(guò)于簡(jiǎn)單、缺乏可維護(hù)性;

       ?、垡?yàn)槿狈?duì)高級(jí)函數(shù)的應(yīng)用,數(shù)據(jù)引用處于較低水平,方法不易分工協(xié)作;

       ?、苷J(rèn)為VBA 就是編程,多數(shù)人退避三舍,造成批量數(shù)據(jù)計(jì)算手工操作過(guò)多,效率低、強(qiáng)度高。

        下面以常見的已知導(dǎo)線點(diǎn)坐標(biāo)、已知中樁坐標(biāo),按指定導(dǎo)線點(diǎn)為測(cè)站和后視點(diǎn)計(jì)算極坐標(biāo)放樣數(shù)據(jù)的excel 過(guò)程來(lái)展示基于數(shù)據(jù)管理、檢索、批量數(shù)據(jù)處理系統(tǒng)過(guò)程、高級(jí)函數(shù)、自定義函數(shù)和VBA 程序。

        1 界面設(shè)計(jì)

        “導(dǎo)線點(diǎn)”表單、“中樁坐標(biāo)”表單向“總控界面”表單提供數(shù)據(jù)檢索和關(guān)聯(lián)的原始數(shù)據(jù),總控界面計(jì)算單個(gè)放樣數(shù)據(jù)、同時(shí)可以批量計(jì)算數(shù)據(jù)填寫于“批量計(jì)算”表單。

        總控界面可以自動(dòng)檢索“導(dǎo)線點(diǎn)”表單導(dǎo)線點(diǎn)個(gè)數(shù)、“中樁坐標(biāo)”表單中樁個(gè)數(shù),測(cè)站、后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁(樁號(hào))均采用下拉列表選擇,相應(yīng)的坐標(biāo)(X,Y)自動(dòng)檢索后填充于表格,這樣可以防止數(shù)據(jù)出錯(cuò)、同時(shí)方便數(shù)據(jù)分類管理。

        2 關(guān)鍵技術(shù)

        以下主要討論:?jiǎn)蝹€(gè)數(shù)據(jù)防止出錯(cuò),需要檢索;批量數(shù)據(jù)處理需要VBA 對(duì)單元格調(diào)用。

        2.1 高級(jí)內(nèi)置函數(shù)應(yīng)用:數(shù)據(jù)管理、數(shù)據(jù)聯(lián)動(dòng)檢索使用

        2.1.1 VLOOKUP 函數(shù)

        本文基于office 2013 版本寫作(其他版本的office可供參考)。該函數(shù)的主要功能:按著查找目標(biāo)把其他表單對(duì)應(yīng)值返回當(dāng)前單元格—把具有相同查找目標(biāo)的值從其他表單返回當(dāng)前表單指定位置。 “主控界面”(B9 即第2 列第9 行)下拉列表找到單個(gè)中樁的樁號(hào)(K115+500),則后面兩列(C9、D9)中通過(guò)該函數(shù)自動(dòng)檢索到“中樁坐標(biāo)”表單對(duì)應(yīng)的X、Y 值(4038008.989、531541.360)。

        VLOOKUP 函數(shù)的調(diào)用格式VLOOKUP 函數(shù)的調(diào)用基本格式為:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

        VLOOKUP 函數(shù)的進(jìn)一步說(shuō)明,VLOOKUP (查找目標(biāo),查找范圍,返回值的列數(shù),精確OR 模糊查找):

        查找目標(biāo):VLOOKUP (B10, 中樁坐標(biāo)! $A$2: $C$999999,2,FALSE)中的第一個(gè)參數(shù)—“B10”,即中樁樁號(hào),當(dāng)前為“ZK115+500”。

        查找范圍:VLOOKUP (B10, 中樁坐標(biāo)! $A $2: $C$999999,2,FALSE)中的第二個(gè)參數(shù)—“中樁坐標(biāo)! $A$2:$C$999999”,即 “中樁坐標(biāo)”表單的A~C 列1-999999 行的區(qū)域,999999—是區(qū)域的行數(shù),可以根據(jù)需要進(jìn)行相應(yīng)變化。

        需要特別注意的是:查找目標(biāo)(樁號(hào)列)一定要在該區(qū)域的第一列;該區(qū)域中一定要包含要返回值所在的列,本例中要返回的值是X。

        返回值的列數(shù):VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,FALSE)中的第3 個(gè)參數(shù)—“2”,它是一個(gè)整數(shù)值。它是“返回值”在第二個(gè)參數(shù)給定的區(qū)域中的列數(shù)。

        本例中我們要返回的是“X”,它是第二個(gè)參數(shù)查找范圍“中樁坐標(biāo)! $A$2:$C$999999”的第2 列。這里一定要注意,列數(shù)不是在工作表中的列數(shù),而是在查找范圍區(qū)域的第幾列。

        精確OR 模糊查找:VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,F(xiàn)ALSE)中最后一個(gè)參數(shù)—“FALSE”,是決定函數(shù)精確和模糊查找的關(guān)鍵。精確即完全一樣,模糊即包含的意思。第4 個(gè)參數(shù)如果指定值是0 或FALSE 就表示精確查找,而值為1 或TRUE 時(shí)則表示模糊。

        2.1.2 excel 單元格下拉列表的建立

        excel 單元格下拉列表的建立流程(以excel2013 為例):

        數(shù)據(jù)驗(yàn)證→數(shù)據(jù)驗(yàn)證→設(shè)置→序列→來(lái)源→選定所需表單對(duì)應(yīng)的列。

        以設(shè)置導(dǎo)線點(diǎn)的測(cè)站為例(后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁也需要類似設(shè)置),需要選擇導(dǎo)線點(diǎn)表單的第一列數(shù)據(jù)。

        2.2 自定義函數(shù):數(shù)據(jù)格式、方位角計(jì)算函數(shù)統(tǒng)一的全局常量定義,所有模塊均用到此常量,這樣其他模塊均可以用到常量Pi 的值。原代碼如下:

        Public Const pi = 3.1415926

        2.2.1 數(shù)據(jù)格式函數(shù)

        radtodms(rad)函數(shù)功能:把弧度轉(zhuǎn)變?yōu)槎确置耄?、分均為整?shù),秒為保留一位小數(shù)的數(shù)值。rad 為參數(shù),radtodms 為函數(shù),源代碼如下:

        Function radtodms(rad)

        degree = rad * 180 / pi

        d = Int(degree)

        f = Int((degree - d) * 60)

        s = Int(((degree - d - f / 60) * 3600) * 10) / 10

        radtodms = Str$(d) + "°" + LTrim(Str$(f)) + "′" +

        LTrim(Str$(s)) + "″"

        End Function

        2.2.2 方位角計(jì)算函數(shù)

        fwj(dx, dy)函數(shù),dx、dy 分別為某點(diǎn)相對(duì)于測(cè)站的X、Y 的坐標(biāo)增量;fwj 為對(duì)應(yīng)于dx、dy 的方位角,方位角計(jì)算結(jié)果單位為弧度。dx=0 時(shí),需要單獨(dú)討論。

        Function fwj(dx, dy)

        If dx = 0 Then

        If dy = 0 Then fwj = "出錯(cuò)!"

        If dy > 0 Then fwj = pi / 2

        If dy < 0 Then fwj = pi * 3 / 2

        Else

        xxj = Atn(Abs(dy / dx))

        If dx >= 0 And dy > 0 Then fwj = xxj

        If dx <= 0 And dy > 0 Then fwj = pi - xxj

        If dx <= 0 And dy < 0 Then fwj = pi + xxj

        If dx >= 0 And dy < 0 Then fwj = 2 * pi - xxj

        End If

        End Function

        2.2.3 夾角計(jì)算

        當(dāng)放樣采用極坐標(biāo)夾角方式時(shí),后視方向的坐標(biāo)增量為dtx, dty,中樁方向的坐標(biāo)增量為dx, dy,jiajiao 為計(jì)算結(jié)果,是中樁方向方位角與后視方向方位角的差。

        Function jiajiao(dx, dy, dtx, dty)

        ' 計(jì)算后視方向

        hs = fwj(dtx, dty)

        ' 計(jì)算單個(gè)中樁夾角

        jiajiao = fwj(dx, dy) - hs

        If jiajiao < 0 Then jiajiao = jiajiao + 2 * pi

        If jiajiao > 2 * pi Then jiajiao = jiajiao - 2 * pi

        End Function

        2.3 VBA程序開發(fā)——批量計(jì)算數(shù)據(jù)

        計(jì)算后視方位角,確定計(jì)算范圍,表頭填寫,逐樁方位角計(jì)算、距離計(jì)算、夾角計(jì)算,數(shù)據(jù)回填表格。

        核心技術(shù)是表格的引用。以源代碼中的第五行為例,“Worksheets("主控界面").Cells(4,3)”其他的引用可以參照此。既可以從單元格提取信息(一般提取信息為文本,必要時(shí)需要通過(guò)VAL 函數(shù)轉(zhuǎn)變?yōu)閿?shù)值才能參加計(jì)算)也可以單元格寫入信息。源代碼略。

        3 運(yùn)行過(guò)程

        運(yùn)行總體步驟如下:

        第一步:輸入原始數(shù)據(jù)表單并校核;

        第二步:利用下拉列表選擇測(cè)站點(diǎn)編號(hào)、后視點(diǎn)編號(hào)、單個(gè)中樁樁號(hào),此時(shí)excel 自動(dòng)計(jì)算該中樁對(duì)應(yīng)的極坐標(biāo)放樣數(shù)據(jù)—方位角和距離等;

        第三步:選定開始樁號(hào)、結(jié)束樁號(hào),批量計(jì)算放樣數(shù)據(jù)按鈕。

        4 結(jié)論

        本文通過(guò)創(chuàng)建excel 模板文件解決的問(wèn)題如下:

       ?、賳蝹€(gè)數(shù)據(jù)計(jì)算為了防止輸入錯(cuò)誤采用了下拉列表與Vlookup 函數(shù)組合的方式;

        ②為了完成單個(gè)數(shù)據(jù)的計(jì)算、格式化自定義了若干函數(shù)并予以引用舉例;

       ?、蹫榱送瓿膳繑?shù)據(jù)計(jì)算編制了VBA 程序。

        對(duì)于道路工程施工數(shù)據(jù)數(shù)據(jù)計(jì)算過(guò)程具有高效、防錯(cuò)等作用。本計(jì)算思路不但可以用于施工計(jì)算,也可以用于設(shè)計(jì)計(jì)算。
       

      相關(guān)文章:

      1.淺談公路工程中的成本管理與成本控制論文

      2.淺談技術(shù)與人文論文

      3.淺談信息技術(shù)與學(xué)科課程的整合論文

      4.淺談高中政治調(diào)研型作業(yè)的設(shè)置論文

      5.用Excel進(jìn)行分步成本核算論文

      6.淺談數(shù)字媒體技術(shù)與數(shù)字媒體藝術(shù)的融合論文

      :$C9999,2,FALSE)中的第3 個(gè)參數(shù)—“2”,它是一個(gè)整數(shù)值。它是“返回值”在第二個(gè)參數(shù)給定的區(qū)域中的列數(shù)。

        本例中我們要返回的是“X”,它是第二個(gè)參數(shù)查找范圍“中樁坐標(biāo)! $A

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

        道路工程是從事道路的規(guī)劃、勘測(cè)、設(shè)計(jì)、施工、養(yǎng)護(hù)等的一門應(yīng)用科學(xué)和技術(shù)。是土木工程的一個(gè)分支。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于Excel 的道路工程計(jì)算技術(shù)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

        淺談基于Excel 的道路工程計(jì)算技術(shù)全文如下:

        道路工程的施工現(xiàn)場(chǎng)數(shù)據(jù)(施工放樣、數(shù)量計(jì)算等)采用手工計(jì)算(各種計(jì)算器)具有直觀好理解的有點(diǎn),缺點(diǎn)是易出錯(cuò)、效率低。用傳統(tǒng)的編程方法(VB、VC 等)優(yōu)點(diǎn)是計(jì)算準(zhǔn)確、效率高,缺點(diǎn)是需要編制專用的程序,需要專業(yè)人員有很好的編程能力,使用者需要一定的培訓(xùn)?;诖耍隕xcel 進(jìn)行相應(yīng)計(jì)算,數(shù)據(jù)的輸入輸出(均在Excel 界面)變得十分直觀、高效,計(jì)算過(guò)程可以采用插入函數(shù)計(jì)算等,在廣大工程人員中有了廣泛應(yīng)用;但是,仔細(xì)分析尚有如下不足:

       ?、贁?shù)據(jù)的輸入、輸出在一個(gè)界面,操作時(shí)宜相互干擾,宜造成原始數(shù)據(jù)易改動(dòng),數(shù)據(jù)量大時(shí),操作界面數(shù)據(jù)類型多、混亂;

       ?、趯?duì)自定義函數(shù)應(yīng)用較少,所定義的公式過(guò)于簡(jiǎn)單、缺乏可維護(hù)性;

       ?、垡?yàn)槿狈?duì)高級(jí)函數(shù)的應(yīng)用,數(shù)據(jù)引用處于較低水平,方法不易分工協(xié)作;

       ?、苷J(rèn)為VBA 就是編程,多數(shù)人退避三舍,造成批量數(shù)據(jù)計(jì)算手工操作過(guò)多,效率低、強(qiáng)度高。

        下面以常見的已知導(dǎo)線點(diǎn)坐標(biāo)、已知中樁坐標(biāo),按指定導(dǎo)線點(diǎn)為測(cè)站和后視點(diǎn)計(jì)算極坐標(biāo)放樣數(shù)據(jù)的excel 過(guò)程來(lái)展示基于數(shù)據(jù)管理、檢索、批量數(shù)據(jù)處理系統(tǒng)過(guò)程、高級(jí)函數(shù)、自定義函數(shù)和VBA 程序。

        1 界面設(shè)計(jì)

        “導(dǎo)線點(diǎn)”表單、“中樁坐標(biāo)”表單向“總控界面”表單提供數(shù)據(jù)檢索和關(guān)聯(lián)的原始數(shù)據(jù),總控界面計(jì)算單個(gè)放樣數(shù)據(jù)、同時(shí)可以批量計(jì)算數(shù)據(jù)填寫于“批量計(jì)算”表單。

        總控界面可以自動(dòng)檢索“導(dǎo)線點(diǎn)”表單導(dǎo)線點(diǎn)個(gè)數(shù)、“中樁坐標(biāo)”表單中樁個(gè)數(shù),測(cè)站、后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁(樁號(hào))均采用下拉列表選擇,相應(yīng)的坐標(biāo)(X,Y)自動(dòng)檢索后填充于表格,這樣可以防止數(shù)據(jù)出錯(cuò)、同時(shí)方便數(shù)據(jù)分類管理。

        2 關(guān)鍵技術(shù)

        以下主要討論:?jiǎn)蝹€(gè)數(shù)據(jù)防止出錯(cuò),需要檢索;批量數(shù)據(jù)處理需要VBA 對(duì)單元格調(diào)用。

        2.1 高級(jí)內(nèi)置函數(shù)應(yīng)用:數(shù)據(jù)管理、數(shù)據(jù)聯(lián)動(dòng)檢索使用

        2.1.1 VLOOKUP 函數(shù)

        本文基于office 2013 版本寫作(其他版本的office可供參考)。該函數(shù)的主要功能:按著查找目標(biāo)把其他表單對(duì)應(yīng)值返回當(dāng)前單元格—把具有相同查找目標(biāo)的值從其他表單返回當(dāng)前表單指定位置。 “主控界面”(B9 即第2 列第9 行)下拉列表找到單個(gè)中樁的樁號(hào)(K115+500),則后面兩列(C9、D9)中通過(guò)該函數(shù)自動(dòng)檢索到“中樁坐標(biāo)”表單對(duì)應(yīng)的X、Y 值(4038008.989、531541.360)。

        VLOOKUP 函數(shù)的調(diào)用格式VLOOKUP 函數(shù)的調(diào)用基本格式為:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

        VLOOKUP 函數(shù)的進(jìn)一步說(shuō)明,VLOOKUP (查找目標(biāo),查找范圍,返回值的列數(shù),精確OR 模糊查找):

        查找目標(biāo):VLOOKUP (B10, 中樁坐標(biāo)! $A$2: $C$999999,2,FALSE)中的第一個(gè)參數(shù)—“B10”,即中樁樁號(hào),當(dāng)前為“ZK115+500”。

        查找范圍:VLOOKUP (B10, 中樁坐標(biāo)! $A $2: $C$999999,2,FALSE)中的第二個(gè)參數(shù)—“中樁坐標(biāo)! $A$2:$C$999999”,即 “中樁坐標(biāo)”表單的A~C 列1-999999 行的區(qū)域,999999—是區(qū)域的行數(shù),可以根據(jù)需要進(jìn)行相應(yīng)變化。

        需要特別注意的是:查找目標(biāo)(樁號(hào)列)一定要在該區(qū)域的第一列;該區(qū)域中一定要包含要返回值所在的列,本例中要返回的值是X。

        返回值的列數(shù):VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,FALSE)中的第3 個(gè)參數(shù)—“2”,它是一個(gè)整數(shù)值。它是“返回值”在第二個(gè)參數(shù)給定的區(qū)域中的列數(shù)。

        本例中我們要返回的是“X”,它是第二個(gè)參數(shù)查找范圍“中樁坐標(biāo)! $A$2:$C$999999”的第2 列。這里一定要注意,列數(shù)不是在工作表中的列數(shù),而是在查找范圍區(qū)域的第幾列。

        精確OR 模糊查找:VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,F(xiàn)ALSE)中最后一個(gè)參數(shù)—“FALSE”,是決定函數(shù)精確和模糊查找的關(guān)鍵。精確即完全一樣,模糊即包含的意思。第4 個(gè)參數(shù)如果指定值是0 或FALSE 就表示精確查找,而值為1 或TRUE 時(shí)則表示模糊。

        2.1.2 excel 單元格下拉列表的建立

        excel 單元格下拉列表的建立流程(以excel2013 為例):

        數(shù)據(jù)驗(yàn)證→數(shù)據(jù)驗(yàn)證→設(shè)置→序列→來(lái)源→選定所需表單對(duì)應(yīng)的列。

        以設(shè)置導(dǎo)線點(diǎn)的測(cè)站為例(后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁也需要類似設(shè)置),需要選擇導(dǎo)線點(diǎn)表單的第一列數(shù)據(jù)。

        2.2 自定義函數(shù):數(shù)據(jù)格式、方位角計(jì)算函數(shù)統(tǒng)一的全局常量定義,所有模塊均用到此常量,這樣其他模塊均可以用到常量Pi 的值。原代碼如下:

        Public Const pi = 3.1415926

        2.2.1 數(shù)據(jù)格式函數(shù)

        radtodms(rad)函數(shù)功能:把弧度轉(zhuǎn)變?yōu)槎确置?,度、分均為整?shù),秒為保留一位小數(shù)的數(shù)值。rad 為參數(shù),radtodms 為函數(shù),源代碼如下:

        Function radtodms(rad)

        degree = rad * 180 / pi

        d = Int(degree)

        f = Int((degree - d) * 60)

        s = Int(((degree - d - f / 60) * 3600) * 10) / 10

        radtodms = Str$(d) + "°" + LTrim(Str$(f)) + "′" +

        LTrim(Str$(s)) + "″"

        End Function

        2.2.2 方位角計(jì)算函數(shù)

        fwj(dx, dy)函數(shù),dx、dy 分別為某點(diǎn)相對(duì)于測(cè)站的X、Y 的坐標(biāo)增量;fwj 為對(duì)應(yīng)于dx、dy 的方位角,方位角計(jì)算結(jié)果單位為弧度。dx=0 時(shí),需要單獨(dú)討論。

        Function fwj(dx, dy)

        If dx = 0 Then

        If dy = 0 Then fwj = "出錯(cuò)!"

        If dy > 0 Then fwj = pi / 2

        If dy < 0 Then fwj = pi * 3 / 2

        Else

        xxj = Atn(Abs(dy / dx))

        If dx >= 0 And dy > 0 Then fwj = xxj

        If dx <= 0 And dy > 0 Then fwj = pi - xxj

        If dx <= 0 And dy < 0 Then fwj = pi + xxj

        If dx >= 0 And dy < 0 Then fwj = 2 * pi - xxj

        End If

        End Function

        2.2.3 夾角計(jì)算

        當(dāng)放樣采用極坐標(biāo)夾角方式時(shí),后視方向的坐標(biāo)增量為dtx, dty,中樁方向的坐標(biāo)增量為dx, dy,jiajiao 為計(jì)算結(jié)果,是中樁方向方位角與后視方向方位角的差。

        Function jiajiao(dx, dy, dtx, dty)

        ' 計(jì)算后視方向

        hs = fwj(dtx, dty)

        ' 計(jì)算單個(gè)中樁夾角

        jiajiao = fwj(dx, dy) - hs

        If jiajiao < 0 Then jiajiao = jiajiao + 2 * pi

        If jiajiao > 2 * pi Then jiajiao = jiajiao - 2 * pi

        End Function

        2.3 VBA程序開發(fā)——批量計(jì)算數(shù)據(jù)

        計(jì)算后視方位角,確定計(jì)算范圍,表頭填寫,逐樁方位角計(jì)算、距離計(jì)算、夾角計(jì)算,數(shù)據(jù)回填表格。

        核心技術(shù)是表格的引用。以源代碼中的第五行為例,“Worksheets("主控界面").Cells(4,3)”其他的引用可以參照此。既可以從單元格提取信息(一般提取信息為文本,必要時(shí)需要通過(guò)VAL 函數(shù)轉(zhuǎn)變?yōu)閿?shù)值才能參加計(jì)算)也可以單元格寫入信息。源代碼略。

        3 運(yùn)行過(guò)程

        運(yùn)行總體步驟如下:

        第一步:輸入原始數(shù)據(jù)表單并校核;

        第二步:利用下拉列表選擇測(cè)站點(diǎn)編號(hào)、后視點(diǎn)編號(hào)、單個(gè)中樁樁號(hào),此時(shí)excel 自動(dòng)計(jì)算該中樁對(duì)應(yīng)的極坐標(biāo)放樣數(shù)據(jù)—方位角和距離等;

        第三步:選定開始樁號(hào)、結(jié)束樁號(hào),批量計(jì)算放樣數(shù)據(jù)按鈕。

        4 結(jié)論

        本文通過(guò)創(chuàng)建excel 模板文件解決的問(wèn)題如下:

        ①單個(gè)數(shù)據(jù)計(jì)算為了防止輸入錯(cuò)誤采用了下拉列表與Vlookup 函數(shù)組合的方式;

       ?、跒榱送瓿蓡蝹€(gè)數(shù)據(jù)的計(jì)算、格式化自定義了若干函數(shù)并予以引用舉例;

       ?、蹫榱送瓿膳繑?shù)據(jù)計(jì)算編制了VBA 程序。

        對(duì)于道路工程施工數(shù)據(jù)數(shù)據(jù)計(jì)算過(guò)程具有高效、防錯(cuò)等作用。本計(jì)算思路不但可以用于施工計(jì)算,也可以用于設(shè)計(jì)計(jì)算。
       

      相關(guān)文章:

      1.淺談公路工程中的成本管理與成本控制論文

      2.淺談技術(shù)與人文論文

      3.淺談信息技術(shù)與學(xué)科課程的整合論文

      4.淺談高中政治調(diào)研型作業(yè)的設(shè)置論文

      5.用Excel進(jìn)行分步成本核算論文

      6.淺談數(shù)字媒體技術(shù)與數(shù)字媒體藝術(shù)的融合論文

      :$C9999”的第2 列。這里一定要注意,列數(shù)不是在工作表中的列數(shù),而是在查找范圍區(qū)域的第幾列。

        精確OR 模糊查找:VLOOKUP(B10,中樁坐標(biāo)! $A

      淺談基于Excel的道路工程計(jì)算技術(shù)論文

        道路工程是從事道路的規(guī)劃、勘測(cè)、設(shè)計(jì)、施工、養(yǎng)護(hù)等的一門應(yīng)用科學(xué)和技術(shù)。是土木工程的一個(gè)分支。以下是學(xué)習(xí)啦小編今天為大家精心準(zhǔn)備的:淺談基于Excel 的道路工程計(jì)算技術(shù)相關(guān)論文。內(nèi)容僅供參考,歡迎閱讀!

        淺談基于Excel 的道路工程計(jì)算技術(shù)全文如下:

        道路工程的施工現(xiàn)場(chǎng)數(shù)據(jù)(施工放樣、數(shù)量計(jì)算等)采用手工計(jì)算(各種計(jì)算器)具有直觀好理解的有點(diǎn),缺點(diǎn)是易出錯(cuò)、效率低。用傳統(tǒng)的編程方法(VB、VC 等)優(yōu)點(diǎn)是計(jì)算準(zhǔn)確、效率高,缺點(diǎn)是需要編制專用的程序,需要專業(yè)人員有很好的編程能力,使用者需要一定的培訓(xùn)?;诖耍隕xcel 進(jìn)行相應(yīng)計(jì)算,數(shù)據(jù)的輸入輸出(均在Excel 界面)變得十分直觀、高效,計(jì)算過(guò)程可以采用插入函數(shù)計(jì)算等,在廣大工程人員中有了廣泛應(yīng)用;但是,仔細(xì)分析尚有如下不足:

        ①數(shù)據(jù)的輸入、輸出在一個(gè)界面,操作時(shí)宜相互干擾,宜造成原始數(shù)據(jù)易改動(dòng),數(shù)據(jù)量大時(shí),操作界面數(shù)據(jù)類型多、混亂;

       ?、趯?duì)自定義函數(shù)應(yīng)用較少,所定義的公式過(guò)于簡(jiǎn)單、缺乏可維護(hù)性;

       ?、垡?yàn)槿狈?duì)高級(jí)函數(shù)的應(yīng)用,數(shù)據(jù)引用處于較低水平,方法不易分工協(xié)作;

       ?、苷J(rèn)為VBA 就是編程,多數(shù)人退避三舍,造成批量數(shù)據(jù)計(jì)算手工操作過(guò)多,效率低、強(qiáng)度高。

        下面以常見的已知導(dǎo)線點(diǎn)坐標(biāo)、已知中樁坐標(biāo),按指定導(dǎo)線點(diǎn)為測(cè)站和后視點(diǎn)計(jì)算極坐標(biāo)放樣數(shù)據(jù)的excel 過(guò)程來(lái)展示基于數(shù)據(jù)管理、檢索、批量數(shù)據(jù)處理系統(tǒng)過(guò)程、高級(jí)函數(shù)、自定義函數(shù)和VBA 程序。

        1 界面設(shè)計(jì)

        “導(dǎo)線點(diǎn)”表單、“中樁坐標(biāo)”表單向“總控界面”表單提供數(shù)據(jù)檢索和關(guān)聯(lián)的原始數(shù)據(jù),總控界面計(jì)算單個(gè)放樣數(shù)據(jù)、同時(shí)可以批量計(jì)算數(shù)據(jù)填寫于“批量計(jì)算”表單。

        總控界面可以自動(dòng)檢索“導(dǎo)線點(diǎn)”表單導(dǎo)線點(diǎn)個(gè)數(shù)、“中樁坐標(biāo)”表單中樁個(gè)數(shù),測(cè)站、后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁(樁號(hào))均采用下拉列表選擇,相應(yīng)的坐標(biāo)(X,Y)自動(dòng)檢索后填充于表格,這樣可以防止數(shù)據(jù)出錯(cuò)、同時(shí)方便數(shù)據(jù)分類管理。

        2 關(guān)鍵技術(shù)

        以下主要討論:?jiǎn)蝹€(gè)數(shù)據(jù)防止出錯(cuò),需要檢索;批量數(shù)據(jù)處理需要VBA 對(duì)單元格調(diào)用。

        2.1 高級(jí)內(nèi)置函數(shù)應(yīng)用:數(shù)據(jù)管理、數(shù)據(jù)聯(lián)動(dòng)檢索使用

        2.1.1 VLOOKUP 函數(shù)

        本文基于office 2013 版本寫作(其他版本的office可供參考)。該函數(shù)的主要功能:按著查找目標(biāo)把其他表單對(duì)應(yīng)值返回當(dāng)前單元格—把具有相同查找目標(biāo)的值從其他表單返回當(dāng)前表單指定位置。 “主控界面”(B9 即第2 列第9 行)下拉列表找到單個(gè)中樁的樁號(hào)(K115+500),則后面兩列(C9、D9)中通過(guò)該函數(shù)自動(dòng)檢索到“中樁坐標(biāo)”表單對(duì)應(yīng)的X、Y 值(4038008.989、531541.360)。

        VLOOKUP 函數(shù)的調(diào)用格式VLOOKUP 函數(shù)的調(diào)用基本格式為:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)。

        VLOOKUP 函數(shù)的進(jìn)一步說(shuō)明,VLOOKUP (查找目標(biāo),查找范圍,返回值的列數(shù),精確OR 模糊查找):

        查找目標(biāo):VLOOKUP (B10, 中樁坐標(biāo)! $A$2: $C$999999,2,FALSE)中的第一個(gè)參數(shù)—“B10”,即中樁樁號(hào),當(dāng)前為“ZK115+500”。

        查找范圍:VLOOKUP (B10, 中樁坐標(biāo)! $A $2: $C$999999,2,FALSE)中的第二個(gè)參數(shù)—“中樁坐標(biāo)! $A$2:$C$999999”,即 “中樁坐標(biāo)”表單的A~C 列1-999999 行的區(qū)域,999999—是區(qū)域的行數(shù),可以根據(jù)需要進(jìn)行相應(yīng)變化。

        需要特別注意的是:查找目標(biāo)(樁號(hào)列)一定要在該區(qū)域的第一列;該區(qū)域中一定要包含要返回值所在的列,本例中要返回的值是X。

        返回值的列數(shù):VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,FALSE)中的第3 個(gè)參數(shù)—“2”,它是一個(gè)整數(shù)值。它是“返回值”在第二個(gè)參數(shù)給定的區(qū)域中的列數(shù)。

        本例中我們要返回的是“X”,它是第二個(gè)參數(shù)查找范圍“中樁坐標(biāo)! $A$2:$C$999999”的第2 列。這里一定要注意,列數(shù)不是在工作表中的列數(shù),而是在查找范圍區(qū)域的第幾列。

        精確OR 模糊查找:VLOOKUP(B10,中樁坐標(biāo)! $A$2:$C$999999,2,F(xiàn)ALSE)中最后一個(gè)參數(shù)—“FALSE”,是決定函數(shù)精確和模糊查找的關(guān)鍵。精確即完全一樣,模糊即包含的意思。第4 個(gè)參數(shù)如果指定值是0 或FALSE 就表示精確查找,而值為1 或TRUE 時(shí)則表示模糊。

        2.1.2 excel 單元格下拉列表的建立

        excel 單元格下拉列表的建立流程(以excel2013 為例):

        數(shù)據(jù)驗(yàn)證→數(shù)據(jù)驗(yàn)證→設(shè)置→序列→來(lái)源→選定所需表單對(duì)應(yīng)的列。

        以設(shè)置導(dǎo)線點(diǎn)的測(cè)站為例(后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁也需要類似設(shè)置),需要選擇導(dǎo)線點(diǎn)表單的第一列數(shù)據(jù)。

        2.2 自定義函數(shù):數(shù)據(jù)格式、方位角計(jì)算函數(shù)統(tǒng)一的全局常量定義,所有模塊均用到此常量,這樣其他模塊均可以用到常量Pi 的值。原代碼如下:

        Public Const pi = 3.1415926

        2.2.1 數(shù)據(jù)格式函數(shù)

        radtodms(rad)函數(shù)功能:把弧度轉(zhuǎn)變?yōu)槎确置?,度、分均為整?shù),秒為保留一位小數(shù)的數(shù)值。rad 為參數(shù),radtodms 為函數(shù),源代碼如下:

        Function radtodms(rad)

        degree = rad * 180 / pi

        d = Int(degree)

        f = Int((degree - d) * 60)

        s = Int(((degree - d - f / 60) * 3600) * 10) / 10

        radtodms = Str$(d) + "°" + LTrim(Str$(f)) + "′" +

        LTrim(Str$(s)) + "″"

        End Function

        2.2.2 方位角計(jì)算函數(shù)

        fwj(dx, dy)函數(shù),dx、dy 分別為某點(diǎn)相對(duì)于測(cè)站的X、Y 的坐標(biāo)增量;fwj 為對(duì)應(yīng)于dx、dy 的方位角,方位角計(jì)算結(jié)果單位為弧度。dx=0 時(shí),需要單獨(dú)討論。

        Function fwj(dx, dy)

        If dx = 0 Then

        If dy = 0 Then fwj = "出錯(cuò)!"

        If dy > 0 Then fwj = pi / 2

        If dy < 0 Then fwj = pi * 3 / 2

        Else

        xxj = Atn(Abs(dy / dx))

        If dx >= 0 And dy > 0 Then fwj = xxj

        If dx <= 0 And dy > 0 Then fwj = pi - xxj

        If dx <= 0 And dy < 0 Then fwj = pi + xxj

        If dx >= 0 And dy < 0 Then fwj = 2 * pi - xxj

        End If

        End Function

        2.2.3 夾角計(jì)算

        當(dāng)放樣采用極坐標(biāo)夾角方式時(shí),后視方向的坐標(biāo)增量為dtx, dty,中樁方向的坐標(biāo)增量為dx, dy,jiajiao 為計(jì)算結(jié)果,是中樁方向方位角與后視方向方位角的差。

        Function jiajiao(dx, dy, dtx, dty)

        ' 計(jì)算后視方向

        hs = fwj(dtx, dty)

        ' 計(jì)算單個(gè)中樁夾角

        jiajiao = fwj(dx, dy) - hs

        If jiajiao < 0 Then jiajiao = jiajiao + 2 * pi

        If jiajiao > 2 * pi Then jiajiao = jiajiao - 2 * pi

        End Function

        2.3 VBA程序開發(fā)——批量計(jì)算數(shù)據(jù)

        計(jì)算后視方位角,確定計(jì)算范圍,表頭填寫,逐樁方位角計(jì)算、距離計(jì)算、夾角計(jì)算,數(shù)據(jù)回填表格。

        核心技術(shù)是表格的引用。以源代碼中的第五行為例,“Worksheets("主控界面").Cells(4,3)”其他的引用可以參照此。既可以從單元格提取信息(一般提取信息為文本,必要時(shí)需要通過(guò)VAL 函數(shù)轉(zhuǎn)變?yōu)閿?shù)值才能參加計(jì)算)也可以單元格寫入信息。源代碼略。

        3 運(yùn)行過(guò)程

        運(yùn)行總體步驟如下:

        第一步:輸入原始數(shù)據(jù)表單并校核;

        第二步:利用下拉列表選擇測(cè)站點(diǎn)編號(hào)、后視點(diǎn)編號(hào)、單個(gè)中樁樁號(hào),此時(shí)excel 自動(dòng)計(jì)算該中樁對(duì)應(yīng)的極坐標(biāo)放樣數(shù)據(jù)—方位角和距離等;

        第三步:選定開始樁號(hào)、結(jié)束樁號(hào),批量計(jì)算放樣數(shù)據(jù)按鈕。

        4 結(jié)論

        本文通過(guò)創(chuàng)建excel 模板文件解決的問(wèn)題如下:

       ?、賳蝹€(gè)數(shù)據(jù)計(jì)算為了防止輸入錯(cuò)誤采用了下拉列表與Vlookup 函數(shù)組合的方式;

       ?、跒榱送瓿蓡蝹€(gè)數(shù)據(jù)的計(jì)算、格式化自定義了若干函數(shù)并予以引用舉例;

        ③為了完成批量數(shù)據(jù)計(jì)算編制了VBA 程序。

        對(duì)于道路工程施工數(shù)據(jù)數(shù)據(jù)計(jì)算過(guò)程具有高效、防錯(cuò)等作用。本計(jì)算思路不但可以用于施工計(jì)算,也可以用于設(shè)計(jì)計(jì)算。
       

      相關(guān)文章:

      1.淺談公路工程中的成本管理與成本控制論文

      2.淺談技術(shù)與人文論文

      3.淺談信息技術(shù)與學(xué)科課程的整合論文

      4.淺談高中政治調(diào)研型作業(yè)的設(shè)置論文

      5.用Excel進(jìn)行分步成本核算論文

      6.淺談數(shù)字媒體技術(shù)與數(shù)字媒體藝術(shù)的融合論文

      :$C9999,2,F(xiàn)ALSE)中最后一個(gè)參數(shù)—“FALSE”,是決定函數(shù)精確和模糊查找的關(guān)鍵。精確即完全一樣,模糊即包含的意思。第4 個(gè)參數(shù)如果指定值是0 或FALSE 就表示精確查找,而值為1 或TRUE 時(shí)則表示模糊。

        2.1.2 excel 單元格下拉列表的建立

        excel 單元格下拉列表的建立流程(以excel2013 為例):

        數(shù)據(jù)驗(yàn)證→數(shù)據(jù)驗(yàn)證→設(shè)置→序列→來(lái)源→選定所需表單對(duì)應(yīng)的列。

        以設(shè)置導(dǎo)線點(diǎn)的測(cè)站為例(后視點(diǎn)、開始樁號(hào)、結(jié)束樁號(hào)、單個(gè)中樁也需要類似設(shè)置),需要選擇導(dǎo)線點(diǎn)表單的第一列數(shù)據(jù)。

        2.2 自定義函數(shù):數(shù)據(jù)格式、方位角計(jì)算函數(shù)統(tǒng)一的全局常量定義,所有模塊均用到此常量,這樣其他模塊均可以用到常量Pi 的值。原代碼如下:

        Public Const pi = 3.1415926

        2.2.1 數(shù)據(jù)格式函數(shù)

        radtodms(rad)函數(shù)功能:把弧度轉(zhuǎn)變?yōu)槎确置?,度、分均為整?shù),秒為保留一位小數(shù)的數(shù)值。rad 為參數(shù),radtodms 為函數(shù),源代碼如下:

        Function radtodms(rad)

        degree = rad * 180 / pi

        d = Int(degree)

        f = Int((degree - d) * 60)

        s = Int(((degree - d - f / 60) * 3600) * 10) / 10

        radtodms = Str$(d) + "°" + LTrim(Str$(f)) + "′" +

        LTrim(Str$(s)) + "″"

        End Function

        2.2.2 方位角計(jì)算函數(shù)

        fwj(dx, dy)函數(shù),dx、dy 分別為某點(diǎn)相對(duì)于測(cè)站的X、Y 的坐標(biāo)增量;fwj 為對(duì)應(yīng)于dx、dy 的方位角,方位角計(jì)算結(jié)果單位為弧度。dx=0 時(shí),需要單獨(dú)討論。

        Function fwj(dx, dy)

        If dx = 0 Then

        If dy = 0 Then fwj = "出錯(cuò)!"

        If dy > 0 Then fwj = pi / 2

        If dy < 0 Then fwj = pi * 3 / 2

        Else

        xxj = Atn(Abs(dy / dx))

        If dx >= 0 And dy > 0 Then fwj = xxj

        If dx <= 0 And dy > 0 Then fwj = pi - xxj

        If dx <= 0 And dy < 0 Then fwj = pi + xxj

        If dx >= 0 And dy < 0 Then fwj = 2 * pi - xxj

        End If

        End Function

        2.2.3 夾角計(jì)算

        當(dāng)放樣采用極坐標(biāo)夾角方式時(shí),后視方向的坐標(biāo)增量為dtx, dty,中樁方向的坐標(biāo)增量為dx, dy,jiajiao 為計(jì)算結(jié)果,是中樁方向方位角與后視方向方位角的差。

        Function jiajiao(dx, dy, dtx, dty)

        ' 計(jì)算后視方向

        hs = fwj(dtx, dty)

        ' 計(jì)算單個(gè)中樁夾角

        jiajiao = fwj(dx, dy) - hs

        If jiajiao < 0 Then jiajiao = jiajiao + 2 * pi

        If jiajiao > 2 * pi Then jiajiao = jiajiao - 2 * pi

        End Function

        2.3 VBA程序開發(fā)——批量計(jì)算數(shù)據(jù)

        計(jì)算后視方位角,確定計(jì)算范圍,表頭填寫,逐樁方位角計(jì)算、距離計(jì)算、夾角計(jì)算,數(shù)據(jù)回填表格。

        核心技術(shù)是表格的引用。以源代碼中的第五行為例,“Worksheets("主控界面").Cells(4,3)”其他的引用可以參照此。既可以從單元格提取信息(一般提取信息為文本,必要時(shí)需要通過(guò)VAL 函數(shù)轉(zhuǎn)變?yōu)閿?shù)值才能參加計(jì)算)也可以單元格寫入信息。源代碼略。

        3 運(yùn)行過(guò)程

        運(yùn)行總體步驟如下:

        第一步:輸入原始數(shù)據(jù)表單并校核;

        第二步:利用下拉列表選擇測(cè)站點(diǎn)編號(hào)、后視點(diǎn)編號(hào)、單個(gè)中樁樁號(hào),此時(shí)excel 自動(dòng)計(jì)算該中樁對(duì)應(yīng)的極坐標(biāo)放樣數(shù)據(jù)—方位角和距離等;

        第三步:選定開始樁號(hào)、結(jié)束樁號(hào),批量計(jì)算放樣數(shù)據(jù)按鈕。

        4 結(jié)論

        本文通過(guò)創(chuàng)建excel 模板文件解決的問(wèn)題如下:

       ?、賳蝹€(gè)數(shù)據(jù)計(jì)算為了防止輸入錯(cuò)誤采用了下拉列表與Vlookup 函數(shù)組合的方式;

       ?、跒榱送瓿蓡蝹€(gè)數(shù)據(jù)的計(jì)算、格式化自定義了若干函數(shù)并予以引用舉例;

       ?、蹫榱送瓿膳繑?shù)據(jù)計(jì)算編制了VBA 程序。

        對(duì)于道路工程施工數(shù)據(jù)數(shù)據(jù)計(jì)算過(guò)程具有高效、防錯(cuò)等作用。本計(jì)算思路不但可以用于施工計(jì)算,也可以用于設(shè)計(jì)計(jì)算。

      相關(guān)文章:

      1.淺談公路工程中的成本管理與成本控制論文

      2.淺談技術(shù)與人文論文

      3.淺談信息技術(shù)與學(xué)科課程的整合論文

      4.淺談高中政治調(diào)研型作業(yè)的設(shè)置論文

      5.用Excel進(jìn)行分步成本核算論文

      6.淺談數(shù)字媒體技術(shù)與數(shù)字媒體藝術(shù)的融合論文

      412746