Копировать таблицу значений ячейки в другую первую пустую ячейку в столбце, не копировать формулу, а только отображать - PullRequest
0 голосов
/ 02 октября 2018

На данный момент у меня есть код, который работает, копируя и вставляя формулы определенных ячеек на одном листе в другой лист первой пустой ячейки в столбце.Однако существует проблема с копированием формул этих ячеек, а не отображаемых рисунков, см. Следующий код:

[B3].Copy .Cells(.Rows.Count, "B").End(xlUp).Offset(1)
[C3].Copy .Cells(.Rows.Count, "C").End(xlUp).Offset(1)
[D3].Copy .Cells(.Rows.Count, "D").End(xlUp).Offset(1)
[E3].Copy .Cells(.Rows.Count, "F").End(xlUp).Offset(1)
[B5].Copy .Cells(.Rows.Count, "G").End(xlUp).Offset(1)
[E12].Copy .Cells(.Rows.Count, "H").End(xlUp).Offset(1)
[E24].Copy .Cells(.Rows.Count, "I").End(xlUp).Offset(1)

Это копирует формулы, и я хочу, чтобы только отображаемое значение ячейка (выход).Поэтому для лучшего объяснения: Ячейка B3 копируется с рабочего листа («Шаблон») в первую пустую ячейку в столбце B на рабочем листе («project_tracker»)

Я надеюсь, что кто-то может мне помочь.

С уважением,

Бенджамин

1 Ответ

0 голосов
/ 02 октября 2018

Если вы хотите значение , то вместо копирования сделайте перенос значения, что-то вроде следующего:

Sub CopyToTracker()

    Dim templateWS As Worksheet
    Dim trackerWS As Worksheet

    Set templateWS = ThisWorkbook.Sheets("Template")
    Set trackerWS = ThisWorkbook.Sheets("project_tracker")

    With trackerWS
        .Cells(.Rows.Count, "B").End(xlUp).Offset(1).Value = templateWS.Range("B3").Value
        .Cells(.Rows.Count, "C").End(xlUp).Offset(1).Value = templateWS.Range("C3").Value
        ' and so on
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...