跳到主要内容
 

如何在Excel中将长列表分成相等的组?

作者:晓阳 最后修改时间:2024-09-05
将长列表分成相等的组

如果需要将一长串数据分成多个相等的组,如下面的屏幕截图所示,那么如何在Excel中快速轻松地处理此任务?

使用VBA代码将长长的列表分成多个相等的组

使用 Kutools for Excel 将长列表分成多个相等的组


使用VBA代码将长长的列表分成多个相等的组

除了逐个复制和粘贴数据外,以下VBA代码也可以帮您一个忙,请执行以下步骤:

1。 按住 ALT + F11 键打开 Microsoft Visual Basic应用程序 窗口。

2。 点击 插页 > 模块,然后将以下代码粘贴到 模块 窗口。

VBA代码:将长列表分成多个相等的组

Sub SplitIntoCellsPerColumn()
'updateby Extendoffice
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xCell As Range
    Dim xTxt As String
    Dim xOutArr As Variant
    Dim I As Long, K As Long
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
Sel:
    Set xRg = Nothing
    Set xRg = Application.InputBox("please select data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Areas.Count > 1 Then
        MsgBox "does not support multiple selections, please select again", vbInformation, "Kutools for Excel"
        GoTo Sel
    End If
    If xRg.Columns.Count > 1 Then
        MsgBox "does not support multiple columns,please select again", vbInformation, "Kutools for Excel"
        GoTo Sel
    End If
    Set xOutRg = Application.InputBox("please select a cell to put the result:", "Kutools for Excel", , , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    I = Application.InputBox("the number of cell per column:", "Kutools for Excel", , , , , , 1)
    If I < 1 Then
        MsgBox "incorrect enter", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    ReDim xOutArr(1 To I, 1 To Int(xRg.Rows.Count / I) + 1)
    For K = 0 To xRg.Rows.Count - 1
      xOutArr(1 + (K Mod I), 1 + Int(K / I)) = xRg.Cells(K + 1)
    Next
    xOutRg.Range("A1").Resize(I, UBound(xOutArr, 2)) = xOutArr
End Sub

3. 然后按 F5 键以运行此代码,然后在弹出的框中选择要拆分为多个组的列,请参见屏幕截图:

vba 代码来选择数据范围

4。 并点击 OK 按钮,然后在以下提示框中选择要在其中查找结果的单元格,请参见屏幕截图:

vba 代码选择一个单元格来放置结果

5。 点击 OK,然后在提示框中输入要按列拆分的单元格数,请参见屏幕截图:

vba 代码输入要拆分的每列单元格数

6。 最后点击 OK 完成代码,并且所选列表数据已根据需要分为多个相等的组,请参见屏幕截图:

选定的列表数据已被拆分成多个相等的组


使用 Kutools for Excel 将长列表分成多个相等的组

如果你已经安装 Kutools for Excel,其 变换范围 这项功能,您可以快速将长列表分成多列和多行,还可以将多列组合成一个长列表。

Kutools for Excel 提供 300 多种高级功能来简化复杂任务,提高创造力和效率。 增强人工智能功能,Kutools 可以精确地自动执行任务,使数据管理变得毫不费力。 Kutools for Excel 的详细信息...         免费试用...

安装后 Kutools for Excel,请执行以下操作:

1。 选择要拆分的长列表,然后单击 库工具 > 范围 > 变换范围,请参见屏幕截图:

点击 kutools 的变换范围功能

2。 在 变换范围 对话框中选择 单列到范围 在下面 转换类型 部分,然后检查 固定值 并在框中指定每行的单元格数,请参见屏幕截图:

在对话框中指定选项

3。 然后点击 Ok,然后在提示框中选择要在其中查找结果的单元格,请参见屏幕截图:

选择要放置结果的单元格

4. 然后点击 OK 按钮,列表中的数据已根据需要分为多个相等的组。

立即下载和免费试用Excel的Kutools!

最佳办公生产力工具

🤖 Kutools 人工智能助手:基于以下内容彻底改变数据分析: 智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用 Kutools 函数...
热门特色: 查找、突出显示或识别重复项   |  删除空白行   |  合并列或单元格而不丢失数据   |   不使用公式进行四舍五入 ...
超级查询: 多条件VLookup    多值VLookup  |   跨多个工作表的 VLookup   |   模糊查询 ....
高级下拉列表: 快速创建下拉列表   |  依赖下拉列表   |  多选下拉列表 ....
列管理器: 添加特定数量的列  |  移动列  |  切换隐藏列的可见性状态  |  比较范围和列 ...
特色功能: 网格焦点   |  设计图   |   大方程式酒吧    工作簿和工作表管理器   |  资源库 (自动文本)   |  日期选择器   |  合并工作表   |  加密/解密单元格    按列表发送电子邮件   |  超级筛选   |   特殊过滤器 (过滤粗体/斜体/删除线...)...
前 15 个工具集12 文本 工具 (添加文本, 删除字符,...)   |   50+ 图表 类型 (甘特图,...)   |   40+ 实用 公式 (根据生日计算年龄,...)   |   19 插入 工具 (插入二维码, 从路径插入图片,...)   |   12 转化 工具 (小写金额转大写, 货币兑换,...)   |   7 合并与拆分 工具 (高级组合行, 分裂细胞,...)   |   ... 和更多

使用 Kutools for Excel 增强您的 Excel 技能,体验前所未有的效率。 Kutools for Excel 提供了 300 多种高级功能来提高生产力并节省时间。  单击此处获取您最需要的功能...


Office Tab 为 Office 带来选项卡式界面,让您的工作更加轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!