Страницы: 1
RSS
Извлечь текст не содержащий цифр. Текст содержится в одной из трех ячеек
 
Доброго времени суток уважаемые знатоки!

Буду признателен вам если поможете мне в от с таким вопросом: В ячейках А1, B1, C1 есть различные значения. В ячейке А1 имеется значение 12345, в ячейке B1 имеется Иван Иванов, а в ячейке C1 имеется Иван123Иванов. Я хочу чтобы в ячейке D1 была бы функция которая бы выбирала из трех ячеек именно ту которая отображает значение состоящее из букв. Или скажем по другому значение которое не содержит цифр. В данном случае это будет ячейка B1 Иван Иванов. Можно формулами, можно пользовательской функцией или макросом мне все равно лишь бы было решение.

Заранее благодарю!!
 
Цитата
Я знаю что ничего не знаю
и знать ничего не хочу...  ;)
ps В поиск "Извлечь текст". Читаем "Правила", посещаем "Приемы." Прилагаем свои - реальные в форматах и структуре - примеры.
Изменено: Z - 13.12.2013 15:35:38
"Ctrl+S" - достойное завершение ваших гениальных мыслей!.. ;)
 
Уважаемый Z ! Я нашел конечно кое-что, но это не соответствовало моим требованиям. В найденных мною примерах фнкция  находила только из одной ячейки, а тут сразу три ячейки. Поэтому я честно пытался сначала сделать сам, знал что меня тут ругать будут   :oops:    но не смог подогнать под свою задачку.
Изменено: Самир Мамедов - 13.12.2013 15:40:47
 
:D
Код
=етекст
 
kalbasiatka ЕТЕКСТ не пойдет. "Патров123" это текст но внутри его есть цифры.
 
Код
Function text$(rCells As Range)
Application.Volatile
Dim rCell As Range
For Each rCell In rCells
    If rCell.Value Like "*" & "[0-9]" & "*" Then
        text = ""
    Else
        text = rCell.Value
        Exit Function
    End If
Next
End Function

В аргументах ваши три ячейки.
 
Потестируйте эту формулу массива:
=ИНДЕКС(A1:C1;МОДА(ЕСЛИ(ЕТЕКСТ(A1:C1);ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(A1:C1;СТРОКА(1:20);1))>58;СТОЛБЕЦ(A1:C1));ЛОЖЬ))))
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
SKY PRO!!
Огромное спасибо!! То что нужно! Работает!
Владимир: К сожалению формула массива не сработала, но в любом случае и Вам спасибо за ответ!
Тему можно считать закрытой!
 
Простите, не соглашусь...
Изменено: Владимир - 05.10.2014 11:01:23
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
обычная формула на примере Владимира:
Код
=ИНДЕКС(A2:C2;ПОИСКПОЗ(;МУМНОЖ({1;1;1;1;1;1;1;1;1;1};1-ЕОШ(ПОИСК({0:1:2:3:4:5:6:7:8:9};A2:C2)));))
 
Уважамый Владимир и МСН !

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

Заранее спасибо
 
вложенные =подставить(подставить(подставить(подставить(подставить(ячейка;цифры;""), или пользовательская функция (в #6 сообщении вполне себе справляется) или макрос
Лень двигатель прогресса, доказано!!!
 
Сергей, спасибо за ответ, я вот попробовал из 6-го поста функцию, просто я в VBA не силен, и получается так что если в тексте нет цифр он просто копирует ячейку, а если есть цифры то ячейка становится пустой (я пробовал выделять и одну и по три ячейки....). Плиз подскажите может надо в коде подправить че-нить чтоб оно на моем примере заработало? Понимаю в каком то моменте туплю просто не могу понять где)))
 
попробуйте такой вариант
Код
Function ikki$(s$)
    Static r As Object: If r Is Nothing Then Set r = CreateObject("vbscript.regexp"):
    r.Global = 1:
    r.Pattern = "[a-zA-z0-9/]+"
    ikki = r.Replace(s, "")
End Function
Лень двигатель прогресса, доказано!!!
 
Сергей, все мега супер!!! аж жить хочется ))))) спасибо огромное
Страницы: 1
Читают тему
Наверх