Excel精英培训网

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

[已解决]老师:请问怎样实现 sheet名字重复就忽略 或给个提示 没重复就复制sheet1表内容到...

[复制链接]
发表于 2015-12-24 13:40 | 显示全部楼层 |阅读模式
如图我想复制sheet1到    以文本框内容为名字的sheet表中 名字重复了就出错
要怎样实现 名字重复就忽略 或给个提示 没重复就复制sheet1表内容到新表中

谢谢老师们
QQ图片20151224132646.png QQ图片20151224132922.png
最佳答案
2015-12-24 14:16
Private Sub CommandButton1_Click()
    On Error Resume Next
    Application.DisplayAlerts = False
    Sheet1.Copy Sheets(Sheets.Count)
    ActiveSheet.Name = TextBox1  'InputBox("请输入新建表格名字", "")
    If ActiveSheet.Name <> TextBox1.Value Then
        MsgBox "【 " & TextBox1.Value & " 】已存在!"
        ActiveSheet.Delete
    End If
    Application.DisplayAlerts = True
End Sub

2-9.工作表移动与复制.rar

20.51 KB, 下载次数: 10

发表于 2015-12-24 14:16 | 显示全部楼层    本楼为最佳答案   
Private Sub CommandButton1_Click()
    On Error Resume Next
    Application.DisplayAlerts = False
    Sheet1.Copy Sheets(Sheets.Count)
    ActiveSheet.Name = TextBox1  'InputBox("请输入新建表格名字", "")
    If ActiveSheet.Name <> TextBox1.Value Then
        MsgBox "【 " & TextBox1.Value & " 】已存在!"
        ActiveSheet.Delete
    End If
    Application.DisplayAlerts = True
End Sub
回复

使用道具 举报

发表于 2015-12-24 14:22 | 显示全部楼层
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Dim sName As String
sName = TextBox1
On Error Resume Next
Set ws = Sheets(sName)
If ws Is Nothing Then '指定的工作表不存在
Sheets.Add.Name = sName
Else '指定的工作表已存在
MsgBox "“" & sName & "”工作表已存在。"
ws.Activate
End If
End Sub
回复

使用道具 举报

 楼主| 发表于 2015-12-24 14:59 | 显示全部楼层
2楼3楼的老师 谢谢你们
不过3楼的老师语句没复制sheet1
我已经看懂思路了  谢谢指点
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 14:38 , Processed in 0.324931 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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