Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как разделить один столбец на 3 столбца ? / 7 сообщений из 7, страница 1 из 1
04.10.2005, 14:36:29
    #33303881
dartvaider
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разделить один столбец на 3 столбца ?
можно ли написать макрос или функцию для разделения одного столбца на 3 по такому принцепу:
Существует один столбец в которм написана фамилия , Имя ,отчество через пробел!
Иванов Иван Иванович!
Можно ли отсортировать как нибуть разделить по фамилии имени и отчеству этот столбец и перенести фамилию , имя и отчетсво по своим столбцам?


:::Фамилия:::Имя:::Отчество:::
Иванов Иван Иванович

Вот макрос , который разделят одну строчку ,

Columns("A:A").EntireColumn.AutoFit
Range("A1").Select
ActiveCell.FormulaR1C1 = "Иванов Иван Иванович"
Range("B1").Select
ActiveSheet.Paste
Range("A1").Select
ActiveCell.FormulaR1C1 = "Иванов Иван Иванович"
Range("C1").Select
ActiveSheet.Paste
Range("A1").Select
ActiveCell.FormulaR1C1 = "Иванов Иван Иванович"
Range("D1").Select
ActiveSheet.Paste
Range("D2").Select


но у меня в БД таких строчек 40 00 :( не писать же на каждую такой макрос?
может можно как либо упростить, или поставить промежуток от A1 до A40000?
Заранее благодарен!
Обсуждение идет тут:

http://]www.sql.ru/forum/actualthread.aspx?tid=222198
...
Рейтинг: 0 / 0
04.10.2005, 14:46:35
    #33303918
dimka@ultra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разделить один столбец на 3 столбца ?
Может моя чего не понимать, но проблем простой - удаляем сначала все парные (и тройные) пробелы (нахрена нам/Вам лишние разделители) .
Работаем с первой строкой:
из результата удаления выбираем то, что лежит до первого пробела (в Excel-е функция instr имеет первым параметром номер встречания подстроки (в нашем случае - пробел) - кидаем в фамилию
дальше выбираем значение между первым и вторым пробелами - это имя
В третьих, если есть, вырезаем остаток - между вторым и третьим - отчество (если его на забыли всандалить).

Тоже в цикле - для всех строк.

Можно поизголяться в всё запендюрить в три формулы (для экселя) или в одну (для mssql).

Удачи!
...
Рейтинг: 0 / 0
04.10.2005, 15:50:39
    #33304122
Sinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разделить один столбец на 3 столбца ?
сохранить в текстовый файл, потом его опять же открыть ёкселем,
как текстовый только с разделителями - пробелами...
...
Рейтинг: 0 / 0
04.10.2005, 16:12:15
    #33304193
5631
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разделить один столбец на 3 столбца ?
Данные-Текст по столбцам...
...
Рейтинг: 0 / 0
04.10.2005, 16:12:51
    #33304195
Как разделить один столбец на 3 столбца ?
1. Написать пользовательскую функцию.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Public Function fctSplit( _
  rng As Range, _
  intI As Integer)
    Dim varItems As Variant
    
    varItems = Split(rng.Value, " ")
    
    If intI > UBound(varItems) +  1  Then
        fctSplit = ""
    Else
        fctSplit = varItems(intI -  1 )
    End If
End Function

Код: plaintext
=fctSplit(A1; 1 )

2. Использовать формулы.
...
Рейтинг: 0 / 0
04.10.2005, 16:32:10
    #33304248
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разделить один столбец на 3 столбца ?
5631Данные-Текст по столбцам...
Клас
Код: plaintext
1.
2.
3.
4.
5.
Sub proba() 
Columns("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1))
End Sub
...
Рейтинг: 0 / 0
04.10.2005, 17:03:19
    #33304365
Sinner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как разделить один столбец на 3 столбца ?
сохранить в текстовый файл, потом его опять же открыть ёкселем,
как текстовый только с разделителями - пробелами...
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Как разделить один столбец на 3 столбца ? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]