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

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

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2022, 16:49   #1
DMITRIY_78
Форумчанин
 
Регистрация: 11.12.2018
Сообщений: 202
По умолчанию чтение и разделение строки из ячейки

Ребята Здравствуйте! у меня такой вопрос, отмечу сразу, понимаю что задача возможно не разрешима, НО вдруг найдется пытливый ум, что то предложить. А вопрос такой в примере во вложении, вызывая из столбца "адрес" в ячейку из формы заносятся адресные данные, Но хотелось бы , при активации ячейки с записью занести обратно в текстовые поля для редактирования и дальнейшей перезаписи.
Заранее спасибо всем!
Вложения
Тип файла: rar пример.rar (30.2 Кб, 5 просмотров)
Что нас не убивает, то делает нас сильными!
Всё гениальное просто, всё простое гениально!
DMITRIY_78 вне форума Ответить с цитированием
Старый 22.01.2022, 23:46   #2
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от DMITRIY_78 Посмотреть сообщение
понимаю что задача возможно не разрешима
видел как-то подобную "магию"
https://youtu.be/Wis4U7Zcf4o
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 22.01.2022, 23:52   #3
Igor1961
Пользователь
 
Регистрация: 05.10.2015
Сообщений: 39
По умолчанию

Для начала сделайте отдельные столбцы для области, города, района, дома, улицы и всего остального, после этого определитесь с видом конечного результата (город, обл. дом или в каком порядке еще захотите), а потом уже можно будет без проблем вытягивать данные в итоговый столбец, в форму и куда угодно. То, что у Вас сейчас - лишняя головная боль за свой счет. Можно исправить, но придется много условий прописывать, и не факт что все будет предусмотрено. Например, в файле у Вас: "Тамбвоский р-н" это точно "Тамбовский"?

Последний раз редактировалось Igor1961; 22.01.2022 в 23:55.
Igor1961 вне форума Ответить с цитированием
Старый 23.01.2022, 08:46   #4
DMITRIY_78
Форумчанин
 
Регистрация: 11.12.2018
Сообщений: 202
По умолчанию

Igor1961, я вас понял, но с отдельными столбцами у меня есть такой макрос, но мне бы не хотелось бы "плодить" столбцы видимость документа и так мала, спасибо, обратите внимание на пост Aleksandr H. заинтриговал "сорванец",
Что нас не убивает, то делает нас сильными!
Всё гениальное просто, всё простое гениально!
DMITRIY_78 вне форума Ответить с цитированием
Старый 23.01.2022, 11:37   #5
DMITRIY_78
Форумчанин
 
Регистрация: 11.12.2018
Сообщений: 202
По умолчанию

Aleksandr H., поделитесь макросом?
Что нас не убивает, то делает нас сильными!
Всё гениальное просто, всё простое гениально!
DMITRIY_78 вне форума Ответить с цитированием
Старый 23.01.2022, 13:45   #6
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
Private Sub PrepareData(sInput As String)
'    Dim sInput As String
    Dim oblast As String
    Dim rajon As String
    Dim gorod As String
    Dim selo As String
    Dim ulica As String
    Dim dom As String
    Dim korpus As String
    Dim kvartyra As String
    Dim kod_padika As String
    Dim etag As String
    Dim stroenie As String
    Dim padik As String
    Dim ar() As String
    Dim txt As Variant
    Dim flag As Boolean
    sInput = " " & Trim(sInput)
    If Right(sInput, 1) = "," Then sInput = Left(sInput, Len(sInput) - 1)
    If sInput = "" Then Exit Sub
    ar = Split(sInput, ","): flag = True
    For Each txt In ar
       
        If InStr(txt, " Обл.") > 0 Then
            oblast = Trim(txt)
            ElseIf InStr(txt, " p-н.") > 0 Then
            rajon = Trim(txt)
            ElseIf InStr(txt, " г. ") > 0 Then
            gorod = Trim(txt)
            ElseIf InStr(txt, " с. ") > 0 Then
            selo = Trim(txt)
            ElseIf InStr(txt, " Ул. ") > 0 Then
            ulica = Trim(txt)
            ElseIf InStr(txt, " д. ") > 0 Then
            dom = Trim(txt)
            ElseIf InStr(txt, " Кор. ") > 0 Then
            korpus = Trim(txt)
            ElseIf InStr(txt, " Кв. ") > 0 Then
            kvartyra = Trim(txt)
            ElseIf InStr(txt, " Код_домоф. ") > 0 Then
            kod_padika = Trim(txt)
            ElseIf InStr(txt, " эт. ") > 0 Then
            etag = Trim(txt)
            ElseIf InStr(txt, " Стр. ") > 0 Then
            stroenie = Trim(txt)
            ElseIf InStr(txt, " под., ") > 0 Then
            padik = Trim(txt)
        Else
            flag = False
        End If
    Next txt
    If flag Then
        UserForm1.TextBox12 = Replace(oblast, " Обл.", "")
        UserForm1.TextBox1 = Replace(rajon, " p-н.", "")
        UserForm1.TextBox2 = Replace(gorod, "г. ", "")
        UserForm1.TextBox3 = Replace(selo, "с. ", "")
        UserForm1.TextBox4 = Replace(ulica, "Ул. ", "")
        UserForm1.TextBox5 = Replace(dom, "д. ", "")
        UserForm1.TextBox6 = Replace(korpus, "Кор. ", "")
        UserForm1.TextBox7 = Replace(kvartyra, "Кв. ", "")
        UserForm1.TextBox8 = Replace(kod_padika, "Код_домоф. ", "")
        UserForm1.TextBox9 = Replace(etag, "эт. ", "")
        UserForm1.TextBox11 = Replace(stroenie, "Стр. ", "")
        UserForm1.TextBox10 = Replace(padik, "под. ", "")
    Else
        MsgBox "Фигня на входе"
    End If
End Sub

Private Sub UserForm_Initialize()
    Debug.Print ActiveCell
    PrepareData ActiveCell
End Sub
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 23.01.2022, 14:36   #7
DMITRIY_78
Форумчанин
 
Регистрация: 11.12.2018
Сообщений: 202
По умолчанию

Aleksandr H., СУПЕР, РЕСПЕКТ
Что нас не убивает, то делает нас сильными!
Всё гениальное просто, всё простое гениально!
DMITRIY_78 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
разделение числа ячейки по столбцам Анатоли4 Помощь студентам 0 03.03.2020 08:58
Разделение значения внутри ячейки 27obesthand Microsoft Office Excel 3 17.10.2011 16:20
Разделение данных одной ячейки jestya Microsoft Office Excel 4 29.09.2010 14:54
Разделение строки QuestionMark Microsoft Office Excel 2 22.06.2010 15:00
Разделение строки xTANATOSx Общие вопросы Delphi 3 31.10.2007 21:27