ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[分享] 电子印章(宏)最终体验版 v5.24

[复制链接]

TA的精华主题

TA的得分主题

发表于 2015-8-14 10:55 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
413191246se 发表于 2015-8-14 07:36
loquat:
    请问:数组中 s = Array(2.4!, 1.98!, 1.7! 里面的"!"英文感叹号,表示数据类型为 Single,但 ...

这一点我不太清楚,我对内存不太了解,但是经我调试发现以下规律
如果不加!,则数组的每个元素实际类型为 Variant/Double
如果加上!,则数组的每个元素实际类型为 Variant/Single
从元素类型的数组占用来说,一个Double数据占用8字节,一个Singe数据占用4字节
这样是更节省内存

并且,如果存为Double,在复制给Shape的参数时,因为Shape的这几个参数都是Single类型
还会将Double在内存中强制转换为Single再赋值,无形中对效率也会有影响

TA的精华主题

TA的得分主题

发表于 2015-8-14 10:59 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
编码中显式声明是提高程序效率的一大手段,不过以上所述也仅仅是理论,所知有限,不一定全面

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-14 12:14 | 显示全部楼层
谢谢 loquat:
一、你是否用《计算宏运行时间》宏来计算过效率?
二、网上都是不带任何类似!#%$符号的数值的数组。
三、你的《电子印章》v5.23数据弄错了,生成的印章已经不成圆了。
四、我看你的 s/t/r 都是未声明,当然默认就是 Variant 类型。

TA的精华主题

TA的得分主题

发表于 2015-8-14 12:49 | 显示全部楼层
没有仔细看你的代码。初步感觉如果能研究几个参数之间的关系,用数学公式替代呆板的数组,是否更好?

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-14 20:29 | 显示全部楼层
谢谢 龚先生 关注!——这几个参数,我都是估计测试感觉(像圆)出来的,实际上来说并不科学,恐怕找不出其中关系。

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-14 22:03 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
loquat:
    我用《计算宏运行时间》宏运算10次对比了一下各个宏的运行时间,看来你的方法取胜:
V5.22-------------3.07 8125秒(10次)
V5.22数组-------3.62 5秒(10次)--这是我改的数组,时间太多!
V5.23/loquat----2.95 3125秒(10次)

TA的精华主题

TA的得分主题

发表于 2015-8-14 23:37 | 显示全部楼层
具体效率就不研究了,我的代码去掉ScreenUpdating应该跟你的差不多

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-15 10:05 | 显示全部楼层
本帖最后由 413191246se 于 2015-8-15 10:15 编辑

    呵呵!其实我在测试前已经把前后 Screen 都注释了!我从来不运行有 Screen 的宏,都是注释掉或删除。我很怕这个 Screen,怕有损显示器。    tangqingfu 兄还让我给出开口的值,不过,恐怕我辜负他了!因为我觉得想研究此宏的人必定要研究,不想研究的不会研究。
    本着简单、简洁、实用、够用就好的原则,我不打算再费精力折腾此宏,再出一个最终体验版(原来叫完美版,过了,经 肖表哥 这么一批评我,我觉得以后要再低调一些才好),有兴趣的朋友可以在此宏基础上(比如会窗体/控件的朋友)写出更好的宏出来,我这个宏仅仅是作为一个体验,未必与真实印章相符。

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-15 13:57 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
顶以更新!!!

TA的精华主题

TA的得分主题

发表于 2015-8-15 15:40 | 显示全部楼层
413191246se 发表于 2015-8-15 10:05
呵呵!其实我在测试前已经把前后 Screen 都注释了!我从来不运行有 Screen 的宏,都是注释掉或删除。我 ...

承蒙你在此贴中提到本人。就你所做此印章宏根据本人多年研究心得提点不成熟的建议供参考:
1、宏来自于实际操作步骤得到的经验数据。既然要想制作出符合实际要求的印章,就得要了解印章统一制作尺寸规格,不然只能是纸上谈兵。
2、在了解统一印章制作尺寸规格的前提下各个尺寸印章都通过实际操作绘制制作符合实际的印章。
3、在有一定制作数据积累的基础上确定各部件各自位置的定位。
4、在夯实上述基础的前提下调整你所做的宏会更实际。
5、印章制作有许多现成软件可否借鉴一下模式和具体尺寸数据。也许会是一条捷径。
6、向致力于通过Word宏完成制作印章的努力致敬!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-23 02:46 , Processed in 0.036244 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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