Страницы: Пред. 1 2
RSS
Отображение формата числа. "В"-миллиарды, "М"-миллионы. "К"- тысячи. Вопрос: Как добавить "К" ?, [>=1000000000]# ##0,0 В;[>=1000000]# ##0,0 M;0
 
Добрый день! Мне кажется, при форматировании аргумента стоит отображать то число, отклонение от которого по абсолюной величине минимально. Соответственно, граница между целыми и тысячами проходит по числу 999,5; граница между тысячами и миллионами - по числу 999500 и т.д.
Владимир
 
дык точность округления поправить и усё
Код
=ОКРУГЛТ(ABS(A1);10^6)>=10^9
Соблюдение правил форума не освобождает от модераторского произвола
 
Ежели вдруг кому сгодится...

Код
Sub BMK()
' Этот макрос устанавливает визуальный формат в ячейках с использованием "B", "M", "К" вместо разрядов.
' Выделяем нужные ячейки, запускаем макрос
' © Евдокимов С. (170421)

    For Each Ячейка In Selection
        Select Case Ячейка.Cells.Value
            Case Is < -1000000000
                Ячейка.Cells.NumberFormat = "0,,,В"
            Case Is < -1000000
                Ячейка.Cells.NumberFormat = "0,,М"
            Case Is < -1000
                Ячейка.Cells.NumberFormat = "0,К"
            Case Is > 1000000000
                Ячейка.Cells.NumberFormat = "0,,,В"
            Case Is > 1000000
                Ячейка.Cells.NumberFormat = "0,,М"
            Case Is > 1000
                Ячейка.Cells.NumberFormat = "0,К"
          End Select
        Next
End Sub



Sub Макрос2()
' © Андрей VG с форума www.planetaexcel.ru
  
    For Each Ячейка In Range("B1:B10") ' Дополнение: здесь ставим нужный диапазон, либо делаем как в коде выше
        If Ячейка.Cells.Value < -1000000000 Then
            Ячейка.Cells.NumberFormat = "0,,,В"
        ElseIf Ячейка.Cells.Value < -1000000 Then
            Ячейка.Cells.NumberFormat = "0,,М"
        ElseIf Ячейка.Cells.Value < -1000 Then
            Ячейка.Cells.NumberFormat = "0,К"
        ElseIf Ячейка.Cells.Value > 1000000000 Then
            Ячейка.Cells.NumberFormat = "0,,,В"
        ElseIf Ячейка.Cells.Value > 1000000 Then
            Ячейка.Cells.NumberFormat = "0,,М"
        ElseIf Ячейка.Cells.Value > 1000 Then
            Ячейка.Cells.NumberFormat = "0,К"
        End If
    Next
End Sub
Изменено: Сергей Евдокимов - 17.04.2021 11:36:29
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
 
Сергей Евдокимов, не подскажете, для какой сферы деятельности можно применить сие творение?  
 
Конкретно мне - балансовая/финансовая отчетность публичных компаний США, Китай.. РФ
Данных много, места мало. Только лишь по этой причине монитор  нужно в 2 раза шире 😀
Плюс воспринимать цифры легче, когда сразу видно сколько там тысяч, миллионов, миллиардов.

P/S/ Хотел скрином показать, но тут ограничения в 100 кб. Не стал.
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
 
Цитата
Сергей Евдокимов написал:
Ежели вдруг кому сгодится...
этот код не превратит 999999 в
Цитата
Сергей ЕвдокимовОкругляем по мат.правилу, а следственно значит зреться будет должно как 1M
определитесь уже с хотелками
Соблюдение правил форума не освобождает от модераторского произвола
 
Цитата
buchlotnik написал:
определитесь уже с хотелками
Хочу чтобы программеры Билла сняли ограничения на количество условий в форматах ячеек. И не приходилось бы изобретать костыли.
Изменено: Сергей Евдокимов - 17.04.2021 13:50:33
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
 
Сергей Евдокимов,
Так тоже короче можно без потери скорости
обсуждение кода
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Эволюция отображения больших чисел
:D  
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
 
Цитата
Сергей Евдокимов написал:
Плюс воспринимать цифры легче
А какой в этом смысл, если вы с этими цифрами ничего сделать не сможете, кроме как посмотреть. Единственный вариант где Вы сможете работать это УФ  
 
Цитата
Сергей Евдокимов написал:
Хочу чтобы программеры Билла сняли ограничения на количество условий в форматах ячеек
научный формат уже давно показывает кратко и понятно. Просто нужно привыкнуть.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
научный формат
золотые слова, собственно оно и называется "нормальная форма представления числа"  ;)
Соблюдение правил форума не освобождает от модераторского произвола
 
Цитата
Сергей Евдокимов написал:
балансовая/финансовая отчетность
к слову из 1с выгружается формат в тыс.руб, а отрицательные знания в скобочках.
 
Цитата
Сергей Евдокимов написал:
Хочу чтобы программеры Билла сняли ограничения на количество условий в форматах ячеек
так и пишите Биллу (или его программистам), какой смысл об этом писать на форум?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
msi2102 написал:
А какой в этом смысл, если вы с этими цифрами ничего сделать не сможете, кроме как посмотреть...
Почему не смогу работать? Могу. Во всех ячейках точные цифры. Только формат их представления разный.

Цитата
БМВ написал:
научный формат уже давно показывает кратко и понятно.
Не знаком. В списке форматов такого не нашел.
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
 
Цитата
Сергей Евдокимов написал:
не нашел
0,00E+00
По вопросам из тем форума, личку не читаю.
 
Цитата
Ігор Гончаренко :так и пишите Биллу (или его программистам), какой смысл об этом писать на форум?
Было велено только..
Цитата
buchlotnik: определитесь уже с хотелками
Про "написать Биллу" ни слова..
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
 
Цитата
Сергей Евдокимов написал:
Почему не смогу работать? Могу
это как, Вы научились производить расчёты с текстовым форматом?  
 
msi2102, с форматом расчеты производить еще не умею. Только со значением ячеек.
Компьютер никогда не заменит человека (©️ Hannibal Lecter)
Страницы: Пред. 1 2
Наверх