Excel在测量上的应用
EXCEL VBA 在测量中的应用

EXCEL VBA 在测量中的应用作者:阳纯良来源:《科学与财富》2020年第20期一、VBA简介Visual Basic for Applications(VBA)是 Visual Basic 的一种宏語言,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
主要能用来扩展 Windows 的应用程序功能,特别是 Microsoft Office 软件。
在测量中常应用 EXCEl 软件进行处理数据,使用VBA 能提高工作效率,保证准确性。
EXCEl 软件具有使用广泛,操作简单,输入数据简单,在我们测量工作日常中是不可缺少的工具,使用 EXCEl VBA 程序对我们工作如虎添翼,大大简化了大量繁重的重复工作,实现自动化。
以下通过一个小程序,介绍EXCEl VBA 在测量工作中的应用。
二、使用VBA展坐标点把现场实测坐标点展到 CAD 图是我们测量人员最常见的工作任务,在平时测量中我们经常要对实际地物画成 CAD 电子图,需要把现场采的点展到CAD 图上然后根据实际地物外形连接成线,画出地物的外轮廓。
这项工作虽然简单,但是需要我们测量人员细心,坐标数字多,很容易看串行,输入时要细心认真核对才能保证数据准确性,一旦坐标点过多,是一种繁重、乏味的重复工作,极易出错。
一般常规方法是我们直接打开 CAD 用point 命定直接展点,一个接一个输入,工作效率底下。
这种重复的劳动我们使用 EXCEl VBA 轻松解决,提高工作效率。
我们以 office2007和 AutoCAD2008软件作为演示软件,需要安装 Au- toCAD2008、office2007。
首先打开 EXCEL 然后使用快捷键 Alt+F11即进入VBAIDE,打开 VBA 界面,在菜单上依次点击[插入]→[模块],就可以进行代码编辑。
代码如下:Sub ZDApp()On Error Resume Next’忽略错误Set acadApp = GetObject(, "AutoCAD.Application")’检查是否打开 CAD If Err ThenErr.ClearMsgBox " 未检测到打开的 AutoCAD 绘图环境!"Set acadApp = CreateObject("AutoCAD.Application")’打开 CAD 软件End IfSet acaddoc = acadApp.ActiveDocument’定义 CAD 绘图文件 Set MSpace =acaddoc.modelspace’定义 CAD 绘图空间 acadApp.Visible = TrueDim myline As Object Dim mytxt As Object Dim mydoc As Object Dim mylist() As DoubleDim myli(0To2) As DoubleSet myrange = Worksheets(1).Range("B:B")i = Application.WorksheetFunction.Count(myrange) ReDim Preserve mylist(0To2* i -1)’重新定义数组 For j =2To i +1mylist((j -2) *2) = Cells(j,3)’从 C2单元开始读取X 坐标mylist((j -2) *2+1)= Cells(j,2)’从 B2单元开始读取X 坐标myli(0) = Cells(j,3)myli(1) = Cells(j,2)Set mytxt = MSpace.AddText(Cells(j,1), myli,1)’绘制点号NextSet myline = acaddoc.modelspace.AddLightWeightPolyline(mylist)’绘制成多段线End Sub点击保存,在 excel 工作表1中从 B2单元格输入 X 坐标,从 C2单元格输入 Y 坐标运行ZDApp 程序,cad 中绘出所输入坐标点。
EXCEL计算工具MSA测量系统分析软件

