999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Excel在儲量地質報告附表排版中的應用

2018-03-30 01:37:08李光明
山東國土資源 2018年4期
關鍵詞:頁面程序

李光明

(山東省地質科學研究院,山東 濟南 250013)

附表是儲量地質報告的重要組成部分。生成格式統(tǒng)一、規(guī)范的附表,是儲量地質報告編寫中的一項重要工作。目前生成附表的方法,一是在Excel附表的基礎上形成Word附表,然后進行排版;二是對Excel附表直接進行排版,并且排版過程都是人工完成的,過程繁瑣,效率低下,難以做到規(guī)范、統(tǒng)一。為了解決以上問題,該文介紹一種在Excel 2010環(huán)境下,利用程序方式,快速高效地進行儲量地質報告附表排版的方法。

1 排版要求

附表排版包括頁面設置、表格格式設置和關鍵字欄目合并。

1.1 頁面設置

頁面布局包括紙張規(guī)格、紙張方向、頁邊距、居中方式、頁眉頁腳。

紙張規(guī)格為A4(297mm×210mm),方向為橫向。根據(jù)《黨政機關公文格式》(GB/T 9704—2012)規(guī)定,標準頁邊距設置見圖1,即左、右邊界寬度為36mm,上、下邊界寬度為27mm。居中方式為水平居中,頁眉、頁腳距上、下端距離為20mm。

圖1 頁邊距設置/mm

1.2 表格格式

頂端標題行:1~3行,包括表題1行、欄目2行。表題行行高20磅,字號16磅;欄目行行高15.25磅,字號9磅。

數(shù)據(jù)區(qū)(表身):行高15.25磅,字號9磅(表寬超過頁寬時,字號自動縮小),每頁包括25行。

頁碼:包括2套頁碼,即在附表冊中的總頁碼和所屬附表的頁次和頁數(shù)。如圖2中附表3,該表共5頁,其第1頁在附表冊中的總頁碼為“- 3 -”(右下角),自身頁碼為“第1頁 共 5 頁”(見右上角)。頁碼設于頁腳和頁眉中。

責任人、日期:設于頁腳中。

單元格邊框線型:默認的線型較粗,為此將其改為細線。

1.3 關鍵字欄目合并

為了便于閱讀和使用,附表中勘查線編號、工程編號、礦體編號、品位等關鍵字欄目常需要進行合并。合并時不允許跨越上一級欄目和頁。

圖3為勘查線編號、工程編號、礦體編號欄目合并前、后對比圖。

圖2 表格格式示例

圖3 關鍵字欄目合并前、后對比圖

2 方法原理

(1)數(shù)據(jù)區(qū)行數(shù)=(第1個水平分頁符的行號-1)-標題行行數(shù),即(PageSetup.HPageBreaks(1).Location.Row-1)-標題行行數(shù)。圖3中為(29-1)-3=25(行)。

(2)每個附表的頁數(shù):利用水平分頁符(HPageBreaks.Count)計算頁數(shù)。如果某個附表的最后1頁滿頁(25行),頁數(shù)即等于HPageBreaks.Count,否則等于HpageBreaks.Count+1。

(3)每一個附表在全部附表中的起始頁碼,等于前繼附表累計頁數(shù)+1。如:該文中附表1為1頁,附表2為1頁,附表3為5頁,則附表4的起始頁碼為(1+1+5)+1=8,即附表4的PageSetup.FirstPageNumber等于8。

在附表冊中的總頁碼(&P)注記在右頁腳中,因此,應將其賦值給PageSetup.RightFooter。

(4)每個附表自身頁碼“第 頁 共 頁”中,前者等于其頁碼(&P)-(PageSetup. FirstPageNumber-1),后者等于該表的頁數(shù)(&N)。其注記在右頁眉中,因此,賦值給PageSetup.RightHeader即可。

(5)使表格不超寬:利用垂直分頁符判斷。若PageSetup.VPageBreaks.Count>0,表示表格超寬,這時縮小字號,直至表格壓縮在1頁中。如字號過小,可適當修改左、右邊距。

3 排版程序

3.1 程序代碼

包括頁面和格式設置程序pPageSetup()、關鍵字欄目合并程序pColumnMerge()。

3.1.1 頁面和格式設置程序

頁面和格式設置程序如下:

