Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.08.2016, 15:13   #11
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от Сергей005 Посмотреть сообщение
Я не умею писать коды и скрипты.
Файла с данными в формате "так есть - так хочу получить" можешь выложить(да все 50 записей)?


в А2 напиши "10:00 01.08.2016 «Солнышко» Въехал СИДОРОВ СИДОР Витальевич, 25.05.1990 РФ 0000 000000 ВОЖАТЫЙ ПУПКИН «А» 55555 ОТ 10.10.2015 ТУРПУТЕВКА МОСКВА 10.30 ОПОВЕЩЕНЫ РОДИТЕЛИ"
и запусти макрос

Код:
Sub someShit()
    Dim s As String, sNew As String
    Dim i, p
    Dim s1 As String, s2 As String, s3 As String, s4 As String
    Dim s5 As String, s6 As String, s7 As String
    s = Trim([a2])
    i = 1
    sNew = ""
    p = 0
    Do While p < 2
        If Mid(s, i, 1) = " " Then
            sNew = sNew + "*"
            p = p + 1
        End If
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    Do While Mid(s, i, 1) <> "»"
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + Mid(s, i, 1) + "*"
    i = i + 2
    Do While Mid(s, i, 1) <> " "
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + "*"
    Do While Mid(s, i, 1) <> ","
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + "*"
    i = i + 2
    Do While Mid(s, i, 1) <> " "
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + "*"
    i = i + 1
    Do While Mid(s, i, 1) <> " "
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + "*"
    i = i + 1
    Do While Not (Mid(s, i, 1) Like "[А-ЯА-я]")
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + "*"

    Do While Mid(s, i + 1, 1) <> "«"
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + "*"
    Do While Mid(s, i, 1) <> "»"
        sNew = sNew + Mid(s, i, 1)
        i = i + 1
    Loop
    sNew = sNew + Mid(s, i, 1) + "*"
    i = i + 2
    p = 0
    Do While p = 0
        s1 = Mid(s, i, 1)    ' " "
        s2 = Mid(s, i + 1, 1)    ' D
        s3 = Mid(s, i + 2, 1)    ' D
        s4 = Mid(s, i + 3, 1)    ' .
        s5 = Mid(s, i + 4, 1)    ' D
        s6 = Mid(s, i + 5, 1)    ' D
        s7 = Mid(s, i + 6, 1)    ' " "
        If (s1 = " ") And (s7 = " ") And (s4 = ".") And _
           (s2 Like "[0-9]") And (s3 Like "[0-9]") And _
           (s5 Like "[0-9]") And (s6 Like "[0-9]") Then
            p = 1
            i = i + 5
        Else
            sNew = sNew + s1
            i = i + 1
        End If

    Loop
    sNew = sNew + "*" + s2 + s3 + s4 + s5 + s6 + "*" + Mid(s, i + 2)
    i = i + 1
    [a4] = sNew
End Sub
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь в создании программы Екатерина57 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 25.12.2015 16:33
Нужна помощь в создании программы... Gangster Общие вопросы Delphi 16 24.05.2008 14:42