EXCEL计算工具MSA测量系统分析软件MSA测量系统分析软件是一种在Excel中运行的工具,用于分析和评估测量系统的可靠性和准确性。
该软件的第三版新功能包括更强大的数据处理能力、更准确的分析结果和用户友好的界面。
MSA测量系统分析软件的主要功能包括以下几个方面:1. 数据输入和处理:软件可以直接从Excel中导入和处理数据,无需繁琐的数据转换和格式调整。
用户可以使用自己的数据表格,也可以使用软件提供的示例数据。
2.测量系统评估:软件可以帮助用户评估测量系统的可靠性和准确性。
它可以计算测量系统的变异性、偏离度和稳定性等指标,以帮助用户了解测量系统的性能。
3.数据分析和图表显示:软件能够对数据进行统计分析,并生成各种图表和图形,如直方图、箱线图、散点图等,直观地显示数据的分布和变异情况。
4. MSA指标计算:软件可以计算各种MSA指标,如Gage R&R、线性度、偏差等指标,帮助用户了解测量系统的准确性和一致性。
5. 结果解释和报告生成:软件提供了详细的结果解释和报告生成功能,用户可以轻松地生成专业的MSA报告,并将结果导出为Excel表格或PDF文件。
6.用户友好的界面:软件采用直观的用户界面,简化了操作步骤,使用户能够快速上手,无需专业的统计知识。
MSA测量系统分析软件的优势在于其在Excel中的运行,使得数据处理和分析更加灵活和方便。
用户可以根据自己的需求进行定制化操作,实现更精确的分析结果。
此外,软件提供了丰富的统计和图表功能,帮助用户更好地理解和解释数据,为决策提供有力支持。
总之,MSA测量系统分析软件是一款功能强大、易于使用的工具,能够帮助用户对测量系统进行全面的评估和分析。
它的第三版新功能进一步提升了数据处理能力和分析结果的准确性,为用户提供了更好的使用体验和决策支持。
Excel在桥梁施工测量中的应用

E cl x e在桥梁施工 测量中的应用
彭兆宏 许芝勇 中铁大桥局集团第四工程有限公司
X ’ =L L /( 0 R LS ) Y ’ :L / 4 {
的施工坐标一致 ,说明计算无误 ,起 到检核的
作用。
3 、结束语 E cl xe 软件有强大的函数计算功能 ,本次讨
389 3 9 83 9 458 1 9 0 8l 3 77724 n
至J 6线路方位角。 D7 缓和曲线范 围内根据下列公式计算
对比仪表统计 给出的话单总数 和软交换系统给 计 算结 果 看 出 ,从 Z H点到 YH点计 算 出 出的 话单 总 数 ,检查 软 交换 有无 掉话 单 的现 YH 点的施工坐标 与H 点 ̄ YH Z I 点计算 出YH点 象。一般要求话单差错率不能超过万分之一 。 J
_ 64 。 7
4 3 0 6
3 9166 7 455 8 0 87 3 77893
3 8 2 49 47 7 1 8 9 。9 3 2 0 5 8 9 。
承台3 D 26 4 3 2 64 7 K6+7 8 6 7682 6
l , H 26 4 8 6 +7 3 05
1 引言 、
简单应用。利9E cl 1 xe软件的计算功能,经过一些 ( R L) L/ 36 R } )① 6 * _(3 ' k * 一 』 简单的操作主要点按计算公 式输 入到表格 中,计 在圆曲线范 围内根据下列公式计算
f】 、许金 良、邓 云潮 ,公路 施工测量手 l聂让
得 出:d1 .0 3 89 =3 2 9 08 , d2=3 30 6 9 弧度 ), .65 6 9(
ZH ( 0 7 8 . l ,4 5 3 .4 ) ,HZ 399 70 6 7 8 00 2
浅谈Excel在矿山全站仪测量数据处理中的应用

浅谈Excel在矿山全站仪测量数据处理中的应用摘要:在没有专业测量计算软件的情况下,使用Excel计算测量数据。
Excel不是专门的施工测量计算软件,但是软件提供了丰富的函数功能,通过灵活运用函数功能能有效的提高工作效率。
关键词: Excel软件;函数;测量Microsoft Excel是微软公司的办公软件Microsoft office的组件之一,是由Microsoft为Windows和Apple Macintosh操作系统的电脑而编写和运行的一款试算表软件。
Excel中所提的函数其实是一些预定义的公式,它们使用一些称为参数的特定数值按特定的顺序或结构进行计算。
测量人员经常使用Excel处理测量数据,但是Excel并未直接提供所需函数,本文主要探讨以下几点:在一个单元格内实现即是度分秒格式并能进行三角函数计算;通过函数实现计算结果奇进偶不进;计算结果直接在CAD中成图。
1、在一个单元格内实现即是度分秒格式并能进行三角函数计算Excel并不直接提供制度分秒格式,只有一个类似的时间格式。
首先把单元格格式改成时间格式,点击格式-单元格格式-自定义,输入[h]"°"mm"'"ss"〃"在该单元格中输入180:20:30将自动显示为180°20'30〃,Excel解读为180小时20分30秒。
在对时间格式的数据进行三角函数计算时,Excel会先将数值换算成以天为单位的数值再计算,如180°20'30〃的天数为180/24+(20/60)/24+(30/3600)/24。
所以在进行加减运算时可以直接加减但在进行三角函数计算时要对数值进行换算,例如要计算180°20'30〃的余弦值,函数应写成:Cos(180°20'30〃×24×PI()/180),其中乘以PI()/180是把角度换算成弧度。
Excel在工程测量数据处理中应用论文

