1. 打开Excel文件,按下Alt + F11打开Visual Basic for Applications(VBA)编辑器。

  2. 在VBA编辑器中,插入一个新的模块。右键点击项目资源管理器中的"Microsoft Excel 对象",选择"插入" -> “模块”。

  3. 在模块中,复制粘贴以下函数代码:

Sub SplitColumns()
    Dim i As Long
    Dim j As Long
    Dim lastRow As Long
    Dim sourceSheet As Worksheet
    Dim targetSheet As Worksheet
    Dim sourceRange As Range
    Dim targetRange As Range
    
    ' 设置源工作表为活动工作簿的第一个工作表
    Set sourceSheet = ActiveWorkbook.Sheets(1)
    j = 1
    
    ' 从第2行开始,每隔8列进行循环
    For i = 2 To 200 Step 8
        ' 从列A中获取新工作表的名称
        Dim sheetName As String
        sheetName = sourceSheet.Cells(j, 1).Value
        
        ' 将工作表名称中的无效字符替换为下划线
        sheetName = Replace(sheetName, "/", "_")
        sheetName = Replace(sheetName, "\", "_")
        sheetName = Replace(sheetName, "?", "_")
        sheetName = Replace(sheetName, "*", "_")
        sheetName = Replace(sheetName, "[", "_")
        sheetName = Replace(sheetName, "]", "_")
        sheetName = Replace(sheetName, ":", "_")
        sheetName = Replace(sheetName, "|", "_")
        sheetName = Replace(sheetName, "=", "_")
        sheetName = Replace(sheetName, "+", "_")
        sheetName = Replace(sheetName, "<", "_")
        sheetName = Replace(sheetName, ">", "_")
        
        ' 创建一个以列A中的名称为名字的新工作表
        Set targetSheet = ActiveWorkbook.Sheets.Add(After:=Sheets(Sheets.Count))
        targetSheet.Name = sheetName
        
        ' 将相应的列数据复制到新工作表
        lastRow = sourceSheet.Cells(Rows.Count, i).End(xlUp).Row
        Set sourceRange = sourceSheet.Range(sourceSheet.Cells(1, i), sourceSheet.Cells(lastRow, i + 7))
        Set targetRange = targetSheet.Range("A1")
        sourceRange.Copy Destination:=targetRange
        
        ' 调整新工作表的列宽和设置第一行为粗体
        targetSheet.Columns.AutoFit
        targetSheet.Rows("1:1").Font.Bold = True
        
        j = j + 1
    Next i
    
    ' 清除剪贴板中的复制内容
    Application.CutCopyMode = False
End Sub

按需修改

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