excelvba中循环语句使用方法 vba下做sheets(n)的循环,sheet是怎么编号的?

[更新]
·
·
分类:互联网
5028 阅读

excelvba中循环语句使用方法

vba下做sheets(n)的循环,sheet是怎么编号的?

vba下做sheets(n)的循环,sheet是怎么编号的?

对sheet循环操作,比如写for n 1 to 10 sheets(n).cells(1,1).valuen作用是在相应的sheet上写上sheet的编号,发现的问题是,n对应的sheet,有时候由sheet在表格中的先后顺序决定,有时候由上图sheet后的数字决定。怎样才能让sheet编号只由sheet后面的数字决定?

有办法的,这里介绍3种引用Sheet的方法。
查看结论请拖到最后看黑体字哦!
使用worksheet方法指定对应sheet,有几种方法。
1、Sheet1.Range(A1).Value 指定的值
引用的是这里的名称:
这里要说明一下,如果采用的是Sheet1这样的写法,只能指定本工作簿即Thisworkbook的Sheet1。Sheet1前面不能有任何的父对象。即我们不能在前面加任何Workbook父对象,否则是会报错的。
2、Sheets(index)的写法这个写法语言不知道如何表达,直接上图。
这个简单来说就是EXCEL前面是什么顺序,sheets(index)就是如何展示的。
3、sheets(sheet名)这个就是引用具体的名称。
所以回到楼主的题目!
可以把Sheet和标号n拼接成字符串,然后采取第3种写法。
具体代码如下:
此处可以复制:
Option Explicit
Sub test()
Dim n As Integer
Dim numStr As String
For n 1 To 10
numStr Sheet amp n
Sheets(numStr).Cells(1, 1).Value n
Next
End Sub

获取表单Sheet可以使用(index),for each 循环Sheet,但是顺序都是按照对象的先后顺序来获取到的,如果要一定按照数字的顺序来。只能是先获取到所有的表单,再按照数字顺序获取表单进行处理

Excel vba For Each函数怎么用?谁举个简单的例子?

for each 变量 in 容器 next for each dyg in range(