收藏 分销(赏)

1261-编制直线曲线及转角表.pptx

上传人:a199****6536 文档编号:4911931 上传时间:2024-10-19 格式:PPTX 页数:27 大小:324.08KB
下载 相关 举报
1261-编制直线曲线及转角表.pptx_第1页
第1页 / 共27页
1261-编制直线曲线及转角表.pptx_第2页
第2页 / 共27页
1261-编制直线曲线及转角表.pptx_第3页
第3页 / 共27页
1261-编制直线曲线及转角表.pptx_第4页
第4页 / 共27页
1261-编制直线曲线及转角表.pptx_第5页
第5页 / 共27页
点击查看更多>>
资源描述

1、第6章 编制直线、曲线及转角表程序设计方法 6.1.1 6.1.1 程序功能程序功能 根根据据平平面面设设计计的的结结果果自自动动编编制制直直线线、曲曲线线及及转转角角表表,并并以以Excel文件形式保存。文件形式保存。6.1.2 6.1.2 设计资料设计资料 本程序需要两个数据文件资料:本程序需要两个数据文件资料:(1)设计参数资料)设计参数资料Sjcszl.dat:路段名称:路段名称 (2)平面设计结果数据)平面设计结果数据Zqzbsj.dat6.1 6.1 概概概概 述述述述VB自动制表自动制表可用方法可用方法 使用汉字库中的制表符使用汉字库中的制表符 制表制表利用利用VB报表设计器(报

2、表设计器(DataReport)功能)功能VB调用调用Excel电子表格电子表格 利用利用AutoCAD以图形格式绘出设计表格以图形格式绘出设计表格6.1.3 6.1.3 自动制表程序设计常用方法自动制表程序设计常用方法ActiveX部件部件Microsoft Excel 9.0 Object Library Microsoft Office 2000Microsoft Excel 11.0 Object Library Microsoft Office 20036.2 VB调用调用Excel自动制表的基本原理与技术支持自动制表的基本原理与技术支持6.2.1 添加对部件的引用添加对部件的引用

3、基本原理:基本原理:使使用用VB的的ActiveX部部件件,获获取取对对Excel进进行行操操作作的的控控制制句句柄柄,直直接接控控制制Excel的一系列操作。的一系列操作。Activex部部件件简简称称为为部部件件,是是一一段段可可重重复复使使用用的的编编程程代代码码和和数数据据,它它是是由由Activex技技术术所所创创建建的的由由一一个个或或多多个个对对象象组组成成的的。使使用用Activex部部件,可以使件,可以使VB应用程序具有应用程序具有Excel一样的分析和计算功能。一样的分析和计算功能。6.2.2 6.2.2 用用用用VBVB创建外部创建外部创建外部创建外部EXCELEXCEL

4、对象对象对象对象 1.声明对象变量声明对象变量 在在添添加加了了对对部部件件的的引引用用后后,必必须须先先声声明明对对象象变变量量,然然后后才才能能被被引引用用。例如,在应用程序中要调用例如,在应用程序中要调用Excel,就应声明类,就应声明类Excel Application:代码为:代码为:Dim xlApp As Excel.Application 2.将对象引用赋予变量将对象引用赋予变量(引用引用)对对象象的的引引用用可可用用Set语语句句实实现现,使使用用关关键键字字New或或CreatObject将将对对象象引引用赋予变量。用赋予变量。启启动动Microsoft Excel,并并创

5、创建建变变量量xlApp来来引引用用一一个个Application类类的的对对象象,代码如下:代码如下:Dim xlApp As Excel.Application Set xlApp=New Excel.Application3.打开工作簿打开工作簿Workbooks:即打开:即打开Excel文件文件打开一个新建的工作簿打开一个新建的工作簿 xlApp.WorkBooks.Add 未命名未命名两种情况两种情况打开已存在的工作簿:打开已存在的工作簿:如如test.xls xlApp.Workbooks.Open(c:test.xls)4.4.工作簿及工作表操作工作簿及工作表操作操操作作方法方法

