Использование VBA для поиска конкретного слова и копирование значений рядом с ним в другой лист - PullRequest
0 голосов
/ 08 июля 2019

Я новичок в VBA и пытаюсь создать макрос.Я хочу найти слово «Денежные средства и их эквиваленты» в столбце B книги EVE_Workbook (источник), а затем скопировать 7 значений (ячеек) справа от него в столбец D объекта Macro_Results (пункт назначения).Причина, по которой мне нужен макрос, заключается в том, что мне придется повторить это для нескольких переменных в нескольких электронных таблицах, и ячейки не все совпадают.Я искал по всему онлайн, но пока не нашел ничего существенного.Я на правильном пути?Range.Offset также сбивает меня с толку, так что любой совет о том, что я делаю неправильно, будет потрясающим.Заранее спасибо, любая помощь будет принята с благодарностью.Это то, что я до сих пор:

Dim LastRow As Long
With Sheets("EVE_Workbook")
    LastRow = .UsedRange.Rows.Count

With .Range("B:B")
    Criteria1 = "Cash and Cash Equivalents"
Range.Offset(0, 1).Offset(0, 7).Copy
Sheets("Macro_Results").Cell("B2").PasteSpecial Paste:=xlPasteValues, Transpose:=True

End With
.AutoFilterMode = False
End With

End Sub

1 Ответ

0 голосов
/ 08 июля 2019

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

Sub tryHarder()

    Dim aCell As Range, WS As Worksheet

    Set WS = ActiveSheet '

    With WS

    For Each aCell In Intersect(.Range("B:B"), .UsedRange).Cells
        'this creates a loop of used cells in column b to check.

        If InStr(1, aCell.Value, "Cash and Cash Equivalants", vbTextCompare) > 0 Then
            'this inserts a value of boom 2 columns to the right of the found cell
            aCell.Offset(, 2).Value = "Boom"

        End If

    Next aCell

End With
End Sub

Если вы хотите использовать FIND Method , он также работает, но становится немного сложнее, когда вы снова находите. Вы можете посмотреть это самостоятельно. Вышеуказанный подход медленнее и неэффективен в том смысле, что он пишет в шаблон слишком часто, но, надеюсь, вы поймете идею.

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