首页 > 其他分享 >根据自定义名称批量创建sheet页,详细操作步骤!

根据自定义名称批量创建sheet页,详细操作步骤!

时间:2024-07-13 12:54:54浏览次数:11  
标签:sheet 自定义 工作 创建 sheetName 点击 名称 Sheets 操作步骤

在VBA(Visual Basic for Applications)中,可以很根据工作表(Sheet1)上的一个名称列表来自动创建多个新的工作表,每个名称对应一个新的工作表。假设Sheet1的A列从A2开始包含了需要创建的工作表名称(A1可以是标题行,如"Sheet 名称")。如图所示:

第一步:没有office excel 的宝子请先安装,下载教程请点击下面链接查看:

excel、word、ppt 下载安装步骤整理

第二步:打开Excel,然后按 Alt + F11 打开VBA编辑器。

第三步:在VBA编辑器中,选择 插入 -> 模块 来创建一个新的模块。

第三步:在新模块的代码窗口中,编写代码(下面是一个基本的VBA脚本示例,展示了如何实现这个功能)

Sub CreateSheetsFromList()
    Dim ws As Worksheet
    Dim wsNames As Worksheet
    Dim lastRow As Long
    Dim sheetName As String
    Dim i As Long
    
    ' 设置Sheet1为包含名称的工作表
    Set wsNames = ThisWorkbook.Sheets("Sheet1")
    
    ' 找到名称列表的最后一行
    lastRow = wsNames.Cells(wsNames.Rows.Count, "A").End(xlUp).Row
    
    ' 从第二行开始循环(假设第一行是标题)
    For i = 2 To lastRow
        sheetName = wsNames.Cells(i, 1).Value
        
        ' 检查名称是否为空,并避免创建重复名称的工作表
        If sheetName <> "" And Evaluate("ISREF('" & sheetName & "'!A1)") = False Then
            ' 创建新工作表
            Sheets.Add After:=Sheets(Sheets.Count)
            ' 命名新工作表
            ActiveSheet.Name = sheetName
        Else
            ' 如果工作表已存在或名称为空,则打印消息(可选)
            Debug.Print "Sheet named '" & sheetName & "' already exists or is empty."
        End If
    Next i
    
    ' 可选:清除消息窗口(如果使用了Debug.Print)
    ' MsgBox "Sheets created successfully!", vbInformation
End Sub

如图:

第四步:按 F5 键运行宏,或点击绿色小三角形运行,或关闭VBA编辑器,返回到Excel,并通过“开发工具”->“宏”,选择 CreateSheetsFromList 并运行它。

最后一步:另存启用宏的工作簿xml,这样就相当于你的宏是不依赖于某个具体的工作簿而单独存在,这样在其他工作簿中也可以使用这个宏,前提是这个宏工作簿是打开并且启用宏状态。

>>ctrl+s保存会弹出窗口,点击返回

>>选择需要保存的路径这台电脑>>选择Excel 启用宏的工作簿(*xlms)

>>点击保存

>>保存后是一个xlsm后缀的工作簿

在其他工作簿中使用示例

>>打开刚刚保存的xlsm宏工作簿(如果有提示是否启用宏,则点击是)

>>打开你需要处理的工作簿

>>在xlsm宏工作簿的sheet页A列从A2开始(A1是标题行)填入你需要创建的sheet页名称

>>在需要处理的工作簿中>>点击开发工具>>点击宏

>>在弹出的窗口中选择需要执行的宏文件>>点击执行

执行结果示例:

注意:xlsm宏文件中sheet1名称勿修改,因为脚本是根据名为"sheet1"中的A列从A2开始所包含的名称来创建的sheet页的

如果不想自己操作的宝子可以直接下载资源使用哈,在此文章顶部【批量创建sheet页.xlsm】(或者在博主的资源里下载)

标签:sheet,自定义,工作,创建,sheetName,点击,名称,Sheets,操作步骤
From: https://blog.csdn.net/2401_83100107/article/details/140346911

相关文章

  • Vue2-利用自定义指令实现按钮权限控制
    文件结构新建directive目录,并在该目录下新增permission目录,在permission目录下新增hasPerm.js和index.js。文件内容hasPerm.js//操作按钮权限控制importstorefrom"@/store";exportdefault{/***被绑定元素插入父节点时调用*@param{*}el指令绑定的元素......
  • 我的MYSQL学习心得, 自定义存储过程和函数
    转载:https://www.cnblogs.com/lyhabc/p/3793524.html我的MYSQL学习心得(一)简单语法我的MYSQL学习心得(二)数据类型宽度我的MYSQL学习心得(三)查看字段长度我的MYSQL学习心得(四)数据类型我的MYSQL学习心得(五)运算符我的MYSQL学习心得(六)函数我的MYSQL学习心得(七)查询我的MYSQ......
  • 自定义ResultMap中的id 和result的区别
    <resultMapid="CashInvoiceMap"type="com.dfire.soa.invoice.bo.Invoice">  <idcolumn="id"property="id"/>  <resultcolumn="order_id"property="orderId"/>  <resultco......
  • keycloak~使用自定义的注册页
    添加FormAction的实现packageorg.keycloak.phone.authentication.forms;importorg.keycloak.Config;importorg.keycloak.authentication.FormAction;importorg.keycloak.authentication.FormActionFactory;importorg.keycloak.authentication.FormContext;importorg.......
  • 自定义类型:结构体
     一、结构体的声明结构体是一些值的集合,这些值称为成员变量。结构的每个成语可以是不同的类型的变量。1.1结构体变量的创建和初始化结构体的初始化为分为按照结构体成员的顺序初始化和按照指定的顺序初始化1.2结构体的特殊声明在声明结构体的时候,可以不完全的声明如......
  • linux-Rsyslog自定义配置json模板
    配置日志接收模板和转发参考:https://www.cnblogs.com/xwupiaomiao/p/17565418.html自定义模板配置文件在主配置文件中添加(rsyslog.conf)include(file=“/etc/rsyslog.d/*.conf”mode=“optional”)方案一在/etc/rsyslog.d/下创建一个配置文件ct3a1.conf#日志模板......
  • rsyslog配置(服务端、客户端)-UDP-TCP转发-imfile自定义应用程序的日志推送
    ##概念#Syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它。通过设置一个syslog服务器,可以将不同设施/主机发送的日志,过滤和合并到一个独立的位置,这样使得你更容易地查......
  • [Tools] VIm cheat sheet
    vimcheatsheetKeepthishandyasyouexperimentwithvim:http://www.fprintf.net/vimCheatSheet.htmlHereisanotherguidethatcoversthecommandsincrementally:http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/ movingaround-hjkl......
  • 【日常记录-Java】自定义进程池
    Author:赵志乾Date:2024-07-12Declaration:AllRightReserved!!!1.简介    服务器上有些进程需要池化管理,使用SpringBoot构建Web服务提供管理api,内部使用自定义的进程池维护已启动的进程;    核心点: 进程池管理的进程都会使用系统的一个端口对外提供服务; ......
  • 演示:【Avalonia-Controls】Avalonia皮肤,主题,自定义控件,数据库,系统模块资源库
    一、目的:分享一个Avalonia皮肤,主题,自定义控件,数据库,系统模块资源库开源地址:GitHub-HeBianGu/Avalonia-Controls:Avalonia控件库Nuget包地址:NuGetGallery|PackagesmatchingHeBianGu.AvaloniaUI.演示视频地址:【Avalonia-Controls】Avalonia工具组件皮肤库v1.0.0_......