Excel精英培训网

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

[已解决]如何用变量表示工作表的序列?

[复制链接]
发表于 2012-10-13 21:44 | 显示全部楼层 |阅读模式
快照1.jpg 我想问一下,如果红印部分用变量来表示,该如何表示法?
最佳答案
2012-10-14 11:25
本帖最后由 extyg 于 2012-10-14 11:28 编辑

不要把标签名称与Codename搞混:

Sub test()
    Dim i
    i = 1
    With Sheets(ThisWorkbook.VBProject.VBComponents("Sheet" & i).Properties(6).Value)
        MsgBox .[a2]
    End With
    MsgBox Sheets(i).[a2]
    MsgBox Sheets("Sheet" & i)
End Sub

Book1.rar (7.72 KB, 下载次数: 11)
发表于 2012-10-13 21:59 | 显示全部楼层
  1. Sub Test()
  2.     Dim i As Integer
  3.     For i = 1 To Sheets.Count
  4.         Sheets("Sheet" & i).Select
  5.     Next
  6. End Sub
复制代码
回复

使用道具 举报

发表于 2012-10-13 22:10 | 显示全部楼层
你说的是Codename吗
MsgBox Worksheets(1).CodeName

回复

使用道具 举报

 楼主| 发表于 2012-10-13 22:17 | 显示全部楼层
5201314 发表于 2012-10-13 21:59

如果我想用with sheet2,但这个2是用变量来表示的,该如何写代码?
回复

使用道具 举报

发表于 2012-10-13 23:01 | 显示全部楼层
蝶·舞 发表于 2012-10-13 22:17
如果我想用with sheet2,但这个2是用变量来表示的,该如何写代码?
  1. Sub Test2()
  2.     Dim i As Integer
  3.     For i = 1 To Sheets.Count
  4.         With Sheets("Sheet" & i)
  5.             .Range("A1") = "变量"
  6.             .Range("A2") = i
  7.         End With
  8.     Next
  9. End Sub
复制代码
回复

使用道具 举报

发表于 2012-10-13 23:03 | 显示全部楼层
5201314 发表于 2012-10-13 23:01
  1. Sub Test3()
  2.     Dim i As Integer
  3.     i = 2
  4.     With Sheets("Sheet" & i)
  5.         .Range("A1") = "变量"
  6.         .Range("A2") = i
  7.     End With
  8. End Sub
复制代码
回复

使用道具 举报

发表于 2012-10-14 07:53 | 显示全部楼层
好象不可以,得变通着来用
回复

使用道具 举报

 楼主| 发表于 2012-10-14 08:58 | 显示全部楼层
5201314 发表于 2012-10-13 23:01

这个似乎对我图中所标记的序列没用
回复

使用道具 举报

发表于 2012-10-14 09:34 | 显示全部楼层
Sub 用变量表示工作表()
        Dim i As Integer
        For   i = 1 To   Sheets.Count
                With  Sheets( i )
                        .Range("a1") = 123
                        .Range("b1") = 321
               End With
        Next   i
End Sub
回复

使用道具 举报

发表于 2012-10-14 11:25 | 显示全部楼层    本楼为最佳答案   
本帖最后由 extyg 于 2012-10-14 11:28 编辑

不要把标签名称与Codename搞混:

Sub test()
    Dim i
    i = 1
    With Sheets(ThisWorkbook.VBProject.VBComponents("Sheet" & i).Properties(6).Value)
        MsgBox .[a2]
    End With
    MsgBox Sheets(i).[a2]
    MsgBox Sheets("Sheet" & i)
End Sub

Book1.rar (7.72 KB, 下载次数: 11)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-23 11:59 , Processed in 0.295871 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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