循环通过VBA重复该过程

时间:2016-04-26 09:32:58

标签: excel-vba for-loop vba excel

我有两张纸。一个有仓库(18个仓库),第二个有商店(50个商店)。

我需要在200公里范围内将商店映射到仓库。

我已经编写了一个相同的代码,但需要循环它。代码如下所述

代码将从仓库表中复制第一个仓库,并将其粘贴到商店表中的每个50个商店。 然后,工作表中的一个公式(已在商店表中更新)计算每个商店和第一个仓库之间的KM差异。然后过滤掉200公里范围内的商店,复制并粘贴(转置)仓库表中的第一个仓库。现在我想为第二个仓库做同样的程序,然后是第三个到结束。请帮忙

==================================

Sub RADIUS()


Worksheets("SHOP").Activate
AutoFilterMode = False
Range("f2:g4175").Clear
Worksheets("WAREHOUSE").Activate
Range("C2:d2").Select
Selection.Copy


Worksheets("SHOP").Activate
Range("f2:g4175").PasteSpecial _
Operation:=xlPasteSpecialOperationAdd
Application.Calculation = xlCalculationAutomatic


AutoFilterMode = True
Range("A1:h1").AutoFilter Field:=8, Criteria1:="<=200"
Range("A2:A" & Cells(Rows.Count, "A").End(xlUp).Row).SpecialCells(xlCellTypeVisible).Copy _


Worksheets("WAREHOUSE").Activate


Range("e" & Rows.Count).End(xlUp).Offset(1).Select


Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True


End Sub

1 个答案:

答案 0 :(得分:0)

我建议在子声明之后,我将包含以下内容:

j = 2
While Worksheet("Warehouse").Range("C"&j) <> "" then

在循环结束时,在End Sub上方,我将包含以下内容:

j = j + 1
Wend