2015-07-10 102 views
0

我创建了一个按钮,可将一个工作表中的所有单元复制到新的工作表中。但是,我希望第一张工作表的总数量(H)列进入新工作表的前一个数量(G)列。因此,我希望当前数量(F)列清除值。对于每张新纸张,色谱柱的长度可能会增加,因此我无法设置特定的范围。将列中的值复制到另一个工作表中的另一列

ActiveSheet.Range(“F”)。ClearContents ??

我所做的任何事情都有复制粘贴命令,我宁愿直接的方法。 非常感谢!

回答

0

要选择F列整列,使用

ActiveSheet.Range("F1").EntireColumn.ClearContents 

还可以将此扩展到EntireRow等


编辑 - 现在我清楚你在问什么。

如果您已经有一个按钮将整个工作表复制到另一个工作表,那么我认为它也复制了所有原始数据。我不确切知道工作表上的内容,但下面的代码应该会告诉你如何复制&粘贴整列。

假设有两列G和H. G的第一行命名为“Previous”,H的第一行命名为“Current”。下面的代码替换G列与列H,而第一行中保存的列名:

Sub Test() 

    'Clear Column G: 
    Range(Cells(2, 7), Cells(Rows.Count, 7)).ClearContents 

    'Copy & Paste H to G: 
    Range(Cells(2, 8), Cells(Rows.Count, 8)).Copy 
    Range("G2").Select 
    ActiveSheet.Paste 

    'Clear Column H: 
    Range(Cells(2, 8), Cells(Rows.Count, 8)).ClearContents 

End Sub 

这是复制和粘贴。如果你没有需要保存的公式,你可以简单地通过剪切和粘贴来解决所有的代码:

Sub Test() 
    Range(Cells(2, 8), Cells(Rows.Count, 8)).Cut 
    Range("G2").Select 
    ActiveSheet.Paste 
End Sub 
+0

谢谢是的 - 但我在寻找如何将整个列的内容复制到新工作表中的另一列。 –

+0

我不确定我是否理解你的问题。你已经创建了一个按钮来做到这一点,对吧? – AdmiralWen

+0

我创建了一个将整个工作表复制到新工作表的按钮。然后,我希望sheet1中的列H(总数量)中的值覆盖新工作表的列G(以前的数量)中的值。这个想法是,在一段时间后(比如说一个月),用户会在下一个时间段创建一个新的工作表 - 数量将被更新。对不起,这是明确的泥 –

0

会这样的工作?

Columns("F:F").Select 

Selection.ClearContents 
+0

ClearContents确实有效 - 它从1列复制到另一个不工作... –

+0

好的,我想你想从H复制到G并清除F,是否正确?在这种情况下,我认为你可以这样做:'列(“G:G”)。选择 Selection.Copy Columns(“F:F”)。Select ActiveSheet.Paste' – ikcodez

相关问题