2015-03-02 88 views
0

我试着寻找其他类似的问题和解决方案,但作为一名Excel初学者,我无法弄清楚。自动填充新数据表

所以我有以下宏:

Sub Worksheet_Change(ByVal Target As Range) 
Dim wsNew As Worksheet 
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub 

On Error Resume Next 

If Not Intersect(Target, Range("B46:B99")) Is Nothing Then 

    ThisWorkbook.Sheets("LT").Copy _ 
After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) 



End If 
End Sub 

,它打开同一工作簿中新的一页,我会需要自动填充特定的细胞随着从主表中的数据。主表:http://i.imgur.com/RJe44hQ.jpg新表:http://i.imgur.com/eatbg6j.jpg。我需要复制的单元格是红色的。

在此先感谢您的帮助!对所有这些都是新鲜事物。

回答

0

由于您没有指定需要从主工作表中抽取哪些值,因此我无法获得太具体的结果,但通常需要采取三种方法。

1)如果数据是在两片材单元的连续范围(S),可以只从主片上的数据复制在创建新的薄片后,然后将该值粘贴到正确的目标范围

2)如果两张纸上的数据都不是连续的,那么下一个最佳选择是根据主页上相应单元格的值设置每个目标单元格的值。例如:要将Sheet2上的A2设置为Sheet1上的B4的值,您可以使用Worksheets("Sheet2").Range("A2").value = Worksheets("Sheet1").Range("B4").value

3)如果数据不是连续的,也可以工作,但如果有超过〜5个值复制。您可以创建一个适当的变量(字符串用于文本,long/int用于数字等),在创建新工作表之前设置该变量,然后在创建新工作表后使用它们设置适当的单元格。