Получение данных из нескольких листов в переменную, определенную для другого листа - PullRequest
0 голосов
/ 16 июня 2020

Я столкнулся со случаем, когда я хочу получить данные из нескольких листов в переменную на другом листе в VBA. Я хочу добавить эти переменные данные в текстовый файл.

Я не хочу экспортировать все данные в текстовый файл, я хочу экспортировать данные только в определенном диапазоне.

Итак, прямо сейчас для каждого листа у меня есть переменная, которая содержит необходимые данные с каждого листа, и я хочу отправить данные из переменной с каждого листа в функцию, определенную в мастер-листе.

Допустим, у меня есть переменная s1 в лист 1, содержащий некоторые данные. Я хочу, чтобы эти переменные данные можно было оценить на другом листе.

Как я могу выполнить указанное выше требование?

Ответы [ 2 ]

2 голосов
/ 16 июня 2020

В случае, если вы хотите управлять им из MasterSheet, вы должны объявить переменную как Publi c в Таблицах, а затем задать какое-то значение для текста. Вы можете получить значения из MasterSheet:

On Sheet1

Public s1 As String

Sub giveValue()
    s1 = "Hello from Sheet1"
End Sub

On Sheet2

Public s1 As String

Sub giveValue()
    s1 = "Hello from Sheet2"
End Sub

Доступ с помощью MasterSheet на MasterSheet или любой модуль

Sub AssessSheetVariables()
    Debug.Print Sheet1.s1
    Debug.Print Sheet2.s1
End Sub

Вывод:

Hello from Sheet1
Hello from Sheet2
1 голос
/ 16 июня 2020

Если у вас есть s1 на листе Sheet1, вы можете передать его функции MasterSheet:

On Sheet1

Sub Example()
Dim s1 As String
    s1 = "Hello"
    MasterSheet.AssessString s1
End Sub

On MasterSheet

Sub AssessString(s As String)
    ' do some stuff
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...