[算表] CountColor VBA语法(已解决)

楼主: hp19910110 (融儿)   2014-06-07 14:39:20
软件: excel
版本: 2007、2010
前几天在网络上搜寻统计储存格颜色的相关资料时,
看到知识+有人分享一个VBA的语法
Function CountColor(标准格 As Range, 范围 As Range)
Dim 单元格, 颜色, 数量
Application.Volatile
For Each 单元格 In 范围
If 单元格.Interior.ColorIndex = 标准格.Interior.ColorIndex Then
数量 = 数量 + 1
End If
Next 单元格
CountColor = 数量
End Function
来源:http://ppt.cc/sW-8
用在OS为中文的系统里没有问题,可以正常使用
但是用在OS为日文的电脑里却出现乱码@@
想把上述VBA语法里的中文字改成英文
但却找不到该用哪些英文字取代XD
不知道有没有人可以帮帮忙 ~~
自行回答XD
google了一些用语,实际改改看之后就成功了XD
附上改好的~
Function CountColor(StandardCells As Range, Rng As Range)
Dim rCells, Color, Count
Application.Volatile
For Each rCells In Rng
If rCells.Interior.ColorIndex = StandardCells.Interior.ColorIndex Then
Count = Count + 1
End If
Next rCells
CountColor = Count
End Function
作者: soyoso (我是耀宗)   2014-06-07 14:50:00
楼主: hp19910110 (融儿)   2014-06-07 14:51:00
哇! 感谢S大!!另想请问S大的VBA语法跟我目前使用的这个语法差在哪里?
作者: soyoso (我是耀宗)   2014-06-07 14:56:00
其实都是自订,所以差别不大;另外因为在VBA内Cells是worksheet object 因此尽可能宣告时不要用Cells这个名称Range也是,宣告变量名称时应避免
楼主: hp19910110 (融儿)   2014-06-07 14:59:00
哦~原来如此!是说S大的档案我按启用编辑后会出现#NAME?
作者: soyoso (我是耀宗)   2014-06-07 15:01:00
有开启安全性吗?
楼主: hp19910110 (融儿)   2014-06-07 15:04:00
噢! 忘记调了XD 感谢提醒~那如果我想用原本使用的语法,我该把Cells跟Range改成哪个字呢~
作者: soyoso (我是耀宗)   2014-06-07 15:11:00
没有制式,不过我常用像Rng,UsedRng,其实就是省略些字母原本的for each Cells In Range这里的Range也要改成Rng这要测试一下了,晚点回报
楼主: hp19910110 (融儿)   2014-06-07 15:45:00
感谢S大!! 目前手边没有OS为日文的电脑可做测试>_<再麻烦了!!
作者: soyoso (我是耀宗)   2014-06-07 15:47:00
^^目前安装中,大概半小时后可进行测试
楼主: hp19910110 (融儿)   2014-06-07 16:54:00
谢谢S大的测试回报!!

Links booklink

Contact Us: admin [ a t ] ucptt.com