Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Файл вытягивает числа с запятой из текста - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Файл вытягивает числа с запятой из текста (и разносит по ячейках. Может кому пригодится)
Файл вытягивает числа с запятой из текста
Геннадий22 Дата: Вторник, 26.03.2013, 14:51 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Из названия темы ясно что делает файл
Можна усовершенствовать, типа
For Each c In Selection.Cells
......
Я покопался б, но через недельку
К сообщению приложен файл: ______.xls (34.0 Kb)


Сообщение отредактировал Геннадий22 - Вторник, 26.03.2013, 17:33
 
Ответить
СообщениеИз названия темы ясно что делает файл
Можна усовершенствовать, типа
For Each c In Selection.Cells
......
Я покопался б, но через недельку

Автор - Геннадий22
Дата добавления - 26.03.2013 в 14:51
Геннадий22 Дата: Вторник, 26.03.2013, 16:32 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Ребята, есть код лучше моего, работает в выделенном диапазоне
[vba]
Код
Dim m, arr, i&, c As Range
With CreateObject("VBScript.RegExp")
.Global = True: .MultiLine = True
.Pattern = "\D*([\d,]+)(?=\D)"
For Each c In Selection.Cells
ReDim arr(0 To .Execute(c).Count)
For Each m In .Execute(c)
arr(i) = m.submatches(0)
i = i + 1
Next: i = 0
c(1, 2).Resize(, UBound(arr) + 1) = arr
Next
End With
[/vba]
Пользуйтесь на здоровье

[admin]Оформляйте коды соответствующими тегами![/admin]


Сообщение отредактировал Геннадий22 - Вторник, 26.03.2013, 17:34
 
Ответить
СообщениеРебята, есть код лучше моего, работает в выделенном диапазоне
[vba]
Код
Dim m, arr, i&, c As Range
With CreateObject("VBScript.RegExp")
.Global = True: .MultiLine = True
.Pattern = "\D*([\d,]+)(?=\D)"
For Each c In Selection.Cells
ReDim arr(0 To .Execute(c).Count)
For Each m In .Execute(c)
arr(i) = m.submatches(0)
i = i + 1
Next: i = 0
c(1, 2).Resize(, UBound(arr) + 1) = arr
Next
End With
[/vba]
Пользуйтесь на здоровье

[admin]Оформляйте коды соответствующими тегами![/admin]

Автор - Геннадий22
Дата добавления - 26.03.2013 в 16:32
KuklP Дата: Вторник, 26.03.2013, 16:46 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Геннадий22, да Вы прям меценат! Не стыдно?
http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=1&TID=46989


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеГеннадий22, да Вы прям меценат! Не стыдно?
http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=1&TID=46989

Автор - KuklP
Дата добавления - 26.03.2013 в 16:46
Геннадий22 Дата: Вторник, 26.03.2013, 17:29 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Я же написал: "код лучше моего"
Можно на другой форум ссылаться?
 
Ответить
СообщениеЯ же написал: "код лучше моего"
Можно на другой форум ссылаться?

Автор - Геннадий22
Дата добавления - 26.03.2013 в 17:29
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Файл вытягивает числа с запятой из текста (и разносит по ячейках. Может кому пригодится)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!