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

Вход

Регистрация

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

 

= Мир MS Excel/Как извлечь из ячейки тип формат валюты с помощью формулы? - Страница 2 - Мир MS Excel

Старая форма входа
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: китин, _Boroda_  
Как извлечь из ячейки тип формат валюты с помощью формулы?
AlexM Дата: Понедельник, 07.04.2014, 11:01 | Сообщение № 21
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
Понятно что другой.
Поставленную задачу не решает. В задаче не оговаривалась валюта и каким форматом ее сделали. Это в файле образце две валюты, а в реальном файле может быть больше.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеПонятно что другой.
Поставленную задачу не решает. В задаче не оговаривалась валюта и каким форматом ее сделали. Это в файле образце две валюты, а в реальном файле может быть больше.

Автор - AlexM
Дата добавления - 07.04.2014 в 11:01
ikki Дата: Понедельник, 07.04.2014, 11:06 | Сообщение № 22
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
вариант[vba]
Код
Function v(rr As Range)
      With CreateObject("vbscript.regexp")
        .Pattern = "[^-().,' \xA0\d]+"
        v = .Execute(rr.Text)(0)
      End With
End Function
[/vba]


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Понедельник, 07.04.2014, 11:15
 
Ответить
Сообщениевариант[vba]
Код
Function v(rr As Range)
      With CreateObject("vbscript.regexp")
        .Pattern = "[^-().,' \xA0\d]+"
        v = .Execute(rr.Text)(0)
      End With
End Function
[/vba]

Автор - ikki
Дата добавления - 07.04.2014 в 11:06
Hugo Дата: Понедельник, 07.04.2014, 11:09 | Сообщение № 23
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3487
Репутация: 752 ±
Замечаний: 0% ±

365
Я сказал - UDF под конкретный случай. И количество валют может быть какое угодно - главное чтоб формат цифр был "#,##0.00" - а он там всюду именно такой, что даёт основание полагать что он такой будет во всех валютах (трёх :) )


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеЯ сказал - UDF под конкретный случай. И количество валют может быть какое угодно - главное чтоб формат цифр был "#,##0.00" - а он там всюду именно такой, что даёт основание полагать что он такой будет во всех валютах (трёх :) )

Автор - Hugo
Дата добавления - 07.04.2014 в 11:09
Hugo Дата: Понедельник, 07.04.2014, 11:11 | Сообщение № 24
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3487
Репутация: 752 ±
Замечаний: 0% ±

365
Александр, тоже неуниверсально - у "р." точка пропадает :)


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеАлександр, тоже неуниверсально - у "р." точка пропадает :)

Автор - Hugo
Дата добавления - 07.04.2014 в 11:11
ikki Дата: Понедельник, 07.04.2014, 11:13 | Сообщение № 25
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
я не утверждал, что это это универсальное :)
вообще не видел три-четыре предыдущих поста, когда постил своё - уж очень долго вспоминал, как втюхать в шаблон этот растреклятый пробел :)
кстати, я ещё и минус забыл.
и скобки.
пойду добавлю.
добавил.


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Понедельник, 07.04.2014, 11:15
 
Ответить
Сообщениея не утверждал, что это это универсальное :)
вообще не видел три-четыре предыдущих поста, когда постил своё - уж очень долго вспоминал, как втюхать в шаблон этот растреклятый пробел :)
кстати, я ещё и минус забыл.
и скобки.
пойду добавлю.
добавил.

Автор - ikki
Дата добавления - 07.04.2014 в 11:13
ikki Дата: Понедельник, 07.04.2014, 11:16 | Сообщение № 26
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
точка пропадает
пренебрегаем нафиг :p


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Понедельник, 07.04.2014, 11:17
 
Ответить
Сообщение
точка пропадает
пренебрегаем нафиг :p

Автор - ikki
Дата добавления - 07.04.2014 в 11:16
Hugo Дата: Понедельник, 07.04.2014, 11:25 | Сообщение № 27
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3487
Репутация: 752 ±
Замечаний: 0% ±

