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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2015, 14:59   #1
5mrs
Пользователь
 
Регистрация: 25.01.2015
Сообщений: 36
По умолчанию Как одной функцией функция извлечь число из текста

Как одной функцией извлечь число из текста?

Последний раз редактировалось 5mrs; 26.01.2015 в 15:08.
5mrs вне форума Ответить с цитированием
Старый 26.01.2015, 15:25   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

надо написать функцию ИзвечьЧислоИзТекста
RegExp - наиболее подходящий для этого инструмент
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 26.01.2015, 15:26   #3
riniks17
Форумчанин
 
Регистрация: 15.12.2011
Сообщений: 355
По умолчанию

код
=ПРОСМОТР(2^64;--ЛЕВСИМВ(ПСТР(A1&"_0";МИН(НАЙТИ({0;1 ;2;3;4;5;6;7;8;9};A1&"_0123456789") );15);{1;2;3;4;5;6;7;8;9;10;11;12;1 3;14;15}))

Взял здесь.http://www.planetaexcel.ru/forum/ind...ID=8&TID=15606 Работает
riniks17 вне форума Ответить с цитированием
Старый 26.01.2015, 15:49   #4
5mrs
Пользователь
 
Регистрация: 25.01.2015
Сообщений: 36
По умолчанию

Спасибо нашел:
Вот не самый универсальный, но вариант. В ячейку пишем =ТОЛЬКОЦИФРЫ(А1)
Function ТОЛЬКОЦИФРЫ(ячейка As Range) As Long
Dim i As Integer, Результат As String
Dim Символ As String
For i = 1 To Len(ячейка)
Символ = Mid(ячейка, i, 1)
If IsNumeric(Символ) Then
Результат = Результат & Символ
End If
Next i
ТОЛЬКОЦИФРЫ = Val(Результат)
End Function
5mrs вне форума Ответить с цитированием
Старый 26.01.2015, 16:22   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

тоже не самый универсальный:
Код:
Function ИзвлечьЧислоИзТекста(v As String) As String
 Dim RE
 Set RE = CreateObject("vbscript.regexp"): RE.Pattern = "\d+"
 If RE.test(v) Then ИзвлечьЧислоИзТекста = RE.Execute(v)(0)
End Function
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как из ячейки содержащей текст и число извлечь только число? АННА-ЕАО Microsoft Office Excel 35 02.12.2016 23:16
Написать схематично программу с функцией, возвращающей целое число и число с десятичной точкой(Экзам. вопрос). datileo Visual C++ 1 22.06.2011 09:49
Как извлечь дескриптор значка функцией SHExtractIconsW assch Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 10.04.2011 22:20
Как извлечь число выраженное в стандартном виде b2soft Помощь студентам 1 14.02.2011 00:56