формат числа в Excel

Я использую Excel 2007 ... у меня следующие диапазоны ...

      D    E       G   H
  5   1    2       1   1
  6   2    2       1   1

теперь я выбираю диапазон F8: G9 и пишу следующую формулу «= D5: E6 * 0,2 + G5: H6 * 0,3» и нажимаю CTRL + SHIFT + ENTER ... т.е. выполняю сложение матрицы ... теперь у меня есть следующий результат

       F    G
  8   0.5  0.7
  9   0.7  0.7

теперь я выбираю этот диапазон результатов и меняю его формат ячеек на числовой формат на число с 0 десятичными знаками .... теперь у меня есть следующий результат

     F  G
 8   1  1
 9   1  1

теперь у меня есть программа на С #, которая будет читать значения этого диапазона ... (с диапазоном (...). значение2) ... затем попытается найти отдельные значения, но С # предполагает, что он читает его в приведенном выше случае 1,1, 1,1 ... что в действительности неверно. кроме того, программа на C # теперь будет использовать эти различные значения для форматирования ячеек цветами с помощью оператора равенства, и в этом случае ни одно из значений ячейки не равно 1 ...

возможно ли в Excel сделать это изменение после числового формата ... до реального значения2 ячейки ... но не только для внешнего вида! потому что когда я прошу например

MsgBox Range("F8").Value2

он показывает мне 0,5, но поскольку я изменил формат ячейки, я хочу вместо этого видеть 1 ... Я не хочу округлять значение Range ("F8"). Value2, поскольку оно будет работать только для определенного случая.

мой вопрос в том, как можно изменить значения диапазона F8: G9 после числового формата на те, которые числовой формат изменил их ????

Благодарность!!!


person Community    schedule 22.06.2009    source источник
comment
Как насчет NumberFormat, мертв Пользователь ? ^^   -  person Bitterblue    schedule 03.04.2014


Ответы (2)


Используйте свойство Text объекта Range, чтобы вернуть отформатированную версию

например если ячейка A1 содержит 0,77458 и отформатирована до одного десятичного знака, тогда

  • Range("A1").Value2 = 0,77458 (как значение Double)
  • Range("A1").Text = 0,8 (как значение String)
person barrowc    schedule 23.06.2009

Форматирование - это просто проблема презентации того, как отображаются данные. Если вы хотите работать с округленными значениями, вам следует округлить фактическое значение либо в Excel, используя функцию округления, либо в .net, используя Math.Round.

person Chris Chilvers    schedule 22.06.2009