ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[分享] VBA冷门方法整理&不完全研究

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2019-10-4 07:18 | 显示全部楼层
大灰狼1976 发表于 2019-9-28 14:59
1、Choose()
    Choose()用得很少,但能灵活运用的话能减少很多逻辑判断或多余的语句,参数可以是变量或 ...

据我使用的经验:
第二个以后的参数若是字符串,是不是长度有限制?
字符串比较短的,非常好用,而且也很正常,基本不出错;字符串若是二百多字的,是不是会出错,缩短后,又正常得风平浪静。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-11 20:32 | 显示全部楼层
weiyingde 发表于 2019-10-4 07:18
据我使用的经验:
第二个以后的参数若是字符串,是不是长度有限制?
字符串比较短的,非常好用,而且也 ...

抱歉现在才回复,对CHOOSE这方面的研究不深,可能对字符串长度有255限制吧。其实用数组完全可以替代CHOOSE的。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-11 20:34 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
YZC51 发表于 2019-10-1 19:28
祝您国庆节快乐!!!

自定义函数怎样操作单元格!

抱歉现在才回复!
你说的自定义函数操作单元格是什么样的操作能仔细说明一下吗,虽然不确定以我的知识能够回答。

TA的精华主题

TA的得分主题

发表于 2019-10-12 09:35 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
大灰狼1976 发表于 2019-10-11 20:34
抱歉现在才回复!
你说的自定义函数操作单元格是什么样的操作能仔细说明一下吗,虽然不确定以我的知识能 ...

不客气!比如,自定义函数改变单元格格式、边框、填写其它单元格等!

TA的精华主题

TA的得分主题

发表于 2019-10-12 10:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
大灰狼1976 发表于 2019-10-11 20:32
抱歉现在才回复,对CHOOSE这方面的研究不深,可能对字符串长度有255限制吧。其实用数组完全可以替代CHOOS ...

是的,我发现可能还不知这一个函数是这样的。

TA的精华主题

TA的得分主题

发表于 2019-10-13 10:39 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
大灰狼1976 发表于 2019-10-11 20:34
抱歉现在才回复!
你说的自定义函数操作单元格是什么样的操作能仔细说明一下吗,虽然不确定以我的知识能 ...

例如:
Public Function sss(t)
    Selection.Borders.LineStyle = 1
    Selection.Borders.ColorIndex = t
    sss = ""
End Function

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-13 12:32 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
YZC51 发表于 2019-10-13 10:39
例如:
Public Function sss(t)
    Selection.Borders.LineStyle = 1

应该可以吧,家里没法测试,明天我试一下。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-14 11:41 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
YZC51 发表于 2019-10-13 10:39
例如:
Public Function sss(t)
    Selection.Borders.LineStyle = 1

我尝试了以下两种方式,都是可以实现的。
方式1:
  1. Sub test()
  2. abc (3)
  3. End Sub

  4. Function abc(t)
  5. Selection.Borders.LineStyle = 1
  6. Selection.Borders.ColorIndex = t
  7. End Function
复制代码


方式2:

  1. Sub test_2()
  2. Dim ads$
  3. ads = Selection.Address
  4. abc_2(ads) = 200
  5. abc_2(ads).Borders.LineStyle = 1
  6. End Sub

  7. Function abc_2(ads$) As Range
  8. Set abc_2 = Range(ads)
  9. End Function
复制代码

TA的精华主题

TA的得分主题

发表于 2019-10-14 13:12 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
大灰狼1976 发表于 2019-10-14 11:41
我尝试了以下两种方式,都是可以实现的。
方式1:

谢谢老师指导!

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-14 13:53 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
YZC51 发表于 2019-10-14 13:12
谢谢老师指导!

老师不敢当!谢谢关注!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-18 10:34 , Processed in 0.081851 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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