Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2462|回复: 3

[已解决]求个vba

[复制链接]
发表于 2015-7-10 15:05 | 显示全部楼层 |阅读模式
本帖最后由 hjuy78 于 2015-7-10 16:32 编辑

        a               b               c                  d                  
 5
 
 
 
 0
 5
 
1 
 
 
 
 
 
5 
 0
 
 
 
 
 
                       
  求个vba, b1 到d5 哪格是黄色就把哪格的数字放在A列                    
                        
                        
                        
                        
                        
                        
                        
最佳答案
2015-7-10 16:23
工作簿3.rar (14.55 KB, 下载次数: 4)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2015-7-10 16:23 | 显示全部楼层    本楼为最佳答案   
工作簿3.rar (14.55 KB, 下载次数: 4)
回复

使用道具 举报

发表于 2015-7-10 17:11 | 显示全部楼层
本帖最后由 incrediblesky 于 2015-7-10 17:14 编辑
qh8600 发表于 2015-7-10 16:23
楼主试试
  1. Sub demo()
  2.     Dim rng As Range, ar(1 To 15, 1 To 1), n
  3.     For Each rng In Range("b1:d5")
  4.         If rng.Interior.ColorIndex = 6 Then
  5.             n = n + 1
  6.             ar(n, 1) = rng.Value
  7.         End If
  8.     Next
  9.     Range("a1").Resize(n, 1) = ar
  10. End Sub
复制代码
ar(1 To 15, 1 To 1)这个虽然是二维数组,但也可看成一维数组,我改成ar(1 To 15)以下代码,为什么就不行了呢
  1. Sub demo()
  2.     Dim rng As Range, ar(1 To 15), n      
  3.     For Each rng In Range("b1:d5")
  4.         If rng.Interior.ColorIndex = 6 Then
  5.             n = n + 1
  6.             ar(n) = rng.Value
  7.         End If
  8.     Next
  9.     Range("a1").Resize(n, 1) = ar
  10. End Sub
复制代码
回复

使用道具 举报

发表于 2015-7-10 18:11 | 显示全部楼层
incrediblesky 发表于 2015-7-10 17:11
ar(1 To 15, 1 To 1)这个虽然是二维数组,但也可看成一维数组,我改成ar(1 To 15)以下代码,为 ...

一维数组写入单元格要转置,不想转置直接定义成2维数组
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-14 11:33 , Processed in 0.250030 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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