Excel精英培训网

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

[已解决]【求助】变量定义右界错误

[复制链接]
发表于 2009-10-31 23:55 | 显示全部楼层 |阅读模式

学习写了个宏如下:把第7行的内容在B7开始往下竖着显示。

Sub Macro1()
Dim Rd&, A&
Rd = [A7].End(xlToRight).Column
For A = 1 To Rd
Range("B" & 7 + A) = Cells(A, 7)
Next A
End Sub

先定义变量Rd为第7行的最后的不为空的数据有多少。然后用FOR循环,可是,Rd = [A7].End(xlToRight).Column这句在运行时vb提示为黄色,不知道原因,请老师赐教。

最佳答案
2009-11-1 00:00

是不是L

Sub Macro1()
Dim Rd&, A&
Rd = [A7].End(xlToRight).Column
For A = 1 To Rd
Range("B" & 7 + A) = Cells(7, A)
Next A
End Sub

 楼主| 发表于 2009-10-31 23:58 | 显示全部楼层

即:

以下为单元格的表示意思

B8=A7

B9=B7

B10=C7

…………

回复

使用道具 举报

发表于 2009-11-1 00:00 | 显示全部楼层    本楼为最佳答案   

是不是L

Sub Macro1()
Dim Rd&, A&
Rd = [A7].End(xlToRight).Column
For A = 1 To Rd
Range("B" & 7 + A) = Cells(7, A)
Next A
End Sub

回复

使用道具 举报

 楼主| 发表于 2009-11-1 00:03 | 显示全部楼层

QUOTE:
以下是引用雨狐在2009-11-1的发言:

是不是L

Sub Macro1()
Dim Rd&, A&
Rd = [A7].End(xlToRight).Column
For A = 1 To Rd
Range("B" & 7 + A) = Cells(7, A)
Next A
End Sub

晕,原来我的cells写反了。

谢谢。。。。。。。。。。

回复

使用道具 举报

发表于 2009-11-1 00:06 | 显示全部楼层

不用循环:

Sub Macro1()
Dim Rd&, A&
Rd = [A7].End(xlToRight).Column
[b8].Resize(Rd, 1).Value = Application.Transpose(Range("a7").Resize(1, Rd))
End Sub

回复

使用道具 举报

 楼主| 发表于 2009-11-1 00:09 | 显示全部楼层

QUOTE:
以下是引用雨狐在2009-11-1 0:06:00的发言:

不用循环:

Sub Macro1()
Dim Rd&, A&
Rd = [A7].End(xlToRight).Column
[b8].Resize(Rd, 1).Value = Application.Transpose(Range("a7").Resize(1, Rd))
End Sub

厉害,谢谢。

回复

使用道具 举报

发表于 2009-11-1 04:51 | 显示全部楼层

学习[em02][em02]
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-15 05:24 , Processed in 0.221073 second(s), 4 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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