Как скопировать код, использованный на одном листе / вкладке в рабочей книге, для создания отчета на другом листе / вкладке в той же рабочей книге - PullRequest
0 голосов
/ 25 января 2019

Допустим, есть отчет, который уже был создан на листе в рабочей книге с использованием макросов.Я хочу создать другой отчет в той же книге на другом листе (вкладке) с точно таким же кодом в VBA, который использовался для создания отчета, который уже был создан.Как мне скопировать и заставить эти коды работать на другом листе, чтобы создать похожий отчет?

1 Ответ

0 голосов
/ 25 января 2019

Любой код в самой рабочей таблице должен использовать Me для ссылки на себя - таким образом, он будет работать при копировании / дублировании

Любой другой код должен использовать рабочую таблицу в качестве аргумента или объекта уровня модуля:

Option Explicit

Sub CreateReport(TargetSheet As Worksheet)
    TargetSheet.Cells(1,1).Value = "Hello"
End Sub

или

Option Explicit
Public TargetSheet AS Worksheet

Sub CreateReport()
    If TargetSheet Is Nothing Then Exit Sub 'In case the object has not been set
    TargetSheet.Cells(1,1).Value = "Hello"
End Sub

Затем вы можете продублировать «основной» шаблон листа и запустить макросы для его назначения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...