【问题标题】:Split Excel sheet into multiple sheets将 Excel 工作表拆分为多个工作表
【发布时间】:2014-06-17 13:34:22
【问题描述】:

我想将一个 Excel 工作表分成多个工作表

例如:

假设有一个包含 7 列的工作表,如下所示

第 1 列、第 2 列、第 3 列、第 4 列、第 5 列、第 6 列、第 7 列

我想将它分成 3 张,如下所示,Column1 在所有张中都是通用的。

Column1、Column2、Column3 -- 工作表 1

第 1 列、第 4 列、第 5 列 -- 工作表 2

第 1 列、第 6 列、第 7 列 -- 第 3 页

这可能吗?我已经在互联网上搜索了将近一天的解决方案,但我没有任何相关的解决方案。

【问题讨论】:

  • 如果您使用(例如)VBA 是可能的。你知道任何编程语言吗?
  • 没有。我不懂任何编程语言。我想将 Excel 文件(实际文件有 3000 列)导入 SQL Server。我想将工作表分成 250 列和 1 个公共列,然后可以由 SQL Server 编程处理。
  • 在这种情况下 - 为什么不将文件导入临时表(BULK INSERT)并从那里运行拆分查询?

标签: excel-2010


【解决方案1】:

这会做你想做的事:

Sub DataToDiffSheets()
Dim count As Long

    count = Application.CountA(Range("A:A"))

    Range("A1:A" & CStr(count)).Copy
    Sheets("Sheet2").Select
    Range("A1").Select
    ActiveSheet.Paste
    Sheets("Sheet3").Select
    Range("A1").Select
    ActiveSheet.Paste
    Sheets("Sheet1").Select
    Range("D1:E" & CStr(count)).Cut
    Sheets("Sheet2").Select
    Range("B1:C" & CStr(count)).Select
    ActiveSheet.Paste
    Sheets("Sheet1").Select
    Range("F1:G" & CStr(count)).Cut
    Sheets("Sheet3").Select
    Range("B1:C" & CStr(count)).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Sheets("Sheet1").Select

End Sub

这不是最好的,也不是最干净的,但它会起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多