SubpPageSetup()'參數(shù)設置nPageWidth=29.7'A4頁面寬度(橫向)nLeftMargin=3.6'左邊距(cm)nRightMargin=3.6'右邊距nTopMargin=2.7'上邊距nBottomMargin=2.7'下邊距nHeaderMargin=2'頁眉nFooterMargin=2'頁腳nCaptionRowHeight=20'標題行行高(磅,7.05mm)nCaptionFontSize=16'標題字號(磅,三號,5.64mm)nWordRowHeight=15.25'數(shù)據(jù)行行高cMaker="智標仁"'制表人(應根據(jù)情況修改制表人及日期)cExaminer="簡姹"'檢查人(應根據(jù)情況修改檢查人及日期)cAuditor="沈河"'審核人(應根據(jù)情況修改審核人及日期)MakeDate="2017年7月29日"'制表日期ExaminationDate="2017年7月30日"'檢查日期AuditDate="2017年7月31日"'審核日期Application.ScreenUpdating=False'屏幕刷新關閉Application.PrintCommunication=True'2010版啟用與打印機通信,否則無法正常執(zhí)行頁眉、頁腳的設置代碼'Application.PrintCommunication=False'2003版關閉與打印機通信,提高代碼運行效率'刪除原目次頁內容Worksheets("目次頁").SelectWithSheets("目次頁") nLines=.UsedRange.Rows.Count .Rows("4:"&nLines).DeleteShift:=xlUp .Rows("4:104").RowHeight=20 .Rows("4:104").Font.Size=10EndWithnSheets=Worksheets.Count'工作表個數(shù)Forsh=4TonSheets'前3個是封面、題名頁和目次頁,不是表 Worksheets(sh).Select WithActiveSheet nWordFontSize=9'數(shù)據(jù)字號(小五號,3.15mm) With.PageSetup .PrintTitleRows="$1:$3"'標題行 .Orientation=xlLandscape'橫向打印模式(xlPortrait縱向打印模式) .PaperSize=xlPaperA4'A4紙 .LeftMargin=Application.CentimetersToPoints(nLeftMargin)'左邊距 .RightMargin=Application.CentimetersToPoints(nRightMargin)'右邊距 .TopMargin=Application.CentimetersToPoints(nTopMargin)'上邊距 .BottomMargin=Application.CentimetersToPoints(nBottomMargin)'下邊距 .HeaderMargin=Application.CentimetersToPoints(nHeaderMargin)'頁眉 .FooterMargin=Application.CentimetersToPoints(nFooterMargin)'頁腳 .CenterHorizontally=True'水平居中 .CenterVertically=False'垂直不居中 EndWith .Range("A4").Select ActiveWindow.FreezePanes=True'凍結1~3行 nLines=.UsedRange.Rows.Count'表的行數(shù) nColumns=.UsedRange.Columns.Count'表的列數(shù)--數(shù)值 cColumns=IIf(nColumns<=26,Chr(64+nColumns),"A"&Chr(64+nColumns-26))'表的列數(shù)--字符,如:A、AA .Rows("1:1").RowHeight=nCaptionRowHeight'標題行行高 .Rows("1:1").Font.Size=nCaptionFontSize'標題行字號 .Rows("2:"&nLines).RowHeight=nWordRowHeight'欄目行、表身行高 .Rows("2:"&nLines).Font.Size=nWordFontSize .Columns("A:"&cColumns).EntireColumn.AutoFit'列自適應寬度 '若表格寬度超過1頁,減小字號,使表格保持在1頁中 wPage1=nPageWidth-nLeftMargin-nRightMargin'頁面理論寬度(cm) wPage2=Application.CentimetersToPoints(wPage1)'頁面理論寬度(磅) nTimes=8 DoWhile.VPageBreaks.Count>0'若表格寬度超過1頁,則縮小 wSheet=.UsedRange.Columns.Width'表格實際寬度(磅) nWordFontSize=Round(nTimes*wPage2/wSheet,1)'計算字號(如字號過小,可適當修改左、右邊距) .Rows("2:"&nLines).Font.Size=nWordFontSize'設置字號 .Columns("A:"&cColumns).EntireColumn.AutoFit'列自適應寬度 nTimes=nTimes-0.5'可酌情修改,如將0.5改為0.25 Loop

該程序同時生成目次頁。

3.1.2 關鍵字欄目合并程序

關鍵字欄目合并程序如下:

