powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Cумма через тире
10 сообщений из 10, страница 1 из 1
Cумма через тире
    #35852294
Alex-RND
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе время суток .
Подскажите, не кто не сталкивался с такой проблемой .
Есть ячейка в которую выводиться формула(сумма), не могу сделать так, что бы данные выводились в формате 250-00(то есть через тире), выводиться последний ноль когда используешь формулу сцепка и округление , то есть получается 250-0 а как сделать, что бы и второй ноль появлялся ?
...
Рейтинг: 0 / 0
Cумма через тире
    #35852537
Alex-RND
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот и все как оказалось .

=СЦЕПИТЬ(ОТБР(C4+C5);" - ";ЕСЛИ(ОСТАТ(C4+C5;ОТБР(C4+C5))=0;"00";ОКРУГЛ(ОСТАТ(C4+C5;ОТБР(C4+C5))*100;2)))
...
Рейтинг: 0 / 0
Cумма через тире
    #35852794
Alex-RND
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя нет вот так

=СЦЕПИТЬ(ОТБР(C4+C5);" - ";ЕСЛИ(ОСТАТ(C4+C5;ОТБР(C4+C5))=0;"00";ЕСЛИ(ДЛСТР(ПРАВСИМВ(C5+C4;ДЛСТР(C5+C4)-ПОИСК(",";C5+C4)))=1;СЦЕПИТЬ(ПРАВСИМВ(C5+C4;ДЛСТР(C5+C4)-ПОИСК(",";C5+C4));"0");ПРАВСИМВ(C5+C4;ДЛСТР(C5+C4)-ПОИСК(",";C5+C4)))))
...
Рейтинг: 0 / 0
Cумма через тире
    #35853455
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex-RND, ну уж совсем громоздко...
Попробуй так:
=ПОДСТАВИТЬ(C4+C5;",";"-")
...
Рейтинг: 0 / 0
Cумма через тире
    #35853966
tolikt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не совсем до конца то, что надо.....
Нужно подгадывать под десятичный разделитель на каждом компе. Но это пол-беды.
Главное, потом этот результат (в данном случае 250-00) не получается использовать в дальнейших расчётах, не прибегая к "обратному" преобразованию в число.
Надо бы что-то через Формат ячеек, но нормально сделать не получается. Приходится оставлять десятичный разделитель и получается типа 250-.00, 250.-00 или 250-, что не очень красиво. Без десятичного разделителя число 250 имеет вид 2-50 (тип ячейки #0-00), хотя значение в ячейке правильное, т. е. 250.
Можно почитать тему Пользовательский формат числа
...
Рейтинг: 0 / 0
Cумма через тире
    #35854582
ZVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда умножайте сумму на 100 и применяйте формат ячейки "0-00": =СУММ(С4:C5)*100
А в ссылках учитывайте множитель 100.
...
Рейтинг: 0 / 0
Cумма через тире
    #35854813
ZVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прочитал тему-дубль, и поэтому предлагаю пойти логическим путём
.
Каждый последующий пункт имеет смысл, если есть согласие по предыдущему:

1. Для всех ячеек книги заменить десятичный разделитель на тире не проблема: меню Сервис / Международные / снять Использовать системные разделители , а в Разделитель целой и дробной части вписать тире.
Но Вы сейчас же добавите, что должно быть не для всех ячеек, не так ли?

2. Если нужно, чтобы только в заданных ячейках использовался формат с необычным десятичным разделителем, и при этом это были числа, то другого варианта, кроме как умножить число на 100 и смириться с этим, у Вас нет. Если на такую ячейку ссылаются какие-то формулы, то в них нужно предусмотреть деление на 100.

3. Допустим, смирились с п.2, теперь добавилось условие, что число в ячейку может водиться вручную. Это не проблема, есть же события изменения ячеек листа, с помощью которых можно автоматически умножить на 100 и установить требуемый формат вот так, например:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
' Код VBA-модуля листа, в котором требуется спецформат
Private Sub Worksheet_Change(ByVal Target As Range)
  Const MyCrazyCells = "A1:A2,B2,C3"  ' <-- ячейки со спецформатом
  If Target.Cells.Count <>  1  Then Exit Sub
  If Application.Intersect(Target, Range(MyCrazyCells)) Is Nothing Then Exit Sub
  On Error GoTo exit_
  Target.NumberFormat = "0-00"
  If Target - Fix(Target) <>  0  Then
    Target.Value = Target.Value *  100 
  End If
exit_:
End Sub
...
Рейтинг: 0 / 0
Cумма через тире
    #35864051
Alex-RND
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей06,

Посмотрел почитал но пока оставил свою форуму .
спасибо всем .
...
Рейтинг: 0 / 0
Cумма через тире
    #35864099
Сергей06
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex-RNDПосмотрел почитал но пока оставил свою форуму .
спасибо всем .А смысл в чем оставлять большую формулу??? Результат также текстовый и не может учавствовать в дальнейших вычислениях...
А вернуть обратно числовой формат при помощи подставить() легче:
=--ПОДСТАВИТЬ(D8;" - ";",")
или же просто без двух минусов в переди ;-)
...
Рейтинг: 0 / 0
Cумма через тире
    #36131390
Clearest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если в формате числа подставить # ###-"00"
Единственно, не отображаются десятые и сотые %(
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Cумма через тире
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]