【发布时间】:2017-08-11 02:07:55
【问题描述】:
我需要从第一个选项卡中保存的原始数据填充一个选项卡中的特定列。我做了一个快速重新排序的 VBA 代码,以帮助任何人理解我正在尝试做的事情,希望他们可以改进。我还需要 VBA 代码在数据结束的那一行停止。目前记录的 VBA 代码下拉到第 159 行,但原始选项卡中的数据在第 72 行停止。我会在信息结束的那一行停止我的 VBA 代码,但这每天都在变化,可能在第 1 行的任何地方到 158。 (如果我在数据以原始数据结尾的位置填充了一个单元格,它会使工作表无法用于我需要它的其他目的,即使它是零。)
A 列和 B 列中有数据,所以我在想宏是否可以说数据是否在单元格 A15 中,然后从 G15 等中提取信息?无数据不拉。 我知道这对某些人来说可能看起来很基础,但作为一个新手,我仍然对 VBA 有所了解。
Sub Populate_Order()
ActiveWindow.SmallScroll Down:=-15
Range("M8").Select
ActiveCell.FormulaR1C1 = "='Order Sheet'!R[7]C[-6]"
Range("M8").Select
Selection.AutoFill Destination:=Range("M8:M159"), Type:=xlFillDefault
Range("M8:M159").Select
ActiveWindow.SmallScroll Down:=-135
Range("Q8").Select
ActiveCell.FormulaR1C1 = "='Order Sheet'!R[7]C[-9]"
Range("Q8").Select
Selection.AutoFill Destination:=Range("Q8:Q159"), Type:=xlFillDefault
Range("Q8:Q159").Select
ActiveWindow.SmallScroll Down:=-132
Range("R8").Select
ActiveCell.FormulaR1C1 = "='Order Sheet'!R[7]C[-9]"
Range("R8").Select
Selection.AutoFill Destination:=Range("R8:R159"), Type:=xlFillDefault
Range("R8:R159").Select
ActiveWindow.SmallScroll Down:=-123
Range("I3").Select
【问题讨论】:
-
谷歌
how to find last row和for loop。 -
另外,我高度建议通读并申请How to avoid using
.Select。 -
谢谢@BruceWayne,我将保存此线程,一旦我开始了解基础知识并获得某种理解,我将回到此。您是否有任何链接到更基本的理解,这对一个完整的新手很有用。我刚刚发现了宏,并认为我可以利用它们来使我的工作更轻松=早日完成;)谢谢