Преобразование текстового значения в числовое
ArkaIIIa
Дата: Вторник, 04.03.2014, 10:43 |
Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 894
Репутация:
115
±
Замечаний:
0% ±
2010
Добрый день! Необходимо преобразовать текстовое значение формата: "1 469.73 RUR" в числовое, с учетом копеек. Т.е. на выходе должно быть 1469,73 Первый вопрос - в приложенном примере два одинаковых текстовых значения. Почему для "левого" случая формула ПРАВСИМВ применяется без каких-либо дополнений, а для "правого" нужно добавить "-1", чтобы избавиться от точки? Ведь значения одинаковые по сути! Второй вопрос - может быть можно произвести это преобразование (текста в число) как-то проще? Подскажите, пожаулйста.
Добрый день! Необходимо преобразовать текстовое значение формата: "1 469.73 RUR" в числовое, с учетом копеек. Т.е. на выходе должно быть 1469,73 Первый вопрос - в приложенном примере два одинаковых текстовых значения. Почему для "левого" случая формула ПРАВСИМВ применяется без каких-либо дополнений, а для "правого" нужно добавить "-1", чтобы избавиться от точки? Ведь значения одинаковые по сути! Второй вопрос - может быть можно произвести это преобразование (текста в число) как-то проще? Подскажите, пожаулйста. ArkaIIIa
Сообщение отредактировал ArkaIIIa - Вторник, 04.03.2014, 10:47
Ответить
Сообщение Добрый день! Необходимо преобразовать текстовое значение формата: "1 469.73 RUR" в числовое, с учетом копеек. Т.е. на выходе должно быть 1469,73 Первый вопрос - в приложенном примере два одинаковых текстовых значения. Почему для "левого" случая формула ПРАВСИМВ применяется без каких-либо дополнений, а для "правого" нужно добавить "-1", чтобы избавиться от точки? Ведь значения одинаковые по сути! Второй вопрос - может быть можно произвести это преобразование (текста в число) как-то проще? Подскажите, пожаулйста. Автор - ArkaIIIa Дата добавления - 04.03.2014 в 10:43
Hugo
Дата: Вторник, 04.03.2014, 10:48 |
Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3858
Репутация:
815
±
Замечаний:
0% ±
365
Гдеж они одинаковые? 1 тысяча и 25 тысяч! Что-то простых формул я не нашёл... А простая UDF вот: [vba]Код
Function cislo(s) cislo = Val(s) End Function
[/vba]
Гдеж они одинаковые? 1 тысяча и 25 тысяч! Что-то простых формул я не нашёл... А простая UDF вот: [vba]Код
Function cislo(s) cislo = Val(s) End Function
[/vba] Hugo
webmoney: E265281470651 Z422237915069 USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
Ответить
Сообщение Гдеж они одинаковые? 1 тысяча и 25 тысяч! Что-то простых формул я не нашёл... А простая UDF вот: [vba]Код
Function cislo(s) cislo = Val(s) End Function
[/vba] Автор - Hugo Дата добавления - 04.03.2014 в 10:48
ArkaIIIa
Дата: Вторник, 04.03.2014, 10:49 |
Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 894
Репутация:
115
±
Замечаний:
0% ±
2010
Hugo Я имел ввиду, что для формул "ЛЕВСИМВ" и "ПРАВСИМВ", которые ищут значения до точки - они ничем не отличаются. Там нет разницы в кол-ве знаков.
Hugo Я имел ввиду, что для формул "ЛЕВСИМВ" и "ПРАВСИМВ", которые ищут значения до точки - они ничем не отличаются. Там нет разницы в кол-ве знаков.ArkaIIIa
Ответить
Сообщение Hugo Я имел ввиду, что для формул "ЛЕВСИМВ" и "ПРАВСИМВ", которые ищут значения до точки - они ничем не отличаются. Там нет разницы в кол-ве знаков.Автор - ArkaIIIa Дата добавления - 04.03.2014 в 10:49
Russel
Дата: Вторник, 04.03.2014, 10:50 |
Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1394
Репутация:
320
±
Замечаний:
0% ±
Excel 2010
Автозаменой: 1. " RUR" на ничто; 2. Точку на запятую
Автозаменой: 1. " RUR" на ничто; 2. Точку на запятую Russel
QIWI 9173973973
Ответить
Сообщение Автозаменой: 1. " RUR" на ничто; 2. Точку на запятую Автор - Russel Дата добавления - 04.03.2014 в 10:50
ArkaIIIa
Дата: Вторник, 04.03.2014, 10:53 |
Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 894
Репутация:
115
±
Замечаний:
0% ±
2010
Russel Нужна формула
Ответить
Сообщение Russel Нужна формулаАвтор - ArkaIIIa Дата добавления - 04.03.2014 в 10:53
китин
Дата: Вторник, 04.03.2014, 10:54 |
Сообщение № 6
Группа: Модераторы
Ранг: Экселист
Сообщений: 7035
Репутация:
1079
±
Замечаний:
0% ±
Excel 2007;2010;2016
вам же Hugo , написалГдеж они одинаковые? 1 тысяча и 25 тысяч!
ПОИСК то ищет точку с первого знака слева
вам же Hugo , написалГдеж они одинаковые? 1 тысяча и 25 тысяч!
ПОИСК то ищет точку с первого знака слева китин
Не судите очень строго:я пытаюсь научиться ЯД 41001877306852
Сообщение отредактировал китин - Вторник, 04.03.2014, 10:54
Ответить
Сообщение вам же Hugo , написалГдеж они одинаковые? 1 тысяча и 25 тысяч!
ПОИСК то ищет точку с первого знака слева Автор - китин Дата добавления - 04.03.2014 в 10:54
Pelena
Дата: Вторник, 04.03.2014, 10:55 |
Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 19533
Репутация:
4638
±
Замечаний:
±
Excel 365 & Mac Excel
для формул "ЛЕВСИМВ" и "ПРАВСИМВ", которые ищут значения до точки - они ничем не отличаются
Это не так. ПОИСК() ищет точку, отсчитывая позиции СЛЕВА, а Вы потом это число используете для выбора символов СПРАВА. В первом примере просто совпало, что точка посередине текста
для формул "ЛЕВСИМВ" и "ПРАВСИМВ", которые ищут значения до точки - они ничем не отличаются
Это не так. ПОИСК() ищет точку, отсчитывая позиции СЛЕВА, а Вы потом это число используете для выбора символов СПРАВА. В первом примере просто совпало, что точка посередине текстаPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение для формул "ЛЕВСИМВ" и "ПРАВСИМВ", которые ищут значения до точки - они ничем не отличаются
Это не так. ПОИСК() ищет точку, отсчитывая позиции СЛЕВА, а Вы потом это число используете для выбора символов СПРАВА. В первом примере просто совпало, что точка посередине текстаАвтор - Pelena Дата добавления - 04.03.2014 в 10:55
ArkaIIIa
Дата: Вторник, 04.03.2014, 10:58 |
Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 894
Репутация:
115
±
Замечаний:
0% ±
2010
Pelena, китин Ясно, а вот такой вариант подходит под условие? =ПОДСТАВИТЬ(ЛЕВСИМВ(B2;ПОИСК("RUR";B2;1)-2);".";",";1)
Pelena, китин Ясно, а вот такой вариант подходит под условие? =ПОДСТАВИТЬ(ЛЕВСИМВ(B2;ПОИСК("RUR";B2;1)-2);".";",";1)ArkaIIIa
Сообщение отредактировал ArkaIIIa - Вторник, 04.03.2014, 10:59
Ответить
Сообщение Pelena, китин Ясно, а вот такой вариант подходит под условие? =ПОДСТАВИТЬ(ЛЕВСИМВ(B2;ПОИСК("RUR";B2;1)-2);".";",";1)Автор - ArkaIIIa Дата добавления - 04.03.2014 в 10:58
Pelena
Дата: Вторник, 04.03.2014, 11:00 |
Сообщение № 9
Группа: Админы
Ранг: Местный житель
Сообщений: 19533
Репутация:
4638
±
Замечаний:
±
Excel 365 & Mac Excel
Вариант Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;"RUR";"");".";",");" ";"")
В Вашей формуле надо ещё убрать пробелы и перевести текст в число (--) или (*1)
Вариант Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;"RUR";"");".";",");" ";"")
В Вашей формуле надо ещё убрать пробелы и перевести текст в число (--) или (*1) Pelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение Вариант Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;"RUR";"");".";",");" ";"")
В Вашей формуле надо ещё убрать пробелы и перевести текст в число (--) или (*1) Автор - Pelena Дата добавления - 04.03.2014 в 11:00
Hugo
Дата: Вторник, 04.03.2014, 11:02 |
Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3858
Репутация:
815
±
Замечаний:
0% ±
365
А зачем вообще искать точку, если нужно 6 символов справа? результат 73 RUR
А зачем вообще искать точку, если нужно 6 символов справа? результат 73 RUR Hugo
webmoney: E265281470651 Z422237915069 USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
Ответить
Сообщение А зачем вообще искать точку, если нужно 6 символов справа? результат 73 RUR Автор - Hugo Дата добавления - 04.03.2014 в 11:02
китин
Дата: Вторник, 04.03.2014, 11:02 |
Сообщение № 11
Группа: Модераторы
Ранг: Экселист
Сообщений: 7035
Репутация:
1079
±
Замечаний:
0% ±
Excel 2007;2010;2016
и мой вариант(почти как у Елены) Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(C2;ЛЕВСИМВ(C2;ПОИСК(".";C2));"");"RUR";"")
и мой вариант(почти как у Елены) Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(C2;ЛЕВСИМВ(C2;ПОИСК(".";C2));"");"RUR";"")
китин
Не судите очень строго:я пытаюсь научиться ЯД 41001877306852
Ответить
Сообщение и мой вариант(почти как у Елены) Код
=--ПОДСТАВИТЬ(ПОДСТАВИТЬ(C2;ЛЕВСИМВ(C2;ПОИСК(".";C2));"");"RUR";"")
Автор - китин Дата добавления - 04.03.2014 в 11:02
Russel
Дата: Вторник, 04.03.2014, 11:03 |
Сообщение № 12
Группа: Друзья
Ранг: Старожил
Сообщений: 1394
Репутация:
320
±
Замечаний:
0% ±
Excel 2010
Как вариант: Код
=ЗНАЧЕН(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;"RUR";"");".";",");" ";""))
Как вариант: Код
=ЗНАЧЕН(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;"RUR";"");".";",");" ";""))
Russel
QIWI 9173973973
Ответить
Сообщение Как вариант: Код
=ЗНАЧЕН(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B2;"RUR";"");".";",");" ";""))
Автор - Russel Дата добавления - 04.03.2014 в 11:03
Pelena
Дата: Вторник, 04.03.2014, 11:05 |
Сообщение № 13
Группа: Админы
Ранг: Местный житель
Сообщений: 19533
Репутация:
4638
±
Замечаний:
±
Excel 365 & Mac Excel
Я вообще не поняла, что мы ищем на выходе должно быть 1469,73
Нет?
Я вообще не поняла, что мы ищем на выходе должно быть 1469,73
Нет? Pelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение Я вообще не поняла, что мы ищем на выходе должно быть 1469,73
Нет? Автор - Pelena Дата добавления - 04.03.2014 в 11:05
ArkaIIIa
Дата: Вторник, 04.03.2014, 11:08 |
Сообщение № 14
Группа: Проверенные
Ранг: Ветеран
Сообщений: 894
Репутация:
115
±
Замечаний:
0% ±
2010
Hugo, китин, Russel, Pelena Большое всем спасибо. Проблема решена) все варианты жизнеспособны) Пелене отдельное спасибо за ликбез относительно "--"
Hugo, китин, Russel, Pelena Большое всем спасибо. Проблема решена) все варианты жизнеспособны) Пелене отдельное спасибо за ликбез относительно "--"ArkaIIIa
Ответить
Сообщение Hugo, китин, Russel, Pelena Большое всем спасибо. Проблема решена) все варианты жизнеспособны) Пелене отдельное спасибо за ликбез относительно "--"Автор - ArkaIIIa Дата добавления - 04.03.2014 в 11:08
китин
Дата: Вторник, 04.03.2014, 11:15 |
Сообщение № 15
Группа: Модераторы
Ранг: Экселист
Сообщений: 7035
Репутация:
1079
±
Замечаний:
0% ±
Excel 2007;2010;2016
или такКод
=--ПОДСТАВИТЬ(ЛЕВСИМВ(C2;ПОИСК(" RUR";C2));".";",")
дляна выходе должно быть 1469,73
или такКод
=--ПОДСТАВИТЬ(ЛЕВСИМВ(C2;ПОИСК(" RUR";C2));".";",")
дляна выходе должно быть 1469,73
китин
Не судите очень строго:я пытаюсь научиться ЯД 41001877306852
Ответить
Сообщение или такКод
=--ПОДСТАВИТЬ(ЛЕВСИМВ(C2;ПОИСК(" RUR";C2));".";",")
дляна выходе должно быть 1469,73
Автор - китин Дата добавления - 04.03.2014 в 11:15