Excel中,使用VBA以某一单元格内容命名工作表
我自己写的一部分代码如下,但执行有问题,不知道应该如何写:需要实现的功能是:1.使用每个表中的"G4"单元格内容命名工作表;2.错误处理:工作表名重复时命名为"工作表名(...
我自己写的一部分代码如下,但执行有问题,不知道应该如何写:
需要实现的功能是:
1. 使用每个表中的"G4"单元格内容命名工作表;
2. 错误处理:工作表名重复时命名为"工作表名(1)",工作表名为空格时自动命名为"工作表(i)"
请VBA高手指正,谢谢.
Sub change()
For i = 1 To ActiveWorkbook.Worksheets.Count
n = Worksheets(i).Range("G4").Value
if n="" then
xxxxxxx(不知道如何写了)
end if
Worksheets(i).Name = n
Next
End Sub 展开
需要实现的功能是:
1. 使用每个表中的"G4"单元格内容命名工作表;
2. 错误处理:工作表名重复时命名为"工作表名(1)",工作表名为空格时自动命名为"工作表(i)"
请VBA高手指正,谢谢.
Sub change()
For i = 1 To ActiveWorkbook.Worksheets.Count
n = Worksheets(i).Range("G4").Value
if n="" then
xxxxxxx(不知道如何写了)
end if
Worksheets(i).Name = n
Next
End Sub 展开
6个回答
展开全部
工具/材料:Microsoft Office Excel2007版,Excel表格。
1、首先选中Excel表格,双击打开。
2、然后在该界面中,选中要以某一单元格内容命名的工作表,右键点击“查看代码”。
3、再者在该界面中,输入VBA代码“Sub 更改名称度() Dim mYn As String mYn = Cells(1, 1) ActiveSheet.Name = mYn End Sub”。
4、其次在该界面中,点击“执行”按钮。
5、、最后在该界面中,成功以某一单元格内容命名工作表。
推荐于2017-10-06 · 知道合伙人软件行家
关注
展开全部
Sub change()
For i = 1 To ActiveWorkbook.Worksheets.Count
n = Worksheets(i).Range("G4").Value
if n="" then
Msgbox “单元格空" '提示一下但不作操作,或者按照你的需要再修改
Else
ActiveWorkbook.Worksheets(i).Name = n
End if
Next
End Sub
'注意单元格内不能有非法字符,如“/”,否则会出错
For i = 1 To ActiveWorkbook.Worksheets.Count
n = Worksheets(i).Range("G4").Value
if n="" then
Msgbox “单元格空" '提示一下但不作操作,或者按照你的需要再修改
Else
ActiveWorkbook.Worksheets(i).Name = n
End if
Next
End Sub
'注意单元格内不能有非法字符,如“/”,否则会出错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sub change
dim i as integer, j as integer
dim nam as string
for i=1 to thisworkbook.sheets.count
nam=worksheets(i).range("G4")
for j=1 to worksheets(j)
if worksheets(j).name=nam then
worksheets(i).name="工作表("& i & ")
else
worsheets(i)=nam
end if
next
next
end sub
dim i as integer, j as integer
dim nam as string
for i=1 to thisworkbook.sheets.count
nam=worksheets(i).range("G4")
for j=1 to worksheets(j)
if worksheets(j).name=nam then
worksheets(i).name="工作表("& i & ")
else
worsheets(i)=nam
end if
next
next
end sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub change()
For i = 1 To ActiveWorkbook.Worksheets.Count
n = Worksheets(i).Range("G4").Value
if n<>"" then
Worksheets(i).Name = n
end if
Next
End Sub
For i = 1 To ActiveWorkbook.Worksheets.Count
n = Worksheets(i).Range("G4").Value
if n<>"" then
Worksheets(i).Name = n
end if
Next
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询