VBA实现数据截取

wxxloveu 2010-04-01 03:08:20

Sub getDataFromA()
Dim r&
Dim c&
For c = 2 To 30
For r = 1 To 26
Cells(r, c).Formula = "=R[-(26*(c-1))]C"
Next
Next
End Sub

我的所有数据都放在了第一列中,现在我想每隔26行就分出一列来,放在下一个空白列中,这样的代码报错哦
...全文
346 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2010-04-02
  • 打赏
  • 举报
回复
在 VB/VBA 中,& 运算符是“字符串连接运算”。
如果被连接的‘内容’都是字符串,也可以用 + 代替,但不推荐这样做!

如果被连接的‘内容’二者之一是数值量(数值类型的变量或常量),则不能用 + ,只能用 & ;否则因“类型自动转换”的机制,另一个会被自动转换成对应的数值,然后进行加法运算,这时就可能出现不希望的结果(运算方式与自己想要的不同)或出现异常(另一个字符串不是纯数值)。
Dim strTemp$, a$, b$
a = "1A"
b = "&H20"
strTemp = a & b 'strTemp ----> "1A&H20"
strTemp = a + b 'strTemp ----> "1A&H20"
strTemp = b & 5 'strTemp ----> "&H205" '5 被转换!
strTemp = b + 5 'strTemp ----> "37" '注意 b 被转换!
strTemp = a + 5 ' 异常! ----- “类型不匹配”

wxxloveu 2010-04-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 bestbadgod 的回复:]
引用 2 楼 wxxloveu 的回复:
兄弟啊,推荐本VB的数看看吧,很是郁闷啊

这是VBA 最好的方法是你要学会录制宏。当然,基础语句还是和VB的一样。
[/Quote]
结贴了,还是要诺诺的问下啊
Cells(r, c).Formula = "=R[" & 26 * (c - 1) & "]C[-" & c - 1 & "]"
& 是连接符,这里起什么作用啊
倒大霉的上帝 2010-04-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wxxloveu 的回复:]
兄弟啊,推荐本VB的数看看吧,很是郁闷啊
[/Quote]
这是VBA 最好的方法是你要学会录制宏。当然,基础语句还是和VB的一样。
wxxloveu 2010-04-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 chen8013 的回复:]

楼主可以结贴了……
[/Quote]
学VB用什么语言比较好啊
舉杯邀明月 2010-04-01
  • 打赏
  • 举报
回复
楼主可以结贴了……
lb_bn 2010-04-01
  • 打赏
  • 举报
回复
帮楼主顶一下.
wxxloveu 2010-04-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bestbadgod 的回复:]

VB code

Sub getDataFromA()
Dim r&
Dim c&
For c = 2 To 30
For r = 1 To 26
Cells(r, c).Formula = "=R[" & 26 * (c - 1) & "]C[-" & c - 1 & "]"
Next
Next
End Sub
……
[/Quote]
兄弟啊,推荐本VB的数看看吧,很是郁闷啊
倒大霉的上帝 2010-04-01
  • 打赏
  • 举报
回复

Sub getDataFromA()
Dim r&
Dim c&
For c = 2 To 30
For r = 1 To 26
Cells(r, c).Formula = "=R[" & 26 * (c - 1) & "]C[-" & c - 1 & "]"
Next
Next
End Sub

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