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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2012, 20:10   #1
k2a7
Новичок
Джуниор
 
Регистрация: 09.11.2012
Сообщений: 2
По умолчанию разделить ячейку с адресом на индекс, улицу, город

как разделить ячейку с адресом на индекс, улицу, город
вот пример как есть все в одной ячейке
Код:
Oru 2 75501 Saku
Osmussaare 8 13811 Tallinn
78203 Varbola
Tamme pst 107 50416 Tartu
возможно ли разделить на три ячейки, улица, индекс, город
проблема в том что некоторые адреса имеют только индекс и город
я новичек в Microsoft Office Excel
k2a7 вне форума Ответить с цитированием
Старый 09.11.2012, 20:56   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

у Вас разнобой в техзадании:
Цитата:
как разделить ячейку с адресом на индекс, улицу, город
Цитата:
возможно ли разделить на три ячейки, улица, индекс, город
поэтому во вложении разбито на:
город, индекс, улица
Вложения
Тип файла: rar Tallinn.rar (5.9 Кб, 32 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 09.11.2012 в 20:59.
IgorGO вне форума Ответить с цитированием
Старый 10.11.2012, 00:21   #3
k2a7
Новичок
Джуниор
 
Регистрация: 09.11.2012
Сообщений: 2
По умолчанию

Спасибо !
было бы отлично если б вы еще подсказали как это сделать самому да, я наверное не точно выразился, мне нужно автоматизировать как-то этот процесс, документ нужно отредактировать на 32000 записей.
k2a7 вне форума Ответить с цитированием
Старый 10.11.2012, 00:41   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

полдесятка нажатий кнопок и готово.
такая степень автоматизации Вас устроит?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.11.2012, 00:54   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Вариант на 3-х UDF.
В файле тёзки - его функции не трогал.
Вложения
Тип файла: rar Tallinn.rar (8.8 Кб, 19 просмотров)
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 10.11.2012, 11:30   #6
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Игорь, если бы еще
Код:
Function ulica(s)
  ulica = Trim(Left(s, Len(s) - Len(gorod(s)) - 6))
End Function
вот так определил - то и алгоритм бы оказался не задетым)))
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.11.2012, 13:46   #7
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Ну хотелось каждую функцию оставить самостоятельной.
А так конечно выглядело бы проще на каждую улицу вызывать по разу ещё город и индекс
Можно для улицы вообще не писать ничего нового - просто стандартными формулами использовать уже полученное:
Код:
=СЖПРОБЕЛЫ(ЛЕВСИМВ(A2;ДЛСТР(A2)-(ДЛСТР(D2)+ДЛСТР(E2)+1)))
А вообще на 32000 (да если это ещё нужно делать часто) я бы написал один макрос, который за секунду обрабатывает например всё выделенное.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 10.11.2012, 13:51   #8
ikki_pf
Форумчанин
 
Регистрация: 25.02.2012
Сообщений: 166
По умолчанию

вариант (что-то напрягает меня двукратный вызов StrReverse )
Код:
Function ulica(s)
    Dim arr
    ulica = ""
    arr = Split(s)
    If UBound(arr) > 2 Then
      ReDim Preserve arr(0 To UBound(arr) - 2)
      ulica = Join(arr)
    End If
End Function
ikki_pf вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Открыть файл, разделить ячейку на 1000, сохранить файл, закрыть файл. Как? Ник Харди Microsoft Office Excel 7 30.01.2012 18:47
Как разделить ячейку с доп.форматом? maligyn Помощь студентам 0 11.02.2011 09:43
разделить ячейку по столбцам evdss Microsoft Office Excel 2 15.12.2010 17:53
Сколько в день вы выходите на улицу? Crivel Свободное общение 53 22.04.2009 00:32