В списке Excel, содержащем имена, отчества и фамилии, отсортировать мужчин от женщин можно довольно просто. Достаточно определить последнюю букву в отчестве человека, чтобы узнать его пол.

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

Определить пол по отчеству

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

'Определение пола по отчеству
Function ПолПоОтчеству(Отчество As String) As String
    If Len(Отчество) > 0 Then
        Select Case Right(Отчество, 1)
            Case "ч", "ы"
                ПолПоОтчеству = "М"
            Case Else
                ПолПоОтчеству = "Ж"
        End Select
    End If
End Function

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

Представленные функции возвращают "М" либо "Ж" в зависимости от последней буквы в отчестве.

Определить пол по ФИО

Если исходным значением для определения пола является полное ФИО, то предварительно ФИО нужно разделить на части, вычленить из него отчество и далее действовать по аналогии с уже рассмотренным выше примером.

'Определение пола по ФИО
Function ПолПоФИО(ФИО As String) As String
    Dim Фамилия As String
    Dim Имя As String
    Dim Отчество As String
    Dim Temp As String
 'ФИО делится на части
    Фамилия = Trim(Left(ФИО, InStr(ФИО, " ")))
    Temp = Right(ФИО, Len(ФИО) - InStr(ФИО, " "))
    Имя = Trim(Left(Temp, InStr(Temp, " ")))
    Отчество = Right(Temp, Len(Temp) - InStr(Temp, " "))
        If Len(Отчество) > 0 Then
            Select Case Right(Отчество, 1)
                Case "ч", "ы"
                    ПолПоФИО = "М"
                Case Else
                    ПолПоФИО = "Ж"
            End Select
        End If
End Function

Когда во всем списке Excel пол определен, отсортировать мужчин от женщин при помощи стандартной сортировки Excel не составит никакого труда. Надстройку, которая добавляет рассмотренные функции в категорию "Определенные пользователем" можно скачать бесплатно.