• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于VBA的農(nóng)村集體土地確權(quán)項(xiàng)目中地籍調(diào)查表的批量處理

    2018-12-31 00:00:00黃勇
    大科技·C版 2018年9期

    摘 要:Visual Basicfor Applications(VBA)是Visual Basic的一種宏語言,是微軟開發(fā)出來在其桌面應(yīng)用程序中執(zhí)行通用的自動化(OLE)任務(wù)的編程語言。本文介紹了某縣農(nóng)村集體土地所有權(quán)確權(quán)登記發(fā)證項(xiàng)目中地籍調(diào)查表批量處理的相關(guān)難題,并結(jié)合實(shí)例,利用EXCELVBA編寫了若干代碼進(jìn)行處理。結(jié)果表明,基于EXCELVBA的編程方法在批量處理地籍調(diào)查表的工作中能大大提高效率,并能減少出錯(cuò)幾率。

    關(guān)鍵詞:集體土地確權(quán);地籍調(diào)查表;VBA

    中圖分類號:F321.1 文獻(xiàn)標(biāo)識碼:A 文章編號:1004-7344(2018)26-0319-02

    1 前 言

    EXCEL VBA是EXCEL的宏編輯語言,是基于Visual Basic for Windows發(fā)展而來,VBA提供了面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,易于學(xué)習(xí)掌握。

    在某縣農(nóng)村集體土地確權(quán)項(xiàng)目內(nèi)業(yè)過程中,需要對數(shù)據(jù)庫軟件生成的海量以宗地為單位的不完善的地籍調(diào)查表進(jìn)行處理,包括增加共用面積分?jǐn)偙肀怼⒉鸱止灿腥嗣Q、填寫分?jǐn)偯娣e、填寫調(diào)查人、調(diào)查日期、修改部分錯(cuò)誤及打印成PDF等工作。

    2 實(shí)例分析

    某縣農(nóng)村集體土地所有權(quán)數(shù)據(jù)庫涉及8個(gè)鄉(xiāng)鎮(zhèn),33248宗地。建庫軟件(蒼穹)自動生成了33248份格式統(tǒng)一的《地籍調(diào)查表》。由于入庫數(shù)據(jù)缺陷、建庫軟件的不完善和追加要求等原因,在現(xiàn)有的地籍調(diào)查表基礎(chǔ)上需要進(jìn)行一系列修改,具體有下面幾個(gè)方面。

    (1)增加共用面積分?jǐn)偙?。根?jù)要求,每份地籍調(diào)查表在已有的“封面”、“基本信息”、“草圖”、“調(diào)查審核”四個(gè)工作表后額外增加一個(gè)“共用面積分?jǐn)偙怼?,且按相?yīng)要求填寫表格中的內(nèi)容,特別是宗地存在共有人的情況下,需對共有人進(jìn)行拆分,并分別統(tǒng)計(jì)獨(dú)有面積。

    (2)補(bǔ)完表格缺失的內(nèi)容,并修改錯(cuò)誤的信息。主要針對“調(diào)查審核”表中,錯(cuò)誤的日期,未填寫的人名、日期等數(shù)據(jù)。

    (3)打印地籍調(diào)查表。需對每個(gè)修改完畢的EXCEL格式的地籍調(diào)查表,按照工作表的順序打印成對應(yīng)名稱的獨(dú)立PDF文件。

    3 VBA解決方案

    針對所需要求,設(shè)計(jì)簡易可行的VBA代碼對地籍調(diào)查表進(jìn)行批量操作。下面為主要代碼(部分)。

    3.1 增加共用面積分?jǐn)偙聿⑻顚憙?nèi)容

    (1)增加表格

    Worksheets.Add after:=Worksheets(\"調(diào)查審核\")

    ActiveSheet.Name = \"共用面積分?jǐn)偙韁"

    (2)設(shè)置表格的基本樣式

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"a1:E1\").Merge

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"a1\").ColumnWidth = 15.5

    Set RNG = Worksheets(\"共用面積分?jǐn)偙韁").Range(\"A1:E23\")

    RNG.Borders.LineStyle = xlContinuous

    (3)各單元格賦值

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"a4\").Value = \"宗地面積/m2\"

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"B4\").Value _

    = Worksheets(\"基本信息\").Range(\"D23\").Value

    (4)提取權(quán)利人中的共有人名稱(權(quán)利人名稱內(nèi)用逗號分隔的為共有人)

    Dim z ,s

    z = UBound(Split(Worksheets(\"基本信息\").Range(\"b2\"), \",\", , vbTextCompare))

    s = Worksheets(\"共用面積分?jǐn)偙韁").Range(\"B3\").Value

    If z > 0 Then

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"B6\").Value _

    = Worksheets(\"共用面積分?jǐn)偙韁").Range(\"B3\").Value

    k = 1

    m = 1

    For j = 1 To Len(s)

    If Mid(s, j, 1) = \",\" Then

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"B\" Trim(6 + m)).Value _

    = Mid(s, k, j - k)

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"C\" Trim(6 + m)).Value _

    = Worksheets(\"共用面積分?jǐn)偙韁").Range(\"B4\").Value / (z + 1)

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"D\" Trim(6 + m)).Value _

    = Worksheets(\"共用面積分?jǐn)偙韁").Range(\"B4\").Value / (z + 1)

    Worksheets(\"共用面積分?jǐn)偙韁").Range(\"E\" Trim(6 + m)).Value = 0

    k = j + 1

    m = m + 1

    End If

    (5)填寫日期和人員,并修改錯(cuò)誤。

    未填寫的內(nèi)容直接進(jìn)行單元格賦值,對于權(quán)屬調(diào)查記事里的錯(cuò)誤日期,采用查找替換的方式處理。為方便操作,添加一個(gè)按鈕和6個(gè)文本框。

    部分代碼如下:

    Worksheets(\"調(diào)查審核\").Range(\"E16\").Value = TextBox2.Text '調(diào)查日期

    Worksheets(\"調(diào)查審核\").Range(\"C16\").Value = TextBox1.Text '調(diào)查員

    Dim str1$, str2$

    str1 = Worksheets(\"調(diào)查審核\").Range(\"b2\").Value

    str2 = Replace(str1, TextBox5.Text, TextBox6.Text, 1, 2)

    Worksheets(\"調(diào)查審核\").Range(\"b2\").Value = str2

    (6)批量修改及打印地籍調(diào)查表。

    把以上的代碼在所有的地籍調(diào)查表中執(zhí)行一遍,并把每個(gè)EXCEL格式的地籍調(diào)查表,打印成對應(yīng)文件名的PDF文件。

    如文件名為“431321012028JA00018地籍調(diào)查表A4.xls”,打印為“431321012028JA00018地籍調(diào)查表A4.pdf”。代碼如下:

    Dim MyData As DataObject

    Dim mypath$, myname$

    mypath = ThisWorkbook.Path \"\\"

    myname = Dir(mypath myname)

    Do While myname <> \"\"

    If myname <> ThisWorkbook.Name Then

    Workbooks.Open Filename:=mypath myname

    Set MyData = New DataObject

    MyData.SetText Left(myname, Len(myname) - 4)

    MyData.PutInClipboard

    ActiveWorkbook.PrintOut Copies:=1, Collate:=True

    ActiveWorkbook.Save

    ActiveWorkbook.Close

    End If

    myname = Dir

    Loop

    4 結(jié) 語

    在集體土地確權(quán)項(xiàng)目中的地籍調(diào)查表處理過程中,EXCEL VBA完成了對所需要操作的批量處理。使用正確的VBA代碼,能大大提高工作效率,并能減少人為出錯(cuò)的概率,且有較強(qiáng)的實(shí)用性。

    收稿日期:2018-8-10

    灌南县| 鄂托克旗| 凤山县| 柳江县| 甘南县| 台东市| 湖北省| 吴江市| 叶城县| 化德县| 芦溪县| 金乡县| 通江县| 台中县| 尤溪县| 通城县| 华坪县| 海晏县| 达拉特旗| 屯留县| 鄂温| 柳河县| 衡山县| 济源市| 安宁市| 南岸区| 甘肃省| 特克斯县| 景洪市| 探索| 库车县| 平果县| 上杭县| 鄂州市| 临沭县| 巴彦县| 岐山县| 明水县| 五原县| 桦甸市| 柞水县|