|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
用ruby做了一个,算法简洁,速度还可以接受,0.45s.
Sub RUBY()
'须安装ACTIVERUBY.才能运行
'下载地址 http://www.artonx.org/data/asr/ActiveRuby.msi
Dim a, b, c
t = Timer
Application.ScreenUpdating = False
Set x = CreateObject("scriptcontrol")
x.Language = "rubyscript"
a = Application.Transpose([a1:a60000])
b = Application.Transpose([b1:b60000])
c = Application.Transpose([c1:c60000])
Set x = CreateObject("scriptcontrol")
x.Language = "rubyscript"
x.eval ("def test(a,b,c) a & b & c end;")
y = x.Run("test", a, b, c)
aa = UBound(y) + 1
[d1].Resize(aa) = Application.Transpose(y)
Application.ScreenUpdating = ture
t = Timer - t
MsgBox t
End Sub
[ 本帖最后由 aidixiao 于 2010-5-20 22:46 编辑 ] |
|