6、属性属性层次层次命令命令功能功能命令命令功能功能命令命令功能功能1Open打开打开Visible可见可见Application应用应用2Add新建新建Value单元格值单元格值Workbooks工作簿工作簿3Select选定选定Font.Name字型名字型名Worksheets工作表工作表4Copy复制复制Size字型尺寸字型尺寸Range范围范围5Paste粘贴粘贴Bold加粗加粗Cells单元格单元格6Delete 删除删除LineStyle线型线型Rows行行7Close关闭关闭RowHeight行高行高 Colums列列8Quit退出退出ColumnWidth列宽列宽9Save保存保存

7、10SaveAs另存另存11Formula公式公式12Cut剪切剪切6.36.3 编制直线、曲线及转角表程序编制直线、曲线及转角表程序编制直线、曲线及转角表程序编制直线、曲线及转角表程序设计方法与步骤设计方法与步骤设计方法与步骤设计方法与步骤 6.3.1 6.3.1 控制窗体设计控制窗体设计6.3.2 6.3.2 程序设计流程框图程序设计流程框图6.36.3 编制直线、曲线及转角表程序编制直线、曲线及转角表程序编制直线、曲线及转角表程序编制直线、曲线及转角表程序设计方法与步骤设计方法与步骤设计方法与步骤设计方法与步骤 6.3.1 6.3.1 控制窗体设计控制窗体设计点击运点击运行行6.36.3

8、 编制直线、曲线及转角表程序编制直线、曲线及转角表程序编制直线、曲线及转角表程序编制直线、曲线及转角表程序设计方法与步骤设计方法与步骤设计方法与步骤设计方法与步骤 6.3.1 6.3.1 控制窗体设计控制窗体设计6.3.2 6.3.2 程序设计流程框图程序设计流程框图 在母表下面复制一张空表,供填入数据在母表下面复制一张空表,供填入数据 如果本页已满,在其下面再复制一张空表如果本页已满,在其下面再复制一张空表 声明对象变量及一般变量,读入基础数据声明对象变量及一般变量,读入基础数据从平面设计结果文件从平面设计结果文件Zqzbsj.dat获取计算数据获取计算数据 逐行填入数据(对指定单元格赋值)

9、逐行填入数据(对指定单元格赋值)删除空表,保存并关闭删除空表,保存并关闭Excel表格文件表格文件zjb.xls 关闭数据文件,结束计算关闭数据文件,结束计算非文件尾非文件尾文件尾文件尾编制直曲线表计算程序流程框图打开打开Excel表格文件,并复制整页表格到粘贴板表格文件,并复制整页表格到粘贴板 按照设计要求编制按照设计要求编制Excel表格文件表格文件(空表空表)复制预先编制的复制预先编制的Excel文件文件作为编辑文件作为编辑文件(zjb.xls)在母表下面复制一张空表,供填入数据在母表下面复制一张空表,供填入数据 如果本页已满,在其下面再复制一张空表如果本页已满,在其下面再复制一张空表

10、声明对象变量及一般变量,读入基础数据声明对象变量及一般变量,读入基础数据从平面设计结果文件从平面设计结果文件Zqzbsj.dat获取计算数据获取计算数据 逐行填入数据(对指定单元格赋值)逐行填入数据(对指定单元格赋值)删除空表,保存并关闭删除空表,保存并关闭Excel表格文件表格文件zjb.xls 关闭数据文件,结束计算关闭数据文件,结束计算非文件尾非文件尾文件尾文件尾编制直曲线表计算程序流程框图打开打开Excel表格文件,并复制整页表格到粘贴板表格文件,并复制整页表格到粘贴板 按照设计要求编制按照设计要求编制Excel表格文件表格文件(空表空表)复制预先编制的复制预先编制的Excel文件文件

11、作为编辑文件作为编辑文件(zjb.xls)Dim xlApp As Excel.ApplicationPrivate Sub Command1_Click()Dim path As String path=Text1.text Open path+sjcszl.dat For Input As#1 Input#1,ldmc Close FileCopy App.path+直线、曲线及转角表直线、曲线及转角表.xls,path+zjb.xls“Open path+zqzbsj.dat For Input As#3 在母表下面复制一张空表,供填入数据在母表下面复制一张空表,供填入数据 如果本页已满

