2015-07-10 3 views
0

Я создал кнопку, которая копирует все ячейки в одном листе на новый рабочий лист. Однако я хочу, чтобы столбец Total Quantity (H) первого листа перешел в столбец «Предыдущее количество» (G) нового рабочего листа. Для этого я хочу, чтобы столбец Current Quantity (F) очистил значения. С каждым новым листом длина столбца может расти, поэтому я не могу установить определенный диапазон.Копирование значений в столбце в другой столбец на другом листе

ActiveSheet.Range ("F"). ClearContents ??

Все, что я сделал, имеет команды копирования вставки, и я бы предпочел прямой метод. Большое спасибо !!!

ответ

0

Чтобы выделить весь столбец в колонке F, используйте

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

Вы также можете расширить это EntireRow и т.д.


Edit - теперь, когда я ясно, что вы просите.

Если у вас уже есть кнопка, которая копирует весь рабочий лист на другой, я предполагаю, что он копирует все исходные данные. Я точно не знаю, что на ваших листах, но следующий код должен показать вам, как скопировать & вставить целые столбцы.

Предположим, что есть два столбца, G и H. Первая строка G называется «Предыдущая», а первая строка H называется «Текущий». Следующий код заменяет столбец 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 

Это Copy и Paste. Если у вас нет формул, которые нуждаются в консервирующих, вы можете обойти весь код, просто вырезать и наклеивать:

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

Спасибо да, но я ищу как скопировать содержимое всего столбца в другой столбец на новом листе. –

+0

Я не уверен, что тогда я понимаю вашу проблему. Вы уже создали кнопку, которая делает именно это, не так ли? – AdmiralWen

+0

Я создал кнопку, которая копирует весь рабочий лист на новый рабочий лист. Затем я хочу, чтобы значения в столбце H (общее количество) в листе1 перезаписывали значения в столбце G (предыдущее количество) нового рабочего листа. Идея состоит в том, что после периода времени (скажем, месяца) пользователь создает новый рабочий лист в течение следующего периода времени - где количества будут обновляться. Извините, это ясно, как грязь –

0

Будет что-то вроде этой работы?

Columns("F:F").Select 

Selection.ClearContents 
+0

В ClearContents делает работу - его копирование с 1 столбца в другой, не работает ... –

+0

ОК, я думаю, вы хотите скопировать из H в G и очистить F, это правильно? В этом случае я думаю, что вы можете сделать: 'Столбцы (« G: G »). Выберите Selection.Copy Столбцы (« F: F »). Выберите ActiveSheet.Paste' – ikcodez

Смежные вопросы