Формат диапазона Excel: число автоматически форматируется, если задан Range :: Value2 - PullRequest
0 голосов
/ 11 сентября 2009

У меня есть надстройка для Excel, написанная на C #, которая импортирует текстовый файл в таблицу Excel. Некоторые из полей в файле являются текстовыми, а некоторые - числами с весами.

Неисправные действия:

  1. Изменить региональные настройки системы на голландский (Бельгия)
  2. Откройте Excel и импортируйте файл в Excel. Записи содержат такие значения, как 78,1118, который преобразуется в 781.118. Обратите внимание, что в голландском (Бельгия) COMMA - это десятичный символ, а DOT - это тысяча символов.

Мне не нужно, чтобы число форматировалось автоматически, я просто хочу отобразить все, что я получаю из файла (78,1118). Если я установлю для NumberFormat ячейки значение « @ », то есть для текста, отобразится ошибка (SmartTag), говорящая « Число, сохраненное в виде текста ». Я знаю, что могу изменить настройки, перейдя в поле «Параметры», но я не хочу изменять какие-либо пользовательские параметры в Excel для этого. Я попытался установить значение ячейки Value2 с «» (апостроф), но отображается та же ошибка. Если я установлю формат ячейки на что-то другое после того, как значение будет установлено, тогда фактическое значение изменится, и я потеряю десятичную дробь.

Есть ли способ в Excel, чтобы просто отобразить значение и НЕ отображать ошибку «Number Stored as Text» в ячейке?

1 Ответ

1 голос
/ 05 апреля 2010

в c #

ExcelApplication.ErrorCheckingOptions.NumberAsText=false
...