ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: kevinchengcw

[分享] 抛砖引玉,VBA编写的简单VBA程序解释器,期待您的进一步完善与改进(最新:进化5)

    [复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-23 21:34 | 显示全部楼层
原帖由 jackey.liang 于 2010-3-23 21:24 发表
谢谢楼主分享!  测试以下语句时出错, 没深探究原因, 请楼主有时间改进.



Dim a As Integer, b As Integer, i As Integer, s As Integer
a = Val(Text1.Text)
b = Val(Text2.Text)
s = 0
i = a
Do While i ...



谢谢您的提醒,我目前手头的最新版本显示如下,请再明确一下是哪个地方解释出错,我好针对改进

Dim a As Integer, b As Integer, i As Integer, s As Integer    '定义变量 a 为 整型值,b 为 整型值,i 为 整型值,s 为 整型值
a = Val(Text1.Text)    ' a=<提取数字>( Text1的文本)
b = Val(Text2.Text)    'b=<提取数字>( Text2的文本)
s = 0    's=0
i = a    'i=a
Do While i <= b    '执行循环操作 当条件 i<=b
s = s + i    's=s+i
i = i + 1    'i=i+1
Loop    '循环执行
MsgBox "计算结果为" & s             ''''计算两个整数之间所有整数之和!    '<消息框>:"计算结果为" & s''''计算两个整数之间所有整数之和!
    '

目前这个还在我手里进一步完善,可能会几天会放出来,主要在改进一些关键语段的取词方式

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-23 21:42 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 jackey.liang 于 2010-3-23 21:31 发表
搞错了, 是在测试以下代码时出错的!  另外希望添加鼠标的右键的粘贴功能.



Dim n As Integer
Dim z As Integer
Dim f As Integer
f = 0: z = 0
Do While n  0
n = InputBox("N=")
If n < 0 Then
f = f  ...


果然出错了,我来找找原因,谢谢提醒,如果能看出是什么原因,也希望能提示一下我,鼠标右键功能一开始就想加上,但研究了几个样本后均效果不理想,目前还在试验中,我想我开始遇到瓶颈了

TA的精华主题

TA的得分主题

发表于 2010-3-23 21:58 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
谢谢共享,帮助很大

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-23 22:07 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
找到原因了,是这句"f = 0: z = 0",处理到 0: 时就无法正常查找了,可能是因为vlookup本身的一些语句限制吧,加了一句分解语句就好了
      ArrWC2(A) = Replace(ArrWC2(A), ",", vbTab & "," & vbTab)
            ArrWC2(A) = Replace(ArrWC2(A), "(", "(" & vbTab)
            ArrWC2(A) = Replace(ArrWC2(A), ")", vbTab & ")")
            ArrWC2(A) = Replace(ArrWC2(A), "].", "]." & vbTab)
            ArrWC2(A) = Replace(ArrWC2(A), ":=", vbTab & ":=" & vbTab)
            ArrWC2(A) = Replace(ArrWC2(A), ":", vbTab & ":")
最后一句是加上去的,可避免类似错误了,谢谢jackey.liang 的热心提示

为避免这样的错误影响使用,明天我会把手头现在的版本发上来,谢谢

[ 本帖最后由 kevinchengcw 于 2010-3-23 22:09 编辑 ]

TA的精华主题

TA的得分主题

发表于 2010-3-23 22:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
谢谢共享,帮助很大

TA的精华主题

TA的得分主题

发表于 2010-3-23 22:32 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
对代码能否解释的更清楚些

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-3-23 22:39 | 显示全部楼层
原帖由 lbl016 于 2010-3-23 22:32 发表
对代码能否解释的更清楚些


这个在计划,不过因为涉及到一些大的工程,可能没那么快实现,你所指的更清楚些的具体含义能说得更具体些吗

TA的精华主题

TA的得分主题

发表于 2010-3-23 22:42 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
谢谢kevinchengcw 无私奉献,这个楼的楼主既然是您,建议您做个楼层分配表,把一些重要的楼层更新目录放在首页,这样便于以后方便的查找。

TA的精华主题

TA的得分主题

发表于 2010-3-24 00:32 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-3-24 02:03 | 显示全部楼层
这个绝对是学习VBA的好东西 还是互动的
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-17 15:35 , Processed in 0.039707 second(s), 5 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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