SubpColumnMerge()'基本分析結果表關鍵字欄目合并'B列勘查線剖面編號、C列工程編號、D列礦體編號 nRows=ActiveSheet.UsedRange.Rows.Count'表的行數(shù) i=4'表中數(shù)據(jù)行的首行號 Application.DisplayAlerts=False'信息警告關閉 nRowsPerPage=(ActiveSheet.HPageBreaks(1).Location.Row-1)-(i-1)'每頁數(shù)據(jù)的行數(shù) DoWhilei<=nRows'表 nPageRowNo=1'每頁的初始行號 DoWhilenPageRowNo<=nRowsPerPageAndi<=nRows'頁 pmRowNo1=i'剖面的起始行號 pmbh=Cells(i,"B")'剖面編號 DoWhileCells(i,"B")=pmbhAndnPageRowNo<=nRowsPerPageAndi<=nRows '剖面 gcRowNo1=i'工程的起始行號 gcbh=Cells(i,"C")'工程編號 DoWhilegcbh=Cells(i,"C")AndnPageRowNo<=nRowsPerPageAndi<=nRows'工程 ktRowNo1=i'礦體的起始行號 ktbh=Cells(i,"D")'礦體編號 DoWhilektbh=Cells(i,"D")Andgcbh=Cells(i,"C")And_ nPageRowNo<=nRowsPerPageAndi<=nRows'礦體 nPageRowNo=nPageRowNo+1'頁的行號增1 i=i+1'表的行號增1 Loop ktRowNo2=i-1'礦體的終止行號 If""<>ktbhThen'非礦體不合并 Range(Cells(ktRowNo1,"D"),Cells(ktRowNo2,"D")).Merge'礦體編號合并 EndIf Loop Range(Cells(gcRowNo1,"C"),Cells(ktRowNo2,"C")).Merge'工程合并 Loop Range(Cells(pmRowNo1,"B"),Cells(ktRowNo2,"B")).Merge'剖面合并 LoopLoopApplication.DisplayAlerts=True'信息警告開啟EndSub

該程序中,B列為勘查線編號、C列為工程編號、D列為礦體編號。若用戶附表中的列號和程序中的不同,應對程序作相應修改。

3.2 程序操作

3.2.1 程序輸入

分別將程序pPageSetup()、pColumnMerge()輸入到【封面】、【基本分析】模塊代碼窗口中。以pPageSetup()為例,方法如下:

將鼠標置于【封面】標簽之上,點擊右鍵,彈出快捷菜單(圖4),單擊【查看代碼】,顯示【封面】模塊代碼窗口(圖5),將程序代碼輸入其中。

圖4 工作表標簽快捷菜單

圖5 代碼窗口

3.2.2 程序運行

分別在【封面】、【基本分析】模塊代碼窗口中,將光標停留在代碼范圍內,按功能鍵【F5】或運行按鈕(圖5)即可運行。注意應先運行pPageSetup(),再運行pColumnMerge()。

頁面和格式設置程序執(zhí)行完成后,可通過【打印預覽】觀看效果。目次頁和欄目合并結果,可直接瀏覽。

3.2.3 注意事項

(1)操作前,應將原始附表進行備份。

(2)程序執(zhí)行前,應在3.1節(jié)程序中修改制表人、檢查人和審核人及日期。若各附表的責任人不同,應在排版后修改。修改方法如下:

在圖6【頁面布局】選項卡【頁面設置】功能區(qū)中單擊【打印標題】,顯示圖7【頁面設置】對話框,單擊【頁眉/頁腳】/【頁腳】,可進入修改。

圖6 【打印標題】功能組

圖7 【頁面設置】對話框

(3)頁面參數(shù)若需要調整,用戶可在3.1節(jié)程序中進行修改,或在圖7【頁邊距】中進行修改。

(4)【封面】【題名頁】【目次頁】應置于工作簿開始位置(圖4),附表的順序應根據(jù)規(guī)范的規(guī)定進行排列。【目次頁】標簽名稱不可以更改,其他標簽名稱可由用戶自由命名。

(5)若排版后表格較窄,用戶可人工進行調整,包括調整左、右頁邊距,以達到美觀的效果。

(6)將pCellMerge()程序拷貝到其他工作表模塊代碼窗口中,對關鍵字欄目列號作相應修改(或增減),即可實現(xiàn)對其他附表關鍵字欄目的合并操作。

4 結語

