2013-04-09 94 views
0

我是一名优秀的新手。我正在尝试编写宏来基于表单1填充sheet2。我已经在工作表Sheet1以下栏目: 名称CustomName CustomeValue 一湾11 站点英国 机架3 B位英国 的B机架2 ç空空使用宏填充表单2

表2 - 输出应该如下 名称湾网站机架 一个11英国3 b英国2 ç

我曾尝试编写宏按行匹配行,比较和选择填充,但在巨大的日期在脚本中的随机填充,任何帮助,在此将受到高度赞赏。

代码片段:

Sub populatingsheet2() 

    x = 2 
    y = 2 
    Sheet2.Cells(y, 1) = Sheet1.Cells(x, 1) 
    Do While x <= 4 

     If Sheet1.Cells(x, 1) = Sheet1.Cells(x + 1, 1) Then 

      ‘I want unique records 
      'MsgBox "Identical" 
      If Sheet1.Cells(x, 2) = "Bay" Then 
       Sheet2.Cells(y, 2) = Sheet1.Cells(x, 3) 
      End If 
      If Sheet1.Cells(x, 2) = "Site" Then 
       Sheet2.Cells(y, 3) = Sheet1.Cells(x, 3) 
      End If 
      If Sheet1.Cells(x, 2) = "Rack" Then 
       Sheet2.Cells(y, 4) = Sheet1.Cells(x, 3) 
      End If 

     Else: 'MsgBox "Not Identical" 
     End If 
     x = x + 1 
     y = y + 1 

    Loop 

End Sub 
+1

你能告诉我们你有什么。我们可以尝试改进它,并且能够更好地了解您的情况。 – 2013-04-09 09:32:35

+0

为什么不通过激活宏记录器(** Tools> Macro> Record New Macro ... **)来开始,然后执行诸如复制和粘贴一个单元格,一系列单元格,整行,整列以及最后,在停用/关闭录像机之前复制工作表。这会给你一些代码来看看和玩弄。之后,我们可以帮助您改进自己的代码,而不是向您提供我们的代码! – 2013-04-09 10:06:28

+0

感谢KazJaw和Philip:我的脚本一直在努力,做了一些基本的东西,但现在它已经完全损坏。我很快就会给你我所做的。所以你们可以帮助我。 – 2013-04-09 10:25:38

回答

1

那么,你有没有考虑,你可以做表2中的所有,使用公式,而宏?

也许像这样在表2 Colummn B:

=IF(Sheet1!B:B="Bay",Sheet1!C:C,"") 

在C列

=IF(Sheet1!B:B="Site",SHeet1!C:C,"") 

心连心

菲利普