12、,在其下面再复制一张空表如果本页已满,在其下面再复制一张空表 声明对象变量及一般变量,读入基础数据声明对象变量及一般变量,读入基础数据从平面设计结果文件从平面设计结果文件Zqzbsj.dat获取计算数据获取计算数据 逐行填入数据(对指定单元格赋值)逐行填入数据(对指定单元格赋值)删除空表,保存并关闭删除空表,保存并关闭Excel表格文件表格文件zjb.xls 关闭数据文件,结束计算关闭数据文件,结束计算非文件尾非文件尾文件尾文件尾编制直曲线表计算程序流程框图打开打开Excel表格文件,并复制整页表格到粘贴板表格文件,并复制整页表格到粘贴板 按照设计要求编制按照设计要求编制Excel表格文件表格

13、文件(空表空表)复制预先编制的复制预先编制的Excel文件文件作为编辑文件作为编辑文件(zjb.xls)Set xlApp=CreateObject(excel.application)xlApp.Visible=False 关闭关闭Excel显示显示 xlApp.Workbooks.Open(path+zjb.xls)xlApp.Sheets(1).Select 选定当前工作表选定当前工作表 Range(“A1:w37”).Copy 复制选定范围到粘贴板复制选定范围到粘贴板Dim xlApp As Excel.ApplicationPrivate Sub Command1_Click()Di

14、m path As String path=Text1.text Open path+sjcszl.dat For Input As#1 Input#1,ldmc Close FileCopy App.path+直线、曲线及转角表直线、曲线及转角表.xls,path+zjb.xls“Open path+zqzbsj.dat For Input As#3 在母表下面复制一张空表,供填入数据在母表下面复制一张空表,供填入数据 如果本页已满,在其下面再复制一张空表如果本页已满,在其下面再复制一张空表 声明对象变量及一般变量,读入基础数据声明对象变量及一般变量,读入基础数据从平面设计结果文件从平面设计

15、结果文件Zqzbsj.dat获取计算数据获取计算数据 逐行填入数据(对指定单元格赋值)逐行填入数据(对指定单元格赋值)删除空表,保存并关闭删除空表,保存并关闭Excel表格文件表格文件zjb.xls 关闭数据文件,结束计算关闭数据文件,结束计算非文件尾非文件尾文件尾文件尾编制直曲线表计算程序流程框图打开打开Excel表格文件,并复制整页表格到粘贴板表格文件,并复制整页表格到粘贴板 按照设计要求编制按照设计要求编制Excel表格文件表格文件(空表空表)复制预先编制的复制预先编制的Excel文件文件作为编辑文件作为编辑文件(zjb.xls)Row=38:hs=0:pg=0 Do While Not

16、 EOF(3)If Row 36 Then Cells(38+hs,1).Select ActiveSheet.Paste 粘贴空表粘贴空表 Row=8:hs=hs+37:pg=pg+1 For i=7 To 36 xlApp.Rows(i+hs).RowHeight=19 Next i End If 在母表下面复制一张空表,供填入数据在母表下面复制一张空表,供填入数据 如果本页已满,在其下面再复制一张空表如果本页已满,在其下面再复制一张空表 声明对象变量及一般变量,读入基础数据声明对象变量及一般变量,读入基础数据从平面设计结果文件从平面设计结果文件Zqzbsj.dat获取计算数据获取计算数据

17、 逐行填入数据(对指定单元格赋值)逐行填入数据(对指定单元格赋值)删除空表,保存并关闭删除空表,保存并关闭Excel表格文件表格文件zjb.xls 关闭数据文件,结束计算关闭数据文件,结束计算非文件尾非文件尾文件尾文件尾编制直曲线表计算程序流程框图打开打开Excel表格文件,并复制整页表格到粘贴板表格文件,并复制整页表格到粘贴板 按照设计要求编制按照设计要求编制Excel表格文件表格文件(空表空表)复制预先编制的复制预先编制的Excel文件文件作为编辑文件作为编辑文件(zjb.xls)Input#3,num,qxlx,jd,pj_r,r,ls,ls2,t,t2,l,e,j,zh,hy,qz,y

18、h,hz,zxjl,jdjl,fwj If qxlx=1 Then Input#1,jda,pja_r,jdb pj_dms=rad_dms(Abs(pj_r)fwj_dms=rad_dms(fwj)弧度化度分秒弧度化度分秒 If Sgn(pj_r)=1 Then pj_dms=右右+pj_dms Else pj_dms=左左+pj_dms End If zh_s=km_lcz(zh):hy_s=km_lcz(hy)qz_s=km_lcz(qz):yh_s=km_lcz(yh)hz_s=km_lcz(hz)For i=7 To 36 xlApp.Rows(i+hs).RowHeight=19