浅谈Excel在工程测量数据处理中的应用摘要:在测量工作中,我们可以通过excel中的函数的应用可以在excel中更好的实现数据处理的功能,能够通过函数开发功能,更加高速的完成数据处理,同时利用自带的vba程序还可以在计算机上模拟施工放样等。
关键词:excel 函数开发工程测量数据处理中图分类号:k826.16 文章标识码:a文章编号:笔者编写了一系列辅助计算软件进行检算测量成果的计算程序,能够计算四等水准测量的内业,左右角的闭合差计算,同时利用vba程序的二次开发在程序中做到了模拟绘制导线图和模拟放样的简易程序,通过excel二次开发,能够降低劳动强度,同时能够加快测量内业的计算速度。
1.四等水准测量(双面尺法)1.1引入本计算程序主要采用的是excel中自带的函数公式编辑,通过函数的编写,能够达到记录成果,检验成果。
在测量时可以随时录入数据,程序会自动纠正由于各种原因导致的错误,能够减少因读数不准确等导致的数据错误,填制数据后如图1所示:图11.2函数设置当完成需要控制的数据量时候,我们需要利用excel自带的函数功能完成上述功能的编写。
前后视距差不能大于十米需要设置条件格式,条件格式设置为大于10m时,单元格底色变为红色,通过条件格式即可实时监控视距差的情况,同时便于下一个点位的调整。
上丝与下丝的差在3mm以内同样通过if函数进行定义,在上图中,通过k列数值进行检验,采用的是条件格式预警,能够直观的检验出双面尺法的读数是否有错误。
在剩余单元格中,主要是涉及一般的加减乘除运算。
2.导线测量(测回法)2.1引入导线测量是平面控制测量的组成部分,是在测区内选定一批平面控制点,组成平面控制网,用精确的方法测量这些点的平面位置,并计算出他们的坐标。
在修筑建筑物时通过上一级控制测量选定的控制点进行放样,确定建筑物的平面位置。
在平面控制测量中主要运用的是两种仪器:经纬仪或全站仪。
笔者就经纬仪的测量数据(左角)编写出相应的内业计算表格。
EXCEL在工程测量计算中的应用

