Как получить содержимое из разных листов, используя одну кнопку в VBA? - PullRequest
0 голосов
/ 16 ноября 2018

Я новичок в VBA Excel. Я хочу создать кнопку на одном рабочем листе и обработать все значения строк таблицы рабочего листа в файл. У меня есть 3 листа с именами "sheet1", "sheet2", "sheet3". Кнопка находится внутри листа1. Теперь я написал код для обработки этой кнопки.

Sub Button_Click()
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim Fileout As Object
Set Fileout = fso.CreateTextFile("myPath\MyFile.txt", True, True)

Set ws = Sheets("sheet2")
Set sh = Sheets("sheet3")

/* I want to print sheet2 table row values to file */

Fileout.Write "print each row to file"

/* I want to get sheet3 table row values to file */

Fileout.Write "print each row to file"

Fileout.Close

End Sub

Я хочу знать, как обходить строки таблицы по очереди. Любая помощь ? или Ай предложения?

1 Ответ

0 голосов
/ 16 ноября 2018

Вы можете использовать цикл for...each, как показано ниже.

dim sh as worksheet, r as row
for each sh in thisworkbook.worksheets
    if sh.name = sh.name = "sheet2" or sh.name = "sheet3" then
        for each r in sh.cells.usedrange.rows
            fileout.write r.value
        next r
    end if
next sh
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...