Список форумов Акцент Акцент
официальный форум разработчика программы Акцент
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Количество прописью.

 
Начать новую тему   Ответить на тему    Список форумов Акцент -> Акцент 6.0
Предыдущая тема :: Следующая тема  
Автор Сообщение
virainf



Зарегистрирован: 15.01.2009
Сообщения: 58

СообщениеДобавлено: Пн Июн 15, 2009 10:58 am    Заголовок сообщения: Количество прописью. Ответить с цитатой

Можно ли написать количество прописью? Spell только целые пишет, а нужно не только целые...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Пн Июн 15, 2009 11:43 am    Заголовок сообщения: Re: Количество прописью. Ответить с цитатой

virainf писал(а):
Можно ли написать количество прописью? Spell только целые пишет, а нужно не только целые...

см. SpellMoney, SpellMoney2
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
virainf



Зарегистрирован: 15.01.2009
Сообщения: 58

СообщениеДобавлено: Пн Июн 15, 2009 12:18 pm    Заголовок сообщения: Ответить с цитатой

Там валюта Confused
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Пн Июн 15, 2009 12:26 pm    Заголовок сообщения: Ответить с цитатой

virainf писал(а):
Там валюта Confused

А посмотреть описание слабо ? :)

MsgBox SpellMoney(123.45)
MsgBox spellmoney2(123.45, "0||||0|||", 1, 1)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
virainf



Зарегистрирован: 15.01.2009
Сообщения: 58

СообщениеДобавлено: Пн Июн 15, 2009 12:26 pm    Заголовок сообщения: Ответить с цитатой

Но можно что-то придумать)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
virainf



Зарегистрирован: 15.01.2009
Сообщения: 58

СообщениеДобавлено: Пн Июн 15, 2009 1:06 pm    Заголовок сообщения: Ответить с цитатой

olimp писал(а):
virainf писал(а):
Там валюта Confused

А посмотреть описание слабо ? :)

MsgBox SpellMoney(123.45)
MsgBox spellmoney2(123.45, "0||||0|||", 1, 1)

Не понял, простите Smile
Мне надо, на пример, "Сто двадцать три т. триста кг." Как???
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
OlegA



Зарегистрирован: 24.10.2007
Сообщения: 15

СообщениеДобавлено: Пн Июн 15, 2009 2:51 pm    Заголовок сообщения: Re: Количество прописью. Ответить с цитатой

virainf писал(а):
Можно ли написать количество прописью? Spell только целые пишет, а нужно не только целые...



Попробуй это

Dim Qty
Dim Str
Qty = 12.01

'первая часть
Str = Replace(Spell(Token( (Replace(Qty ,".",",")),1),0,2),"-"," ") &"т. "

'Вторая часть
If (Token(Replace(FormatNumber(Qty,2),".",","),2)) > 0 Then
Str = Str & Spell(Token(Replace(FormatNumber(Qty,2),".",","),2)) & "кг"
End If


MsgBox Str
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Пн Июн 15, 2009 3:27 pm    Заголовок сообщения: Ответить с цитатой

virainf писал(а):
olimp писал(а):
virainf писал(а):
Там валюта Confused

А посмотреть описание слабо ? :)

MsgBox SpellMoney(123.45)
MsgBox spellmoney2(123.45, "0||||0|||", 1, 1)

Не понял, простите Smile
Мне надо, на пример, "Сто двадцать три т. триста кг." Как???

Можно использовать SpellMoney2, вместо "грн." и "коп" писать "т" и "кг", но обязательно писать в тоннах

Например
123567 кг
msgbox spellmoney2( 123.567, "0|т.|т.|т.|0|кг.|кг.|кг.", 1, 1)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
virainf



Зарегистрирован: 15.01.2009
Сообщения: 58

СообщениеДобавлено: Вт Июн 16, 2009 7:20 am    Заголовок сообщения: Ответить с цитатой

olimp писал(а):

Можно использовать SpellMoney2, вместо "грн." и "коп" писать "т" и "кг", но обязательно писать в тоннах

Например
123567 кг
msgbox spellmoney2( 123.567, "0|т.|т.|т.|0|кг.|кг.|кг.", 1, 1)

spellmoney2 округляет всегда до 2-х знаков после точки и выйдет "Сто двадцать три т. пятьдесят семь кг." Confused
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Вт Июн 16, 2009 8:28 am    Заголовок сообщения: Ответить с цитатой

virainf писал(а):
olimp писал(а):

Можно использовать SpellMoney2, вместо "грн." и "коп" писать "т" и "кг", но обязательно писать в тоннах

Например
123567 кг
msgbox spellmoney2( 123.567, "0|т.|т.|т.|0|кг.|кг.|кг.", 1, 1)

spellmoney2 округляет всегда до 2-х знаков после точки и выйдет "Сто двадцать три т. пятьдесят семь кг." Confused

Ну слепите из двух spellmoney2. Вначале тонны, потом килограммы.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
virainf



Зарегистрирован: 15.01.2009
Сообщения: 58

СообщениеДобавлено: Вт Июн 16, 2009 10:33 am    Заголовок сообщения: Ответить с цитатой

olimp писал(а):

Ну слепите из двух spellmoney2. Вначале тонны, потом килограммы.

Если лепить, то можно и Spell обойтись...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
olimp
Site Admin


Зарегистрирован: 10.03.2005
Сообщения: 2661

СообщениеДобавлено: Вт Июн 16, 2009 10:36 am    Заголовок сообщения: Ответить с цитатой

virainf писал(а):
olimp писал(а):

Ну слепите из двух spellmoney2. Вначале тонны, потом килограммы.

Если лепить, то можно и Spell обойтись...

Не думаю, что код

Spell... & " " & Spell ...

проще, чем писать собственную функцию, которая будет возвращать число прописью именно так, как нужно Вам.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
alex



Зарегистрирован: 18.02.2008
Сообщения: 253

СообщениеДобавлено: Вт Июн 16, 2009 11:06 am    Заголовок сообщения: Ответить с цитатой

Раздели число нацело не 1000. Это будут тонны. Остаток от деления (число по модулю) это будут килограммы. Затем два Spell и все. Так можно делать что угодно.

Например

Число / 3600 = часы, остаток / 60 = минуты, остаток = секунды.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
virainf



Зарегистрирован: 15.01.2009
Сообщения: 58

СообщениеДобавлено: Ср Июн 17, 2009 7:36 am    Заголовок сообщения: Ответить с цитатой

olimp писал(а):

Не думаю, что код

Spell... & " " & Spell ...

проще, чем писать собственную функцию, которая будет возвращать число прописью именно так, как нужно Вам.

Я так и сделал - написал функцию, где есть
Цитата:
Spell... & " " & Spell ...
Smile
Всем спасибо!)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Акцент -> Акцент 6.0 Часовой пояс: GMT + 2
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group