Показать сообщение отдельно
Старый 22.02.2009, 12:10     # 579
Alex Dark
КОТовский
 
Аватар для Alex Dark
 
Регистрация: 12.03.2003
Адрес: ОренБюргер
Пол: Male
Сообщения: 1 569

Alex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех ГуруAlex Dark Отец (мать) всех Гуру
1. определяем количество @. Ячейка в колонке H=ЧислоВхождений(A3;"@";"true")
Код:
Function ЧислоВхождений(СтрокаГдеИщем As String, СтрокаЧтоИщем As String, ТочноеСравнение As Boolean) As Integer
    Dim S1, S2, S3
    S1 = IIf(ТочноеСравнение, СтрокаГдеИщем, UCase(СтрокаГдеИщем))
    S2 = IIf(ТочноеСравнение, СтрокаЧтоИщем, UCase(СтрокаЧтоИщем))
    L = Len(S2)
    ЧислоВхождений = 0
    For i = 1 To Len(S1)
        S3 = Left(S1, L)
        If S3 = S2 Then
            ЧислоВхождений = ЧислоВхождений + 1
        End If
        S1 = Mid(S1, 2)    Next
End Function
2. определяем позицию первой @ или 0: I=ЕСЛИ(H3>0;НАЙТИ("@";A3;1);0)
3. определяем позицию второй @ или 0: j=ЕСЛИ(H3>1;НАЙТИ("@";ПСТР(A3;I3+1;100);1)+I3;0)
4. определяем содержимое до первой @: k=ПСТР(A3;1;I3)
5. определяем содержимое до второй @: L=ПСТР(A3;I3+1;I3)
6. Сравниваем: M=(K3=L3)
7. Результат: N=ЕСЛИ(M3;ПСТР(A3;I3+1;100);A3)

А чтобы скопировать колонку М на другой лист цепляй на кнопку макрос
Код:
Sub MyCopy()
    Dim Cтрока1, Колонка, Строка2, A
    Строка1 = 3
    Колонка1 = 14
    Sheets("Лист2").Select
    While Not IsEmpty(Cells(Строка1, Колонка1).Value)
        A = Cells(Строка1, Колонка1).Value
        Sheets("Лист3").Cells(Строка1, 1).Value = A
        Строка1 = Строка1 + 1
    Wend
End Sub
__________________
Все мы финансовые гении и эффективные менеджеры,
только не у всех одногруппник или сосед по даче - президент.
Alex Dark вне форума