該程序在多個儲量地質報告中進行了成功應用,實現(xiàn)了快速排版和版式的規(guī)范、統(tǒng)一。希望該程序能給地質同仁編制地質報告附表提供預期的幫助。

[1] 伍遠高.Excel VBA開發(fā)技術大全[M].北京:清華大學出版社,2009.

[2] 韓家國等編著.Excel VBA從入門到精通[M].北京:化學工業(yè)出版社,2010.

[3] 伍遠高等編著.Excel VBA編程實戰(zhàn)寶典[M].北京:清華大學出版社,2014.

[4] 馮宇,蔣向東,于立紅主編.Excel 2010電子表格制作項目教程[M]. 上海:上海科學普及出版社,2015.

[5] Excel Home編著.Excel 2013應用大全[M]. 北京:人民郵電出版社,2015.

[6] Excel Home編著.Excel 2010 VBA實戰(zhàn)技巧精粹[M].北京:人民郵電出版社,2015.

[7] 劉玉紅,王攀登.Excel 2016高效辦公[M]. 北京:清華大學出版社,2017.

[8] 固體礦產(chǎn)勘查報告格式規(guī)定(DZ/T 0131-1994)[S].

[9] 固體礦產(chǎn)勘查地質資料綜合整理綜合研究技術要求(DZ/T 0079-2015)[S].

[10] 固體礦產(chǎn)勘查工作規(guī)范(GB/T 33444-2016)[S].

猜你喜歡
頁面程序
微信群聊總是找不到,打開這個開關就好了
大狗熊在睡覺
刷新生活的頁面
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
創(chuàng)衛(wèi)暗訪程序有待改進
恐怖犯罪刑事訴訟程序的完善
同一Word文檔 縱橫頁面并存
主站蜘蛛池模板: 国产第二十一页| 久久亚洲国产一区二区| 99热亚洲精品6码| 国产性精品| 亚洲欧美日本国产综合在线| 91娇喘视频| 日韩欧美视频第一区在线观看| 日韩区欧美国产区在线观看 | 日本不卡视频在线| 国产成人高清在线精品| 女人天堂av免费| 精品福利视频导航| 欧美日韩成人| 热思思久久免费视频| 中文字幕无码中文字幕有码在线 | 国产高清在线观看91精品| 国产成人精品一区二区秒拍1o| 伊人色综合久久天天| 91久久精品国产| 亚洲一级毛片免费看| 99青青青精品视频在线| 狠狠色婷婷丁香综合久久韩国| 色成人亚洲| 米奇精品一区二区三区| 国产精品高清国产三级囯产AV| 青青草欧美| 免费又黄又爽又猛大片午夜| 日韩毛片视频| 婷婷在线网站| 国产精品尤物铁牛tv| 91无码国产视频| 欧美视频在线不卡| 国产成人1024精品下载| 亚洲色无码专线精品观看| 国产视频a| 亚洲色欲色欲www网| 五月婷婷亚洲综合| 亚洲第一区在线| 99精品影院| 免费激情网站| 国产亚洲精品自在线| 国产精品久久久精品三级| 高清欧美性猛交XXXX黑人猛交 | 亚洲高清无码久久久| 国产一区二区三区精品欧美日韩| 无码综合天天久久综合网| 九色视频一区| 国产丝袜91| 欧美三级自拍| 欧美日韩在线第一页| a毛片基地免费大全| 激情五月婷婷综合网| 国产亚洲欧美在线专区| 国产精品丝袜视频| 性喷潮久久久久久久久| 欧洲精品视频在线观看| 国产杨幂丝袜av在线播放| 精品视频91| A级毛片高清免费视频就| 91破解版在线亚洲| 亚欧美国产综合| 自拍欧美亚洲| 一区二区三区四区日韩| 欧美自慰一级看片免费| 熟妇人妻无乱码中文字幕真矢织江| 亚洲av中文无码乱人伦在线r| 久久久久国产精品免费免费不卡| 亚洲精品福利视频| 91精品专区| 亚洲精品动漫在线观看| 欧美国产综合色视频| 一区二区影院| 特级aaaaaaaaa毛片免费视频| 激情综合五月网| 91成人在线观看| 国产国产人在线成免费视频狼人色| 一区二区偷拍美女撒尿视频| 2020国产精品视频| 午夜啪啪福利| 天天婬欲婬香婬色婬视频播放| 欧洲一区二区三区无码| 2020国产在线视精品在|