19、Next i End If 在母表下面复制一张空表,供填入数据在母表下面复制一张空表,供填入数据 如果本页已满,在其下面再复制一张空表如果本页已满,在其下面再复制一张空表 声明对象变量及一般变量,读入基础数据声明对象变量及一般变量,读入基础数据从平面设计结果文件从平面设计结果文件Zqzbsj.dat获取计算数据获取计算数据 逐行填入数据(对指定单元格赋值)逐行填入数据(对指定单元格赋值)删除空表,保存并关闭删除空表,保存并关闭Excel表格文件表格文件zjb.xls 关闭数据文件,结束计算关闭数据文件,结束计算非文件尾非文件尾文件尾文件尾编制直曲线表计算程序流程框图打开打开Excel表格文件,

20、并复制整页表格到粘贴板表格文件,并复制整页表格到粘贴板 按照设计要求编制按照设计要求编制Excel表格文件表格文件(空表空表)复制预先编制的复制预先编制的Excel文件文件作为编辑文件作为编辑文件(zjb.xls)n Cells(Row+hs,1).Value=numn Cells(Row+hs,2).Value=jd_sn Cells(Row+hs,3).Value=Format(x_jd,0.00)n Cells(Row+hs,4).Value=Format(y_jd,0.00)If r 0 Then Cells(Row+hs,5).Value=pj_dms Cells(Row+hs,11

21、).Value=Format(j,0.00)If zh hy Then Cells(Row+hs,12).Value=zh_s End If Cells(Row+hs,13).Value=hy_s If hz yh Then Cells(Row+hs,16).Value=hz_s End If End If If NoFst=1 Then zxjl=zh-hz0:jdjl=jd-jd0+j0 Cells(Row+hs,17).Value=Format(zxjl,0.00)Cells(Row+hs,18).Value=Format(jdjl,0.00)End If Cells(Row+hs,19

22、).Value=fwj_dms Row=Row+1 Loop 在母表下面复制一张空表,供填入数据在母表下面复制一张空表,供填入数据 如果本页已满,在其下面再复制一张空表如果本页已满,在其下面再复制一张空表 声明对象变量及一般变量,读入基础数据声明对象变量及一般变量,读入基础数据从平面设计结果文件从平面设计结果文件Zqzbsj.dat获取计算数据获取计算数据 逐行填入数据(对指定单元格赋值)逐行填入数据(对指定单元格赋值)删除空表,保存并关闭删除空表,保存并关闭Excel表格文件表格文件zjb.xls 关闭数据文件,结束计算关闭数据文件,结束计算非文件尾非文件尾文件尾文件尾编制直曲线表计算程序流

23、程框图打开打开Excel表格文件,并复制整页表格到粘贴板表格文件,并复制整页表格到粘贴板 按照设计要求编制按照设计要求编制Excel表格文件表格文件(空表空表)复制预先编制的复制预先编制的Excel文件文件作为编辑文件作为编辑文件(zjb.xls)For i=1 To pg Cells(2+i*37,3).Value=ldmc Cells(2+i*37,19).Value=第第+Format(i)+页页 Cells(2+i*37,20)=共共+Format(pg)+页页 Next i Range(A1:w37).Delete 删除空表删除空表 ActiveCell.Select 清除复制后的背

24、景标志清除复制后的背景标志 xlApp.ActiveWorkbook.close True 缺省缺省Ture,屏幕提示保存与否,屏幕提示保存与否 MsgBox(计算结束!计算结束!)CloseEnd SubPrivate Sub Form_Load()Set xlApp=CreateObject(“Excel.application)End Sub程序清单程序清单Function km_lcz(lcz)k=Int(lcz/1000):m=lcz-k*1000 km=Format(k)mt=Format(m,000.00)km_lcz=K+km+mtEnd Function自定义函数:里程转换成标准格式自定义函数:里程转换成标准格式K0+000.00K0+000.00Function rad_dms(rad)If rad=360 Then d=d-360 If s=60 Then s=0:m=m+1 If m=60 Then m=0:d=d+1 rad_dms=Format(d,0)+Format(m,00)+Format(s,00)End Function自定义函数:自定义函数:弧度转换为度分秒弧度转换为度分秒

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服