Excel精英培训网

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

[已解决]如何将单元格赋值给数组?

[复制链接]
发表于 2016-8-21 20:31 | 显示全部楼层 |阅读模式
我正在尝试编写一个转置程序的VBA代码
Sub tt1()
Dim arr, i As Integer, brr
For i = 1 To 8
arr = Range("A" & i, "C" & i)
brr = Application.WorksheetFunction.Transpose(arr)
Sheet1.[h1].Offset(0, 1).Resize(8, 3) = brr
Next
End Sub

然而总是错误,我猜想应该是arr数组赋值这一块出了问题,因为带有变量i,无法像正常一样写成arr=range("A1:A3"),但是实在又不知道怎么改正,求助一下高人,谢谢
最佳答案
2016-8-22 15:34
  1. Sub tt1()
  2.     Dim arr, i As Integer, brr
  3.     i = Cells(Rows.Count, 1).End(3).Row
  4.     arr = Range("A1:C" & i)
  5.     brr = Application.WorksheetFunction.Transpose(arr)
  6.     Sheet1.[h1].Offset(0, 1).Resize(3, 8) = brr
  7. End Sub
复制代码

转置.zip

13.28 KB, 下载次数: 12

发表于 2016-8-22 08:14 | 显示全部楼层
回复

使用道具 举报

发表于 2016-8-22 09:09 | 显示全部楼层
能模拟个正确的结果么?不知道你要什么效果
回复

使用道具 举报

发表于 2016-8-22 09:22 | 显示全部楼层
试试这段代码,看看是不是这个效果
  1. Sub tt1()
  2.     Dim arr, brr
  3.     arr = Range("A1:C8")
  4.     brr = Application.WorksheetFunction.Transpose(arr)
  5.     Sheet1.[h1].Offset(0, 1).Resize(3, 8) = brr
  6. End Sub
复制代码
回复

使用道具 举报

发表于 2016-8-22 09:36 | 显示全部楼层
Sheet1.[h1].Offset(0, 1) =  Sheet1.[I1]
回复

使用道具 举报

 楼主| 发表于 2016-8-22 10:37 | 显示全部楼层
望帝春心 发表于 2016-8-22 09:22
试试这段代码,看看是不是这个效果

谢谢,其实我想要的结果是一行一行的进行转置,所以才用了一个i变量,但是现在我的问题是我想把带有变量的行数赋值给数组arr,即把A1:C1赋值给arr,正常写法应该是arr=range("A1:C1")但是不知道如何,但是一但这个数字1变成了变量i,这与法就不对了,我也不知道怎么写了

回复

使用道具 举报

发表于 2016-8-22 10:40 | 显示全部楼层
lovelfg 发表于 2016-8-22 10:37
谢谢,其实我想要的结果是一行一行的进行转置,所以才用了一个i变量,但是现在我的问题是我想把带有变量的 ...

一行一行的园转置,你这句Sheet1.[h1].Offset(0, 1).Resize(8, 3) = brr也要通过变量来控制...
回复

使用道具 举报

 楼主| 发表于 2016-8-22 11:07 | 显示全部楼层
望帝春心 发表于 2016-8-22 10:40
一行一行的园转置,你这句Sheet1.[h1].Offset(0, 1).Resize(8, 3) = brr也要通过变量来控制...

哦,对哦!差点忘了,请问您可以写一个借我作参考吗?我水平太次了
回复

使用道具 举报

发表于 2016-8-22 11:48 | 显示全部楼层
lovelfg 发表于 2016-8-22 11:07
哦,对哦!差点忘了,请问您可以写一个借我作参考吗?我水平太次了

我也是新手,你要的最后效果跟我前面回复代码的效果一样吗?
回复

使用道具 举报

 楼主| 发表于 2016-8-22 11:52 | 显示全部楼层
望帝春心 发表于 2016-8-22 11:48
我也是新手,你要的最后效果跟我前面回复代码的效果一样吗?

对的,要一样的
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-20 04:36 , Processed in 0.270523 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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