vba中怎样实现拾取坐标系统点,把坐标值付出

您好,我想知道如何利用vba查询autocad中的任意坐标值,并在cad中以text的形式输出出来。_百度知道
您好,我想知道如何利用vba查询autocad中的任意坐标值,并在cad中以text的形式输出出来。
我有更好的答案
按默认排序
按快捷方式,调出输入框。输出文本文件。
用LISP语言就可以了
个合同会让他发挥提供任何人提货人
其他类似问题
autocad的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁如何用vba实现在EXCEL固定区域坐标内点击单元格,显示日期控件?_百度知道
如何用vba实现在EXCEL固定区域坐标内点击单元格,显示日期控件?
提问者采纳
试验通过测试。以在E列显示日期时间选择控件为例:首先从工具箱选择日期时间选择控件,并在工作表中绘制一个控件实例:DTPicker1在工作表代码页写入如下代码Private Sub Worksheet_SelectionChange(ByVal Target As Range)On Error Resume NextSet rag = Application.Intersect(Target, Range(&E:E&))If rag Is Nothing Or rag.Address && Target.Address Then'这里的判断显得有些蹩脚,应该有更好办法,希望高手补充!ElseWit穿定扁剐壮溉憋税铂粳h DTPicker1.Top = Target.Cells(1).Top.Left = Target.Cells(1).Left.Width = Target.Cells(1).Width.Height = Target.Cells(1).Height'设置控件与所选单元格关联:.LinkedCell = Target.Cells(1).Address.Visible = TrueEnd WithEnd IfEnd Sub 修正代码:Private Sub Worksheet_SelectionChange(ByVal Target As Range)On Error Resume NextSet rag = Application.Intersect(Target, Range(&E:E&))'主要是这句有所区别If (Not rag Is Nothing) ThenIf Target.Address = rag.Address ThenWith DTPicker1.Visible = True.Top = Target.Cells(1).Top.Left = Target.Cells(1).Left.Width = Target.Cells(1).Width.Height = Target.Cells(1).Height.LinkedCell = Target.Cells(1).Address.Visible = TrueEnd WithEnd IfElseDTPicker1.Visible = FalseEnd IfEnd Sub以上两种方法都可以实现在E列显示空间,在其它列不显示控件。❤❤❤请高手回复的问题:当代码改为如下所示时在所有的单元格都显示控件,这是为什么呢!!Private Sub Worksheet_SelectionChange(ByVal Target As Range)On Error Resume NextSet rag = Application.Intersect(Target, Range(&E:E&))'仅这句不同If (Not rag Is Nothing) And Target.Address = rag.Address ThenWith DTPicker1.Top = Target.Cells(1).Top.Left = Target.Cells(1).Left.Width = Target.Cells(1).Width.Height = Target.Cells(1).Height.LinkedCell = Target.Cells(1).Address.Visible = TrueEnd WithEnd IfEnd Sub
提问者评价
其他类似问题
按默认排序
其他5条回答
使用VBA, 增加一个form (表单),然后在菜单中选择,tool (工具)-〉Additional Control (附加控件),选择 Calander Control (日期控件) ,然后拖到form 上,调整好大小。 表单命名为userform1 , 日期控件的名为 Calendar1在sheet1 中加入以下代码 ( 假设你要在sheet1的&A1& 中设定位启动日起菜单的单元格):Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If TypeName(Selection) && &Range& Then Exit Sub
If Selection.Address = &$A$1& Then
UserForm1.Show
End IfEnd Sub在us穿定扁剐壮溉憋税铂粳erform1 的代码中加入以下代码:Private Sub Calendar1_Click()
Range(&A1&).Value = Calendar1.Value
Unload UserForm1
使用单元格被选择事件Private Sub Worksheet_SelectionChange(ByVal Target As Range)具体问题具体处理,HI我
For i = 1 To 100Sheets(&sheet& & i).ActivateRange(&A1:F1&).Copy Sheets(&汇总&).Range(&A& & i)Next iEnd Sub
For i = 1 To 100Sheets(&sheet& & i).ActivateRange(&A1:F1&).Copy Sheets(&汇总&).Range(&A& & i)Next iEnd Sub
Excel 2007
直接做一个按钮 就行了
怎么实现,把代码给出来啊
你是想 点一下 就出现日期吗?
是在指定的区域内,点击单元格就出现日期控件,例如在C10:E15区域内;
excel的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁查看: 9504|回复: 26
CAD和Excel VBA高手请进 批量获取坐标点数据
阅读权限20
在线时间 小时
如何从CAD中批量获取坐标点数据?
该贴已经同步到
阅读权限90
在线时间 小时
批量获取坐标,只有用枚举的方法了
假如已经建立好参数化模型,应该还有解析的方法
假如还要判断几何体相互之间的关系,那差别就大了
另外,不同的CAD软件,二次开发业不一样啊
如果要从原理全面解释获取坐标,那可是一篇大文章
不知可有高手来解决?
阅读权限20
在线时间 小时
yiyiyicz 发表于
批量获取坐标,只有用枚举的方法了
假如已经建立好参数化模型,应该还有解析的方法
假如还要判断几何体相 ...
没有这么复杂,CAD里只有坐标点。
阅读权限90
在线时间 小时
本帖最后由 yiyiyicz 于
10:36 编辑
外块300 发表于
没有这么复杂,CAD里只有坐标点。
看来,你的目的很简单,就是寻找CAD在二次开发的命令语句
这个命令应该有,但找到它需要费工夫
其次,怎么用才是关键
首先你对机械设计和CAD的使用概念要清楚。寻找坐标需要循一定的程式,就像你建立几何模型也是一步步做出来的。有些线(坐标)是在草图状态下出来的,但是有许多的线(坐标)是几何体经过布尔运算出来的迹线,这些线的坐标又是另外一回事
另外,这些坐标可以直接从几何线框模型上取,也可是选定后从属性等其他地方读取。这要看你用的什么软件了
第二,就是你要非常熟悉对象层次模型。不然即便找到了读取坐标的命令,灵活应用也是问题
CAD的二次开发接口,做的显然不如语言工具那么完善。好多需要自己摸索
CAD二次开发的工作,还要英文好。往往资料没有中文。还有就是软件厂家对一般性的二次开发,给你的冷面孔。
一般,二次开发支持VB&&C,至少你要能读懂VB,然后移植到VBA中。
做这个比较辛苦。
学计算机的要懂机械设计和几何绘图,学机械的要会计算机软件编程,概念一定要清楚
阅读权限100
在线时间 小时
& & & & & & & &
AutoCAD现在也支持VBA的,可到“明经通道”论坛求助。()
阅读权限10
在线时间 小时
AutoCAD现在也支持VBA
阅读权限90
在线时间 小时
本帖最后由 yiyiyicz 于
16:05 编辑
蓝桥玄霜 发表于
AutoCAD现在也支持VBA的,可到“明经通道”论坛求助。()
不知你讲的的支持是什么样子的
其它的通过添加引用,VBA也可以支持整个对象层次模型
另外,autocad在二维时,强大。但三维就差了。
因此,无论是简单应用、有限元计算,特别是想支持参数化变型设计,还是用三维CAD比较好。
三维CAD中档的有solidworks&&solidedge。solidworks由于换核,再用需要慎重
高档的有UG/NX&&PRO/E等三四种。
一般情况下,下载的CAD也能用
阅读权限20
在线时间 小时
一次出差到一个项目工地去,看到他们对着电脑上设计单位给的CAD图在一个点一个点的的找坐标值.方法是用鼠标点上一个点,记下(X,Y)后再输到EXCEL中,怕一个人出错,得两个人来操作. 后来有人发现了一个好办法,说不用笔来记(X,Y)了,直接用复制和粘贴的办法来做,这确实是一大进步呀.我问他们这一晚上能找多少点呀, 回答说做不了多少还老出错. 我说这样吧我给你编一个小程序用吧. 一晚过后第二天他们拿程序一用都说真是省大劲了,又准又快呀.
在CAD中 选 工具--宏--visual basic编辑器, 点thisdrawing 把下面的程序写进去, 然后点运行即可.
Attribute VB_Name = &模块1&
& & Dim x, y As Double
& & Dim ReturnPoint As Variant
& & Dim i As Integer
& & Dim high As Single
& & Dim Ptext, Fname As String
& & Dim textObj As AcadText
& & Dim pointObj As AcadPoint
& & Dim layerObj As AcadLayer
& & x = 0: y = 0: i = 1: high = 9
& & Fname = InputBox(&选取结束时,请回到第一点!请给出文件名。&)
& & If Fname = && Then Fname = &PointsDate&
& & Fname = &c:\abc\& & Fname & &.txt&
& & Set layerObj = ThisDrawing.Layers.Add(&PointsData&)
& & ReturnPoint = ThisDrawing.Utility.GetPoint
& & Ptext = i & &:(& & Round(ReturnPoint(0), 2) & &,& & Round(ReturnPoint(1), 2) & &)&
& & Set textObj = ThisDrawing.ModelSpace.AddText(Ptext, ReturnPoint, high)
& & Set pointObj = ThisDrawing.ModelSpace.AddPoint(ReturnPoint)
& & pointObj.Layer = &PointsData&
& & textObj.Layer = &PointsData&
& & pointObj.color = acRed
& & Open Fname For Output As #1 '&c:\PointsDATA.txt&
& & Print #1, &No&, &y&, &x&
& & Print #1, Round(ReturnPoint(1), 2), Round(ReturnPoint(0), 2)
阅读权限100
在线时间 小时
CAD坐标点,留个记号
阅读权限20
在线时间 小时
wqq2006 发表于
一次出差到一个项目工地去,看到他们对着电脑上设计单位给的CAD图在一个点一个点的的找坐标值.方法是用鼠标点 ...
十分感谢wqq2006!
因为坐标点比较多(少的也有几百个点)。能否像CAD中的LIST命令这样一次性选择很多坐标点,然后输出三维坐标数据到txt文件中?
CAD中只有三维坐标点,没有其他的线、面、实体或标注等。
玩命加载中,请稍候
玩命加载中,请稍候
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!
本站特聘法律顾问:徐怀玉律师 李志群律师
Powered by查看: 1977|回复: 8
利用VBA实现鼠标点击拾取数据
阅读权限10
在线时间 小时
本帖最后由 Mr.Wing 于
20:30 编辑
(2.57 KB, 下载次数: 14)
20:30 上传
点击文件名下载附件
我需要实现一个功能,望大侠们出手相助。
我的工作是向不同的厂家采购产品,有一张表格记录每项产品的供应商,采购日期,价格,数量等等。每项货物采购完成后,我需要填写一张清单来和仓库交接,这张清单就是需要存入仓库的产品的价格、数量等信息。
有的时候量很大,筛选复制粘贴也让人吃不消,我想用VBA设计一个程序,可以自动记录我点击(比如双击)或者是标成某种颜色的数据(这些数据是同列的),然后把这些数据填到入库单的一列,我就可以利用vlookup把入库单中的其他数据也自动填写了。
求助大侠有无办法?或者有什么更好的操作方式能让我方便地挑选出需要的项目然后自动填写到入库单?
阅读权限100
在线时间 小时
上传个示例附件再结合你说的话就好理解多了。
阅读权限10
在线时间 小时
AVEL 发表于
上传个示例附件再结合你说的话就好理解多了。
就比如我希望选中“采购信息清单”工作表中的几个序号,借助程序无需切换工作表便可以自动填写选中的序号到“入库单”工作表中,然后在“入库单”工作表中用vllokup完成其他信息。
阅读权限30
在线时间 小时
在這個版回答問題,我必須先假設你正在寫你的VBA代碼。
我想你的問題只要利用工作表的事件,先將選擇的儲存格設定成某種格式,然後再設計一個程序找出符合格式的儲存格,將之集中在一欄或一列裡,然後再進一步處理。
希望對你的構思有所幫助。
阅读权限10
在线时间 小时
linyancheng 发表于
在這個版回答問題,我必須先假設你正在寫你的VBA代碼。
我想你的問題只要利用工作表的事件,先將選擇的儲 ...
这个思路可以!
阅读权限100
在线时间 小时
& & & & & & & &
本帖最后由 liucqa 于
22:08 编辑
Mr.Wing 发表于
就比如我希望选中“采购信息清单”工作表中的几个序号,借助程序无需切换工作表便可以自动填写 ...
(9.84 KB, 下载次数: 90)
22:07 上传
点击文件名下载附件
看附件,双击序号。库房签字要往右挪一下,不要放在第一列
阅读权限70
在线时间 小时
Mr.Wing 发表于
就比如我希望选中“采购信息清单”工作表中的几个序号,借助程序无需切换工作表便可以自动填写 ...
双击序号,用双击事件就可以自动将这行写到入库单啊,哪里还需要vlookup?
阅读权限100
在线时间 小时
skyzxh 发表于
双击序号,用双击事件就可以自动将这行写到入库单啊,哪里还需要vlookup?
愿意就用吧,锻炼一下
阅读权限20
在线时间 小时
& & & & & & & &
双击之后直接把相关的数据也填好,不就更省事了,只用加几行代码就行了。
玩命加载中,请稍候
玩命加载中,请稍候
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!
本站特聘法律顾问:徐怀玉律师 李志群律师
Powered by

我要回帖

更多关于 拾取坐标系统 的文章

 

随机推荐