明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 919|回复: 8

[VBA群] 2013-09-17 明经AutoCAD.VBA编程(45054712) 群聊记录:[image={CBE2680E-21DE-8DDA-C962-E2C022

 关闭 [复制链接]
发表于 2013-9-17 08:17:21 | 显示全部楼层 |阅读模式
轻舞飞扬 08:17:21
[qqimg]201309/{CBE2680E-21DE-8DDA-C962-E2C0222CCDF5}.jpg[/qqimg]
 楼主| 发表于 2013-9-17 10:02:39 | 显示全部楼层
[liuweiisme]WLIU 10:02:39
rpc 服务器不可用是怎么回事?
我用程序批量处理图纸时出现 rpc 服务器不可用是怎么回事?
测≮沙漠≯ 10:03:21
打印机没安装好啊
[liuweiisme]WLIU 10:06:15
不是批量打印 是批量替换图纸中的文字
在路上26 10:13:45
怎么捕捉到鼠标的左键按下啊,在vba里,求帮
在路上26 10:17:48
有人做过相关工作不??
sqbao 10:18:02
mousedown
sqbao 10:20:00
MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)时间
事件
在路上26 10:23:44
要引用api吧?
sqbao 10:25:07
应该有自带吧
用不到api应该
双人行 10:30:23
在同一个窗体的两个private子过程中,如果一个子过程要用到另一个子过程的变量的值,该怎么定义啊?
 楼主| 发表于 2013-9-17 13:38:10 | 显示全部楼层
双人行 13:38:10
m = 0
For i = 1 To 22
    If (arr1(i, 2) - sw) * (arr1(i + 1, 2) - sw) < 0 Then
        m = m + 1
    End If
Next
MsgBox ("m的值为:" & m)
双人行 13:38:53
[qqimg]201309/{29ED79DD-E76A-8A6A-0E41-8578C30B06F3}.jpg[/qqimg]
双人行 13:39:24
sw的值为11.2,麻烦问一下各位,程序给出的m值为什么是2啊
 楼主| 发表于 2013-9-17 14:35:33 | 显示全部楼层
[孙晶zxl]孙晶 14:35:33
你只要懂循环和判断就能看懂这个程序。要给你解释这个为什么,也得给你解释循环和判断。
双人行 14:36:30
我把判断句里的那个sw写成11.2,给出的m的值就是1
用msgbox试了一下sw的值确实是11.2
怪了
双人行 14:37:28
直接写11.2就可以,写成变量就判断不了了
 楼主| 发表于 2013-9-17 15:06:52 | 显示全部楼层
VBA-华仔 15:06:52
浮点数不准确
双人行 15:07:20
我也怀疑这个问题
但不知道怎么纠正
一缕阳光 15:08:14
不可能
双人行 15:08:24
小学生是00后?
VBA-华仔 15:08:50
在网上搜浮点数判断
双人行 15:09:34
一缕阳光 15:10:11
判断大小于0  任何数都可以的
肯定公式不对
双人行 15:11:01
这个公式很简单啊,不可能搞错
一缕阳光 15:11:07
判断相等 就不行
一缕阳光 15:11:46
If (arr1(i, 2) - sw) * (arr1(i + 1, 2) - sw) < 0 Then
一缕阳光 15:12:47
分别看看它们的值是多少
双人行 15:12:53
arr1(9,2)的值是11.2
程序也判断为 (arr1(9, 2) - sw) * (arr1(10, 2) - sw) < 0
双人行 15:13:28
数组的值我挨个查了,没问题
[孙晶zxl]孙晶 15:14:55
round(sw,1)
一缕阳光 15:15:02
怀疑数组超出下标
[孙晶zxl]孙晶 15:15:28
解决浮点运算就只能用round
双人行 15:15:30
没超
VBA-华仔 15:16:30
不好意思,没看他的公式,你说的对
[孙晶zxl]孙晶 15:16:48
公式最好写成
round(arr1(9, 2),1) - round(sw,1)
一缕阳光 15:17:00
没必要
双人行 15:17:55
嗯,根据各位意见再试一下
 楼主| 发表于 2013-9-17 15:37:59 | 显示全部楼层
双人行 15:37:59
[qqimg]201309/{229EB513-7192-15A7-A00D-4E84E5679057}.jpg[/qqimg]
[qqimg]201309/{1E853A50-1DD8-4643-34CF-5C5F5FF9DB62}.jpg[/qqimg]
一缕阳光 15:41:24
差不多等于0
双人行 15:41:44
两个11.2都是我自己输的,怎么会出现这种问题
一缕阳光 15:42:03
浮点数是这样的
双人行 15:42:06
差不多等于0但程序肯定不认是0了
一缕阳光 15:42:20
不影响判断
不能判断等于0
判断大小于0 是没问题的
亦凡天空 15:51:38
取绝对值  < 1^10 -7  足够了
双人行 15:52:22
就是想让它判别为等于0,不能有误差
我要用的是那个m的值,是2还是3的问题
 楼主| 发表于 2013-9-17 21:38:28 | 显示全部楼层
在路上26 21:38:28
当运行Grip_Stretch,的时候,如何知道当前操作者所选的拉伸基点呢,比方有一条多段线,有10个点,怎么知道它选得是哪一点呢???
 楼主| 发表于 2013-9-17 22:12:23 | 显示全部楼层
飞马 22:12:23
[qqimg]201309/{C8B7A0BF-D105-6FC9-FDE9-504A6BE1BA12}.gif[/qqimg]
在路上26 22:16:37
高手们,谁能回答啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-12-23 13:38 , Processed in 0.187121 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表