VBA将excel中的页签名称修改后,如何获取修改名称后的页签属性

Sub 工作宏1()
Debug.Print Sheet1.Name
Debug.Print Sheet1.Range("a1").Value
If (Sheet1.Name = "Sheet1") Then
Sheet1.Name = "第一个VBA程序"
End If
'SheetRangeName As String
'SheetRangeName = Sheet1.Range("a1").Value
Debug.Print 第一个VBA程序.Name
If (第一个VBA程序.Range("a1").Value = "初级玄真丹*30") Then
第一个VBA程序.Range("a1").Value.Copy Sheet3.Range("a1").Value
End If
End Sub

第1个回答  2013-01-11
VBA访问表标签有2种方法:
1, 是名称 , 即worksheet("Sheet1"),其中sheet1就是名称,如果名称是第一个VBA程序,那么可以写成worksheet("第一个VBA程序");
2,用索引访问,即worksheet(1)等,无论你sheet的名称改成什么,都不影响访问该表!
第2个回答  2013-01-12
Debug.Print Sheet1.Name
Debug.Print Sheet1.Range("a1").Value
If (Sheet1.Name = "Sheet1") Then
Sheet1.Name = "第一个VBA程序"
End If
'SheetRangeName As String
'SheetRangeName = Sheet1.Range("a1").Value
Debug.Print Sheet1.Name
If Sheet1.Range("a1").Value = "初级玄真丹*30" Then '你修改sheet1的Name属性后,引用时仍用sheet1
第一个VBA程序.Range("a1").Value.Copy Sheet3.Range("a1").Value
End If
你修改sheet1的Name属性后,引用时仍用sheet1追问

 

为什么标红的地方报错,错误13

 

 

 

本回答被网友采纳
第3个回答  2013-01-12
Sheet1.Name中的sheet1是编程名称,不是前台的名称
Sheet1.Name更改后,不影响你继续使用sheet1
Sheet1.Name更改的名称是Worksheets("Sheet1")里面的Sheet1
第4个回答  2013-01-11
你要获得什么属性?
你可以
dim ws as worksheet
set ws=sheets("第一个VBA程序")

ws就代表你那个sheet了 然后你对ws进行操作
相似回答