点 A X ,A ” 距离 () (AY ) 、“ M ”及 “ 度分秒 ”是 已知
的 ,求 未 知点 B坐 标 。首先把 度分 秒转 换成度 小
式如图 2 33中的 f -- x窗口栏显示。
t X -
j - )工 旺 数 窗 a 帮 ∞ 键 需 帮 的 每 格 位 具) 据 口[ 助 入 要 助 f ) 噬
盘
3 8 46 2 . 3 5 . 3 73 1 6 . 5 484 7 . 8 17 2 7. 7 992
2 3 4 5
2 40 4 8 7 8 . 4 24839 7 7 . 9 24629 7 7 . 9 24404 7 7 . 6
≯≮ 曩 - 嚣
图 22 1 - -
麟 灞l 翁 誓 ■ _ 蕊 辏 霸囊 镪 薅 。 一 | B 3 ● Q
旆工坐标转大地坐标
虚拟原点( Y) 2 2 5 7 9 x 。: 14.80
点 号
l
Xs l. 0 0ห้องสมุดไป่ตู้0
誊落 髓囊 罄 穗 翳 赣
17 6
Y h 5 3 88 3 2 1. 0 | I
5
9 . 33 22
1 3
1
3 . l l 3 0 6 8 2 2 4 2 3 9 1 . 2 0 7 4 7 4.
5 9 . 7 01 9 7 9
遗
■
≯
i— I ;警0: . J ;
黧 斟露强0 粕赫 尊 % 潞 氇 露 譬
图 2 31 - -
蠡 待 爨裹
n 灞 i蛏 鬟 搿裁 豳 ■圈 翻圈 暖 }
京  ̄('¥} N E I /0 (: ¥勘sm* O 一 ~Z5 B )I( P(1 )c ¥ 2 ( P ^ 0 - ¥2 s { B )8 + sc i i i )
excel在测量不确定度评定中的应用及实例

excel在测量不确定度评定中的应用及实例(实用版)目录1.引言2.Excel 在测量不确定度评定中的应用3.测量不确定度评定的方法及其简化处理4.测量不确定度在符合性评定中的作用AS 对测量不确定度的要求6.Excel 在测量不确定度评定中的应用实例7.结论正文1.引言测量不确定度是指测量结果与被测量真值之间的差异,它是由于测量过程中的各种因素引起的。
在实际测量中,测量不确定度是不可避免的,因此,如何评定和减小测量不确定度是测量科学中的一个重要问题。
近年来,随着计算机技术的发展,Excel 作为一种常用的办公软件,已经在测量不确定度评定中得到了广泛应用。
本文将介绍 Excel 在测量不确定度评定中的应用及实例。
2.Excel 在测量不确定度评定中的应用Excel 在测量不确定度评定中的应用主要体现在以下几个方面:(1)数据处理和分析Excel 可以方便地进行数据处理和分析,可以对测量数据进行统计分析,计算均值、标准差等统计量,方便评定测量不确定度。
(2)不确定度评定Excel 可以用于不确定度评定,包括不确定度的来源分析、传播分析和不确定度合成。
通过 Excel,可以方便地计算不确定度的各项参数,如标准不确定度、扩展不确定度和置信区间等。
(3)测量模型建立Excel 可以方便地建立测量模型,包括线性回归模型、非线性回归模型等。
通过建立测量模型,可以有效地减小测量不确定度,提高测量准确度。
3.测量不确定度评定的方法及其简化处理测量不确定度评定的方法主要包括以下几种:(1)直接评定法直接评定法是根据测量数据的统计特性,直接计算不确定度的方法。
在 Excel 中,可以直接使用统计函数计算均值、标准差等统计量,从而计算不确定度。
(2)间接评定法间接评定法是通过对测量过程中的各种因素进行分析,间接计算不确定度的方法。
在 Excel 中,可以利用数据表和函数进行因素分析和敏感性分析,从而计算不确定度。
(3)简化处理为了简化不确定度评定的过程,可以采用一些简化方法,如忽略某些因素、采用经验值等。
EXCEL测量公式计算

EXCEL测量公式计算在EXCEL中,可以使用各种公式来进行测量和计算。
以下是一些常见的测量公式和如何在EXCEL中使用它们的示例。
1.计数计数公式用于计算数据范围中的非空单元格数量。
在EXCEL中,可以使用COUNT函数来实现。
例如,如果您要计算A1到A10范围中的非空单元格数,可以使用以下公式:=COUNT(A1:A10)2.求和求和公式用于计算数据范围中的数字总和。
在EXCEL中,可以使用SUM函数来实现。
例如,如果您要计算A1到A10范围中的数字总和,可以使用以下公式:=SUM(A1:A10)3.平均值平均值公式用于计算数据范围中的平均值。
在EXCEL中,可以使用AVERAGE函数来实现。
例如,如果您要计算A1到A10范围中的平均值,可以使用以下公式:=AVERAGE(A1:A10)4.最大值和最小值最大值和最小值公式用于计算数据范围中的最大值和最小值。
在EXCEL中,可以使用MAX和MIN函数来实现。
例如,如果您要计算A1到A10范围中的最大值和最小值,可以使用以下公式:=MAX(A1:A10)=MIN(A1:A10)5.百分比百分比公式用于计算一些数值在另一个数值中的百分比。
在EXCEL中,可以使用百分比公式进行计算。
例如,如果您要计算A1单元格中的数值在B1单元格中的百分比,可以使用以下公式:=A1/B16.方差和标准差方差和标准差公式用于衡量数据的离散程度。
在EXCEL中,可以使用VAR和STDEV函数来计算方差和标准差。
例如,如果您要计算A1到A10范围中的方差和标准差,可以使用以下公式:=VAR(A1:A10)=STDEV(A1:A10)这些是一些常见的测量公式和在EXCEL中使用它们的示例。
通过使用这些公式,您可以轻松地计算和测量数据,以便更好地分析和理解数据的特征和趋势。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Excel VBA在工程测量上的应用Excel是大家很熟悉的办公软件,相信大家在工作中经常使用吧。
在测量工作中,你是否感觉到有很不方便的时候?比如,计算一个角度的三角函数值,而角度的单位是60进制的,此时,你一定感到很无奈,因为,Excel本身无法直接计算60进制的角度的三角函数!还有,如果你的工作表中有了点坐标值(二维或者三维),要在CAD中展绘出来,怎样才能又快又直接?不然,就只有拐弯摸角了,很痛苦啊!其实,只要对Excel进行一些挖掘,就可以发现Excel的功能我们还没有好好的利用呢。
Excel本身提供了强大的二次开发功能,只要我们仔细的研究,没有什么能难倒我们的。
下面,好好笔者将带你走近Excel,认识它的强大的二次开发环境VBAIDE,用它来解决上面所提到的问题,就非常容易了。
初识VBAIDE首先,你必须懂得一些简单的VB编程常识。
如果不懂就只有通过其他的途径去学习了。
但用不着深入的研究,只要静下心来,几个小时就可以了。
打开Excel,按Alt+F11即进入VBAIDE,学过VB的人一看就知道那就是熟悉的VB界面。
下面看看如何定义一个函数,然后利用它来解决60进制的角度的三角函数计算问题。
在菜单上依次点击[插入]->[模块],然后输入如下代码Public Const pi = 3.14159265359Public Function DEG(n As Double)Dim A As Double, B As Double, C As Double, D As Double, E As Double, F As Double, G As Double, KA As DoubleD = 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 / 180End Function这样,就定义了一个名字叫DEG的函数,它的作用就是转换60进制的角度为Excel认识的弧度。
编辑完后按Alt+Q即返回Excel,再在某一单元格输入=sin(deg(A1))(A1既可以是单元格的值,也可以是输入的角度值),回车,哈哈,怎么样?结果出来了吧?你可以用计算器检验一下是否正确。
如果出现#NAME?那就要设置一下安全设置。
依次点[工具]->[宏]->[安全性],在安全级选项卡上选择“中”或者“低”,然后关闭后重新打开就可以了,以后只要是60进制的角度,就用它转换,非常方便哦。
工程测量中,经常碰到导线的计算,如果手头没有平差计算程序就只有手工计算了,这时候你曾经想过编个小程序来计算?其实,这很简单,笔者在宛坪(上海至武威)高速公路上做测量监理,因为有大量的导线需要复核,故编写了一个附合导线计算程序,代码很简单,但很实用。
下面是该程序的代码:Sub附合导线计算()Dim m As Integer, n As Integer, ms As Double, gg As Double, sht As Object, xx As Double, yy As Double, S As DoubleSet sht = ThisWorkbook.ActiveSheetDo While sht.Cells(m + 3, 4) <> ""LoopFor n = 3 To m + 2ms = DEG(ms) + DEG(sht.Cells(n, 4))ms = RAD(ms)S = S + sht.Cells(n, 3)Nextms = DEG(ms)gg = RAD(DEG(sht.Cells(3, 5)) + ms - DEG(sht.Cells(3 + m, 5)) - pi * m)xx = 0: yy = 0For n = 4 To m + 2'方位角sht.Cells(n, 5) = RAD(DEG(sht.Cells(n - 1, 5)) + DEG(sht.Cells(n - 1, 4)) - pi - DEG(gg) / m) '坐标增量sht.Cells(n, 6) = Format(sht.Cells(n - 1, 3) * Cos(DEG(sht.Cells(n, 5))), "#####.####")sht.Cells(n, 7) = Format(sht.Cells(n - 1, 3) * Sin(DEG(sht.Cells(n, 5))), "#####.####")'坐标增量和xx = xx + sht.Cells(n, 6)yy = yy + sht.Cells(n, 7)Nextxx = xx + sht.Cells(3, 10) - sht.Cells(m + 2, 10)yy = yy + sht.Cells(3, 11) - sht.Cells(m + 2, 11)sht.Cells(m + 4, 5) = "△α=" & Format(gg, "###.######")sht.Cells(m + 4, 6) = "△X=" & Format(xx, "###.###")sht.Cells(m + 4, 7) = "△Y=" & Format(yy, "###.###")sht.Cells(m + 4, 3) = "∑S=" & Format(S, "###.###")sht.Cells(m + 4, 9) = "△S=" & Format(Sqr(xx * xx + yy * yy), "###.###")sht.Cells(m + 4, 10) = "相对精度1/" & Format(S / Sqr(xx * xx + yy * yy), "######")For n = 4 To m + 2sht.Cells(n, 8) = Format(xx / S * sht.Cells(n - 1, 3), "###.####")sht.Cells(n, 9) = Format(yy / S * sht.Cells(n - 1, 3), "###.####")NextFor n = 4 To m + 1sht.Cells(n, 10) = sht.Cells(n - 1, 10) + sht.Cells(n, 6) - sht.Cells(n, 8)sht.Cells(n, 11) = sht.Cells(n - 1, 11) + sht.Cells(n, 7) - sht.Cells(n, 9)NextColumns("F:K").SelectSelection.NumberFormatLocal = "0.000_ "End SubPublic Function RAD(Nu As Double) As DoubleDim A As Double, B As Double, C As Double, D As Double, E As Double, F As Double, G As Double, p As DoubleD = Abs(Nu)p = 180# / piG = p * 60#A = Int(D * p)B = Int((D - A / p) * G)W = BC = (D - A / p - B / G) * 20.62648062RAD = (C + A + B / 100) * FEnd Function值得注意的是,前面提到的DEG函数别忘记加进去。
如果自己定义一个名字叫“计算”的按钮,指定此工具的宏为“单一附合导线计算”,那么,只要按下面的格式输入原始数据(斜体是输入的),点“计算”就可以得到计算结果了。
所有的过程都是自动的,无须再手工填写,是不是很方便?下面我们就来解决上面提到的与CAD的连接和通讯问题。
进入VBAIDE,按[工具]->[引用],找到可使用的引用,在“AutoCAD2000类型库”的左边打钩,点确定就行了。
在模块中输入以下代码:Global Sheet As Object, acadmtext As acadmtext, fontHight As DoubleGlobal xlBook As Excel.WorkbookGlobal p0(2) As Double, p1(2) As Double, p2(2) As DoubleGlobal acadApp As AcadApplicationGlobal acadDoc As AcadDocumentGlobal acadPoint As acadPointGlobal number As IntegerPublic Type ptn As Integerpt(2) As DoubleGlobal pt() As ptGlobal text1 As AcadTextGlobal CAD As ObjectGlobal p(2) As Double, i As Integer, j As IntegerGlobal h As Integer, l As IntegerPublic Function Get_ACAD(Dwt As String) As BooleanDim YER As IntegerOn Error Resume NextSet acadApp = GetObject(, "AutoCAD.Application")If Err ThenErr.ClearSet acadApp = CreateObject("AutoCAD.Application")If Err ThenMsgBox Err.DescriptionOn Error GoTo 0Get_ACAD = FalseExit FunctionEnd IfEnd IfOn Error GoTo 0Set acadDoc = acadApp.ActiveDocumentacadApp.Visible = TrueGet_ACAD = TrueDim typeFace As StringDim Bold As BooleanDim Italic As BooleanDim charSet As LongDim PitchandFamily As LongacadDoc.ActiveTextStyle.GetFont typeFace, Bold, Italic, charSet, PitchandFamily acadDoc.ActiveTextStyle.SetFont "宋体", Bold, Italic, charSet, PitchandFamilyEnd FunctionSub 显示对话框()Form1.Show (0)End SubPublic Function Draw_Point(Point() As Double) As acadPointSet Draw_Point = acadDoc.ModelSpace.AddPoint(Point)Draw_Point.UpdateEnd FunctionPublic Sub Set_layer(s As String)Dim layerObj As AcadLayerSet layerObj = yers.Add(s)acadDoc.ActiveLayer = layerObjEnd Sub再按以下模式做个对话框:窗体的名字就叫“Form1”双击“展点”按钮,输入以下代码:Dim p0(2) As Double, p1(2) As Double, p2(2) As DoubleDim T1 As Double, T2 As Double, T3 As Double, T4 As Double Public ne As Integer, sp As Single, cz As SingleCall Get_ACAD("")Dim txt As AcadTextDim la As AcadLayerFor Each Layer In acadDoc.ModelSpaceNextCall Set_layer("zdh")Set Sheet = ThisWorkbook.ActiveSheetDim i As IntegerDo While Sheet.Cells(i + 1, 3) <> "" Or Sheet.Cells(i + 1, 1) <> ""If Sheet.Cells(i + 1, 3) = "" Or Sheet.Cells(i + 1, 4) = "" Then GoTo II With Sheetp1(0) = .Cells(i + 1, 3).Valuep1(1) = .Cells(i + 1, 4).Valuep1(2) = .Cells(i + 1, 5).ValueEnd Withp(0) = p1(0)p(1) = p1(1)Call Set_layer("ZDH")Call Draw_Point(p1)fontHight = TextBox5.ValueIf Cells(i + 1, 2) = "" Then GoTo ooSet txt = acadDoc.ModelSpace.AddText(Cells(i + 1, 2), p, fontHight) txt.Color = acMagentaoo:If Cells(i + 1, 5) = "" Then GoTo IISet_layer ("GCD")p(1) = p1(1) - fontHightSet txt = acadDoc.ModelSpace.AddText(Format(Cells(i + 1, 5), "00.0"), p, fontHight)txt.Color = acMagentaII:i = i + 1LoopEnd Sub当然,你在Excel上同样可以再加个工具按钮,比如叫“展点”,指定宏为“显示对话框”,只要你的Excel有了X,Y或者X,Y,Z(格式如下表),点击“展点”就可以自动启动A utoCAD展点啦!当然,如果A utoCAD已经启动,就直接在已经打开的A utoCAD文档中展点,展点完毕后,会显示一个对话框,提示“展点完毕“,再切换到A utoCAD看看,你所要展的点是否已经出现了?如果没有输入错误,应该可以得到满意的结果。