2016-10-04 7 views
0

У меня есть макрос VBA, делающий несколько операций над ячейками. По какой-то причине некоторые из них округлены до двух десятичных знаков, тогда как я хочу целое число (5 десятичных знаков). Я получаю 0,13 вместо 0,1319:.Стоп Excel (или VBA) округлые десятичные знаки

Cells(rowWhere2Write + 2, 4).Value = Worksheets(originalSheet.Name).Cells(r, "AA").Value2 - Cells(rowWhere2Write + 4, 11) 

В Worksheets (originalSheet.Name) .Cells (г, "AA") Value2 Я зайца это значение: 0,1319 € (да, это валюта отформатирован, хотя меня интересует только 0,1319).

Почему он округляет его до двух десятичных знаков? Как я могу получить 4-5 десятичных знаков вместо двух?

Есть ли способ получить 5 десятичных знаков и форматировать мою новую ячейку с валютой €? До сих пор я пробовал, но я получал число, усеченное до двух десятичных знаков.

Благодаря

+1

Я предлагаю вам использовать значение« Value2 »во всех случаях вместо« Значение »(или опустить его), а затем назначить' Numberformat', который вы хотите для ячейки. – Rory

+0

Я пробовал это: Ячейки (rowWhere2Write + 2, 4) .NumberFormat = "0.00000" Ячейки (rowWhere2Write + 2, 4) .Value2 = Рабочие листы (originalSheet.Name) .Cells (r, "AA") .Value2 - Ячейки (rowWhere2Write + 4, 11) .Value2 Но я получаю только 0,13000, не могу получить 0,1319. Изменение порядка инструкций приводит меня к одному и тому же результату. Ячейки (rowWhere2Write + 2, 4). Значит также тот же результат. Что я могу попробовать? –

+0

Каковы значения двух ячеек в точности? – Rory

ответ

0

это вопрос NumberFormat ... Try selection.NumberFormat = ""

Если € важно для вас, попробуйте selection.NumberFormat = "0,00 ???? € «(более? если хотите)

+0

Можете ли вы уточнить? Проверьте комментарий ниже, я не мог заставить его работать. –

+1

Либо ваша ячейка содержит 0.13, и вам нужно изменить код, который дал это, или он содержит 0.1319, но показывает 0.13 и selection.NumberFormat = "0.00 ???? €" будет работать ... – Pierre

+0

А, я понял. Оказывается, была минусовая операция для точного значения, отсутствующего, что делало ячейку ровно 0,13 .. Какое совпадение LOL. Спасибо –