HTML в Excel: Как можно сказать Excel, чтобы рассматривать столбцы как числа?

голоса
19

Мне нужно , чтобы достичь следующего при открытии HTML в Excel (Response.contentType=application/vnd.ms-excel):

  • силы Excel рассмотреть содержание Td клетка, как номера
  • сделать выше, так что любая последующая вводимый пользователь формула работает на эти клетки (если таблица открыта)

До сих пор я был успешным с добавлением style=vnd.ms-excel.numberformat:0.00к Td клеток в вопросе. Содержимое ячеек правильно показано , как числа , когда я правой кнопкой мыши на них в Excel, однако формулы не работают.

В случае успеха, эта техника была бы весьма полезной, поскольку любой отчет веб Excel может быть повышена с пользователем соответствующих формул в соответствии с требованиями клиента. Заранее спасибо.

Задан 09/12/2008 в 23:26
источник пользователем
На других языках...                            


6 ответов

голоса
28

Если добавить CSS класс на страницу:

.num {
  mso-number-format:General;
}
.date {
  mso-number-format:"Short Date";
}

И шлепать эти классы на ваш ТД, это работает?

<td class="num">34</td>
<td class="num">17.0</td>
<td class="date">12/17/2008</td> <!-- if you are playing with dates too -->

Обновление: Дополнительные параметры форматирования от @Aaron.

Ответил 10/12/2008 в 00:06
источник пользователем

голоса
16

Ниже приведен список форматов Excel: клетки Styling Excel с МСО-номер-формате

Ответил 22/07/2009 в 16:34
источник пользователем

голоса
4

Лучший трюк заключается в макете электронной таблицы Excel со всеми цветами / (условными) форматы / формулами вам требуется.

Держите его как можно более простым, только голые минимальные строки и т.д.

Затем сохраните таблицу Excel «Как Xml Spreadsheet»

Тогда у вас есть шаблон для создания таблицы с помощью Xml.

Я вообще убирать стили в исходном Xml сохраненного из книги Excel. Удаление дубликатов и их переименование.

Тогда это просто вопрос заселения с тем, что у вас есть источник данных.

Я не знаю, в какой среде вы кодирования, но в VB.NET с LINQ и Xml литералов, это очень простая задача.

Ответил 10/12/2008 в 00:04
источник пользователем

голоса
2

Она не работает иногда , если вы добавите его помощь css classв этом случае попробуйте его , используя в Styleк вашему TD. Я сделал это для форматирования столбца текста. как это

 style="mso-number-format:\@;"

Для вас это было бы, как

  mso-number-format:General
Ответил 03/10/2012 в 14:17
источник пользователем

голоса
1

Я не мог получить любой из ответов на эту страницу, чтобы работать в Excel 2010. Я закончил с использованием этого.

<td x:num>123</td>

Ответил 22/07/2015 в 03:45
источник пользователем

голоса
0

UPDATE: Также необходимо удалить неразрывные пробелы (NBSP в) от Td ячеек, содержащих числовые или денежную информацию, чтобы сделать формулы работают на этих клетках в Excel. Таким образом, проблема решена.

Ответил 10/12/2008 в 19:42
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more