【问题标题】:Is there an excel function to duplicate rows based on a range of numbers in a cell?是否有一个excel函数可以根据单元格中的数字范围复制行?
【发布时间】:2015-11-23 16:09:23
【问题描述】:

我正在尝试导入数据库,并且每个产品变体都必须逐行进行。不幸的是,设置这个的人,其中一个单元格的范围是例如 1-50。我想知道是否有某种方法可以复制具有确切信息的行,除了用 1 替换单元格,然后用 2 替换新行,等等一直到 50。

【问题讨论】:

  • 是的,有'用某种方法来复制具有确切信息的行,除了用 1 替换单元格,然后用 2 替换新行,等等一直到 50' i>.

标签: mysql wordpress excel vba import


【解决方案1】:

我不知道是否有功能可以做到这一点,但是您可以使用 excel 宏来解决您的问题。

我尝试了一个简单的例子:

假设你的excel文件格式是

Name    Range
A       3
B       5

在你运行 VBA 脚本后它变成了

Name    Range
A       1
A       2
A       3
B       1
B       2
B       3
B       4
B       5

我用“自下而上”版本更改了代码,因为它是一个更好的解决方案

Private Sub InsertBottomToTop()

Dim i, cursor As Integer

cursor = 5 '# of rows you have initially (including header)'

For cursor = 5 To 2 Step -1
    For i = 0 To Cells(cursor, 2) - 2
        Cells(cursor, 1).EntireRow.Copy
        Range("A" & Cells(cursor, 1).Row + 1).Insert Shift:=xlDown
        Application.CutCopyMode = False
        Cells(cursor, 2).Value = Cells(cursor, 2).Value - 1
    Next i
Next cursor

End Sub

【讨论】:

  • 您可能希望自下而上地工作,这样您就不会重新评估插入的单元格(或更改 For ... Next 中的最后一行)。
猜你喜欢
  • 1970-01-01
  • 2018-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多