Как использовать Visual Basic для приложений для подсчета вхождений символа в выделенной области в Excel

Аннотация

В Microsoft Excel можно использовать макрос для подсчета вхождений определенного символа в ячейке или диапазоне ячеек. В этой статье содержится пример макроса для подсчета вхождений определенного символа в ячейке или диапазоне ячеек.

Для выполнения задачи можно также использовать формулу. Если вы предпочитаете не использовать макрос, щелкните следующие номера статей, чтобы просмотреть статьи в базе знаний Майкрософт:

187667 формулы для подсчета вхождений текста, символов или слов в Excel для Mac

Дополнительная информация

Корпорация Майкрософт предоставляет примеры программирования только в целях демонстрации без явной или подразумеваемой гарантии. Данное положение включает, но не ограничивается этим, подразумеваемые гарантии товарной пригодности или соответствия отдельной задаче. Эта статья предполагает, что пользователь знаком с представленным языком программирования и средствами, используемыми для создания и отладки процедур. Специалисты технической поддержки Майкрософт могут пояснить работу той или иной процедуры, но модификация примеров и их адаптация к задачам разработчика не предусмотрена.

Пример процедуры Visual Basic

В следующей процедуре Visual Basic предлагается ввести символ (или символы), а затем выполнить поиск по выбранной ячейке или диапазону ячеек и отобразить окно сообщения, в котором отображается общее количество вхождений этого символа или строки символа. Это работает для всех буквенно-цифровых символов.

Dim Count As Integer
Dim Target As String
Dim Cell As Object
Dim N As Integer

Sub Target_Count()
   Count = 0
   Target = InputBox("character(s) to find?")
   If Target = "" Then GoTo Done
      For Each Cell In Selection
         N = InStr(1, cell.Value, target)
         While N <> 0
            Count = count + 1
            N = InStr(n + 1, cell.Value, target)
         Wend
      Next Cell
   MsgBox count & " Occurrences of " & target
Done:
End Sub