365
Кстати, если делать на ЯЧЕЙКА(), то ещё нужно дорабатывать под локализацию, на английском Экселе естественно "формат" не работает.
А локализаций может быть море... как минимум ещё испанская, французская, немецкая, китайская...
Если файл живёт только у себя - тогда конечно это не важно.


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеКстати, если делать на ЯЧЕЙКА(), то ещё нужно дорабатывать под локализацию, на английском Экселе естественно "формат" не работает.
А локализаций может быть море... как минимум ещё испанская, французская, немецкая, китайская...
Если файл живёт только у себя - тогда конечно это не важно.

Автор - Hugo
Дата добавления - 07.04.2014 в 11:25
AlexM Дата: Понедельник, 07.04.2014, 11:41 | Сообщение № 28
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
пренебрегаем нафиг
А если убрать точку из Pattern, то работает правильно. Не знаю, может быть еще что-то вылезет.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.


Сообщение отредактировал AlexM - Понедельник, 07.04.2014, 11:42
 
Ответить
Сообщение
пренебрегаем нафиг
А если убрать точку из Pattern, то работает правильно. Не знаю, может быть еще что-то вылезет.

Автор - AlexM
Дата добавления - 07.04.2014 в 11:41
ikki Дата: Понедельник, 07.04.2014, 11:44 | Сообщение № 29
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
точка может встретиться в числе.
зависит от настроек.
конечно, можно и учесть этот случай.
но проще - "пренебречь нафиг" (с) :D


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki
 
Ответить
Сообщениеточка может встретиться в числе.
зависит от настроек.
конечно, можно и учесть этот случай.
но проще - "пренебречь нафиг" (с) :D

Автор - ikki
Дата добавления - 07.04.2014 в 11:44
Hugo Дата: Понедельник, 07.04.2014, 11:45 | Сообщение № 30
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3487
Репутация: 752 ±
Замечаний: 0% ±

365
Тогда вылезет точка как разделитель разрядов или десятичный - у кого она есть.


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеТогда вылезет точка как разделитель разрядов или десятичный - у кого она есть.

Автор - Hugo
Дата добавления - 07.04.2014 в 11:45
ikki Дата: Понедельник, 07.04.2014, 11:48 | Сообщение № 31
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
ну, вот так можно:[vba]
Код
Function v(rr As Range)
      With CreateObject("vbscript.regexp")
        .Pattern = "[^.,' \xA0\d]+\.?"
        v = .Execute(rr.Text)(0)
      End With
End Function
[/vba]
(ахтунг! добавилось ровно три символа)


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Понедельник, 07.04.2014, 11:49
 
Ответить
Сообщениену, вот так можно:[vba]
Код
Function v(rr As Range)
      With CreateObject("vbscript.regexp")
        .Pattern = "[^.,' \xA0\d]+\.?"
        v = .Execute(rr.Text)(0)
      End With
End Function
[/vba]
(ахтунг! добавилось ровно три символа)

Автор - ikki
Дата добавления - 07.04.2014 в 11:48
AlexM Дата: Понедельник, 07.04.2014, 12:04 | Сообщение № 32
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
С начала задача мне не показалась интересной. Познавательно получилось. Спасибо.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеС начала задача мне не показалась интересной. Познавательно получилось. Спасибо.

Автор - AlexM
Дата добавления - 07.04.2014 в 12:04
ikki Дата: Понедельник, 07.04.2014, 12:17 | Сообщение № 33
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
большрй минус регулярок - медленно работают :(
на больших объемах оч.заметно.
поэтому универсальное решение стандартными функциями VBA хотелось бывсё же


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki
 
Ответить
Сообщениебольшрй минус регулярок - медленно работают :(
на больших объемах оч.заметно.
поэтому универсальное решение стандартными функциями VBA хотелось бывсё же

Автор - ikki
Дата добавления - 07.04.2014 в 12:17
MK Дата: Вторник, 22.04.2014, 16:27 | Сообщение № 34
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Всем большое спасибо за помощь, господа!!!! hands
 
Ответить
СообщениеВсем большое спасибо за помощь, господа!!!! hands

Автор - MK
Дата добавления - 22.04.2014 в 16:27
Hugo Дата: Вторник, 22.04.2014, 18:40 | Сообщение № 35
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3487
Репутация: 752 ±
Замечаний: 0% ±

365
Было недавно на планете решение на макрофункции. Кажется Виктор делал, не помню...


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеБыло недавно на планете решение на макрофункции. Кажется Виктор делал, не помню...

Автор - Hugo
Дата добавления - 22.04.2014 в 18:40
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

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