Excel 2007 макрос выбора записей - PullRequest
1 голос
/ 02 сентября 2010

Я хотел бы написать макрос в vb, чтобы выбрать все строки, где значения в столбце B содержат символы 'via'Это моя первая попытка макросов, и я не совсем уверен, с чего начать.

1 Ответ

1 голос
/ 02 сентября 2010

Этот должен сделать это для вас (он работал для меня) - код, адаптированный с здесь .

Option Explicit

Sub SelectByValue(Rng1 As Range, Value As String)

    Dim MyRange As Range
    Dim Cell As Object

     'Check every cell in the range for matching criteria.
    For Each Cell In Rng1
        If InStr(1, Cell.Text, "via") Then
            If MyRange Is Nothing Then
                Set MyRange = Range(Cell.Address)
            Else
                Set MyRange = Union(MyRange, Range(Cell.Address))
            End If
        End If
    Next
     'Select the new range of only matching criteria
    MyRange.Select

End Sub

Sub CallSelectByValue()

     'Call the macro and pass all the required variables to it.
     'In the line below, change the Range and the Value as needed
    Call SelectByValue(Range("B1:B10"), "via")

End Sub

Как его использовать?

  1. Скопируйте приведенный выше код.
  2. Откройте книгу, в которой вы хотите запустить этот код.
  3. Нажмите Alt + F11, чтобы открыть редактор Visual Basic (или VBE).
  4. В меню выберите «Вставить модуль».
  5. Вставьте код в окно кода справа.
  6. Измените Call SelectByValue (Range («B1: B10»).Строка ")," via ") в коде, соответствующая вашим потребностям.
  7. Закройте VBE.

Как проверить код?

  1. Нажмите Tools-Macro-Macros и дважды щелкните CallSelectByValue.

Перед запуском макроса:

alt text

После запуска макроса:

alt text

...