vba - Excel 宏提供输入框,创建新工作表,将数据从原始工作表复制到新工作表

标签 vba excel

我正在尝试创建一个宏,一旦单击按钮就会显示一个输入框,只需说“你想调用什么新工作表?”,然后一旦用户输入名称,Excel 就会创建一个新工作表姓名。

但是,我希望将原始工作表中的数据复制到用户指定的新工作表中。

我有输入框工作,使用以下代码:

Sub NewSheet()

Sheets.Add.Name = InputBox("What Would You Like to Call the New Sheet?")    

End Sub

最佳答案

试试下面的代码:

    Sub NewSheet()

    Dim origSht             As Worksheet
    Dim destSht             As Worksheet

    On Error GoTo eHandle

    Set origSht = ActiveSheet

    Sheets.Add.Name = InputBox("What Would You Like to Call the New Sheet?")
    Set destSht = ActiveSheet

    origSht.Cells.Copy Destination:=destSht.Cells

Exit Sub

eHandle:

    MsgBox "You must name the new sheet"
    set origSht = nothing
    set destSht = nothing

End Sub

关于vba - Excel 宏提供输入框,创建新工作表,将数据从原始工作表复制到新工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39290030/

相关文章:

VBA基于另一个变量创建公式

excel - 将 Excel 连接到雪花

excel - 添加对值的引用后,openpyxl LineChart 显示为空

excel - 有没有办法远程查询 Excel 以检查是否安装/启用了宏?

vba - 自动填充到列中的最后一行

vba - 在 Vba Excel 中提取 .rar 文件

vba - 使用 VBA 在 Excel 中创建列表/数组以获取列中唯一名称的列表

excel - 无法获取工作表函数类的 Sumif 属性

vba - 在 UserForm 属性中使用 Dictionary.Exists 会给出错误 404 object required

excel - 列出 >3 个输入的所有可能的百分比分割