ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

要做成分数计算器,任重道远。。。(做了一个分数四则运算,孩子有念小学的可以收下

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-1-22 20:32 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖已被收录到知识树中,索引项:娱乐和游戏应用
本帖最后由 aoe1981 于 2014-1-24 22:47 编辑

  花了一整天的时间,做了点小儿科,不太恐怖吓人的。感觉有三点:
  1.代码有点复杂。原因是包含了带分数、假分数、真分数、整数,正负号,四则运算,情况众多,记得小学数学中是分情况进行法则的学习的,然而此处要统一用最本质的法则。
  2.代码有点冗长。有许多部分代码功能类似,其实可以做成模块调用的,但不太熟悉。
  3.运算后,如果某一部分出现超过15位以上的大数后,会仍以科学计数法显示,由于窗体控件尺寸的限制,表面看起来,结果是小数。。。
   分数四则运算.rar (24.07 KB, 下载次数: 50)

  (此句作为过渡,使命暂停,目前以下句提示为准:请查看4楼的附件,这个附件粗心了,除法的结果有时不是最简分数。。。)

  正式版请看12楼!!!(正式版特点:1、符合操作习惯;2、计算结果正确无误,做到了分数部分化简成最简分数;3、利用自定义函数、类模块的编程技术,简化了代码,使代码可读性提高,其中求两数最大公因数的自定义函数的应用具有一般性;4、也算是个小缺点吧,本来只有分母是拒绝输入0的,现在都拒绝了,这样一来,6个Textbox的代码都一致了,这是为了简化代码,但同时,少了0分数和0参加的运算,不过这个除了理论上,实践中没多大意思,谁都知道0+0=0,0加任何数还得任何数,0分数等于0。。。呵呵,只是作为一个特点,我想说明白)
  这点补充算是锻炼一下文字表达吧,能做清楚的高人很多,但能说清楚的显然不多,个中缘由,不便妄自揣测,腊月里忙啊。。。
  祝大家马年马上幸福!

TA的精华主题

TA的得分主题

发表于 2014-1-22 21:40 | 显示全部楼层
谢谢分享,能演示一下怎么用么

TA的精华主题

TA的得分主题

发表于 2014-1-22 22:22 | 显示全部楼层
呵呵,看着不错,就是操作逻辑不太好,赵版想必是没看懂


捕获.JPG

点评

确实没有看懂  发表于 2014-1-22 22:43

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-1-22 22:23 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 aoe1981 于 2014-1-22 22:52 编辑

修改了除法中的小问题,表现就是不能化成最简分数,现在重新上传一个附件:

分数四则运算.rar (23.73 KB, 下载次数: 19)

现在有一个显示的问题,就是窗体中的Label控件中的文本能不能右对齐或是中间对齐,那样显示可能更好一些!(此附件已更新,该问题经指点已解决,在此致谢)

现在连Textbox输入数字也居中了。。。

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-1-22 22:24 | 显示全部楼层
zhaogang1960 发表于 2014-1-22 21:40
谢谢分享,能演示一下怎么用么

点+、-、×、÷后开始计算。。。

TA的精华主题

TA的得分主题

发表于 2014-1-22 22:26 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 liucqa 于 2014-1-22 22:28 编辑
aoe1981 发表于 2014-1-22 22:23
修改了除法中的小问题,表现就是不能化成最简分数,现在重新上传一个附件:

你可以考虑一下类模块,这样代码会简洁许多

另外,操作上要更符合人性逻辑

居中:
捕获.JPG

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-1-22 22:26 | 显示全部楼层
liucqa 发表于 2014-1-22 22:22
呵呵,看着不错,就是操作逻辑不太好,赵版想必是没看懂

是啊,通常是点=出结果的。。。不好意思。。。还没想到改进的方法。。。和分段写代码有关吧。。。

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-1-22 23:54 | 显示全部楼层
liucqa 发表于 2014-1-22 22:26
你可以考虑一下类模块,这样代码会简洁许多

另外,操作上要更符合人性逻辑

  紧急求助!简化了代码,增加了等号按钮,但有个问题:
  点了等号,结果是出来了,但是有可能忘记刚才做了什么运算,想实现的想法是:
  点选运算后,把所选择的运算按钮上的符号用红色显示、或是加粗显示、或是干脆把所选按钮整个变个颜色。。。
  区区本领有限,还望指教。。。传新附件如下:
   分数四则运算(代码思路优化版).rar (22 KB, 下载次数: 10)

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-1-22 23:55 | 显示全部楼层
zhaogang1960 发表于 2014-1-22 21:40
谢谢分享,能演示一下怎么用么

紧急求助,问题见8楼,打扰了,多谢多谢!

TA的精华主题

TA的得分主题

发表于 2014-1-23 00:06 | 显示全部楼层
aoe1981 发表于 2014-1-22 23:54
  紧急求助!简化了代码,增加了等号按钮,但有个问题:
  点了等号,结果是出来了,但是有可能忘记 ...

要不你改成切换按钮吧,或者用单选框

这代码写的,没法帮你弄
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-18 09:51 , Processed in 0.050608 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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