Mso number format html style

Пользовательский формат Excel для корректного отображения длинных чисел с лидирующими нулями?

Всем привет! Наступаю на одни и те же грабли, которую ранее уже побеждал в Excel — на проблему с некорректным отображением длинных чисел, где некоторые из них могут быть с лидирующими нулями.

Ранее где то из форумов находил определенный формат ячейки для того, что бы корректно отображать длинные числа с лидирующими нулями, прошло пару месяцев и я забыл как задавать данный формат. А на сегодня что то уже долго ищу данный формат и вот теперь задаю свой первый вопрос в Тостер 🙂

Может кто то чаще работает в Excel и сможет подсказать какой формат задавать в формате ячеек Excel.

Варианты с апострофом или любым другим знаком в начале и форматом ячеек «Текстовой» не предлагать, интересует именно пользовательский вариант, который задается в «Формат ячеек» — «Все форматы», который решает сразу две проблемы:
1) Корректное отображение длинных чисел
2) Корректное отображение чисел с лидирующими нулями

Также есть вариант собирать файл Excel HTML разметке и добавлять стиль .text, но в данном случае вопрос именно в формате, который задается в самом Excel.

Примеры стили: .num < mso-number-format:General; >.text < mso-number-format:"\@";/*force text*/ >В тэгах: 34 17.0 067

5a9a3337db144423048216.png

Пример чисел, которым необходимо задать формат:
140940029345
70140003068
130440011739
61040012313
00440011953

Читайте также:  My HTML Cheat Sheet

Источник

Русские Блоги

В приложениях мы часто сталкиваемся с необходимостью экспортировать плоские файлы данных из системы или базы данных, обычно в txt, csv или excel. Txt и csv обычно используются для обмена данными между системами, и Excel обычно имеет лучший эффект отображения. Его можно экспортировать в соответствии с определенным шаблоном, и экспорт не нужно набирать. Он прост в использовании. Если он используется в качестве отчета, он обычно экспортируется в файл Excel.

Однако экспортировать данные в Excel с помощью компонента com очень медленно. Другой способ создания файлов Excel — это быстрый экспорт данных через html и css и одновременная установка стиля. У этого метода есть два преимущества: 1 — быстрый, 2 — это быстрый. Нет необходимости устанавливать поддержку Excel.
При экспорте файлов с использованием этого метода иногда возникает проблема, то есть экспортированный Excel часто автоматически распознает наши данные как другие форматы, например, поля с только чистыми числами будут автоматически распознаваться как цифровые форматы после экспорта в Excel , И как только число превысит 11 цифр, Excel отобразит его в форме научной записи, такой как идентификационный номер, номер телефона с кодом города и т. Д.

Существует много решений, но я привожу только одно, которое мне кажется лучшим, то есть использовать CSS для применения атрибута mso-number-format к полю таблицы (например, ), где возникает проблема, и использую этот атрибут для указания ячейки. Формат данных, чтобы избежать автоматического преобразования формата Excel. mso-number-format — это формат, предоставляемый Office. Если вы конвертируете офисный документ в HTML, такая отметка будет. MSO означает Microsoft Office.

mso-number-format:»0″ NO Decimals
mso-number-format:»0\.000″ 3 Decimals
mso-number-format:»\#\,\#\#0\.000″ Comma with 3 dec
mso-number-format:»mm\/dd\/yy» Date7
mso-number-format:»mmmm\ d\,\ yyyy» Date9
mso-number-format:»m\/d\/yy\ h\:mm\ AM\/PM» D -T AMPM
mso-number-format:»Short Date» 01/03/1998
mso-number-format:»Medium Date» 01-mar-98
mso-number-format:»d\-mmm\-yyyy» 01-mar-1998
mso-number-format:»Short Time» 5:16
mso-number-format:»Medium Time» 5:16 am
mso-number-format:»Long Time» 5:16:21:00
mso-number-format:»Percent» Percent — two decimals
mso-number-format:»0%» Percent — no decimals
mso-number-format:»0\.E+00″ Scientific Notation
mso-number-format:»\@» Text
mso-number-format:»\#\ . \/. » Fractions — up to 3 digits (312/943)


public bool ExportToExcel(System.Data.DataTable dataTable, System.Web.HttpContext curContext)
System.Web.UI.WebControls.DataGrid dgExport = null;
// текущий разговор
//System.Web.HttpContext curContext = System.Web.HttpContext.Current;
// IO используется для экспорта и возврата в файл Excel
System.IO.StringWriter strWriter = null;
System.Web.UI.HtmlTextWriter htmlWriter = null;

if (dataTable != null && dataTable.Rows.Count>0)
// Название столбца преобразования - китайский
for (int i = 0; i < dataTable.Columns.Count; i++)
dataTable.Columns[i].ColumnName = ColNameConvertToName(dataTable.Columns[i].ColumnName);
>

// Установить кодировку и формат вложения
curContext.Response.ContentType = "application/vnd.ms-excel";
curContext.Response.ContentEncoding = System.Text.Encoding.UTF8;
curContext.Response.Charset = "";
curContext.Response.AppendHeader("Content-Disposition", "attachment;filename= export.xls");

// Экспорт файла Excel
strWriter = new System.IO.StringWriter();
htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);

// Чтобы решить возможность подкачки в dgData, необходимо переопределить DataGrid без подкачки
dgExport = new System.Web.UI.WebControls.DataGrid();
dgExport.DataSource = dataTable.DefaultView;
dgExport.AllowPaging = false;
dgExport.DataBind();

// возврат к клиенту
dgExport.RenderControl(htmlWriter);
curContext.Response.Write(strWriter.ToString().Replace(" curContext.Response.End();

return true;
>

return false;
>

Источник

My New Knowledge

Python, IaC, algo trading, programming, server administration, Linux, PHP, CakePHP, PostgreSQL, MySQL, Joomla .

Sunday, November 9, 2008

Styling Excel cells with mso-number-format

2 decimals, negative numbers in red and signed
(1.56 -1.56 )

42 comments:

Thanks very helpful. Another bit of cell formatting. To turn off Wrap Text in the cell add the following attribute to your TD tag, style=’white-space:nowrap’ Reply Delete

How i can i applythe mso-number-format for differente columns?
For example: in the same excel file can i have the field date and the filed amount.

that is for excel. you write a ‘table’, and style the ‘td’s with those css classes so that excel recognizes the style of the content Delete

I have a formatted value of 1-5, when exported to excel it converts to 5-Jan. how can I use mso-number-format to maintain 1-5? Reply Delete

Anyone know where a reference list is with all the mso commands on it, like for text formatting, borders, alignment, etc??

I have scoured the depths of google and I only come up with the pages talking about specific commands, but never a comprehensive list. Reply Delete

All I could find were these two sources for other mso commands:

There are a few here scattered around in the left side links under the heading, «Subelements of Shape»

Also, on this blog entry, there are several commands in the style tags of the XML code.

. wow — the [Red] trick is awsome! I incorporated it in my applicatins.

mso-number-format:»Percent» using this giving me 10000.00%
for value of 100.

Help or suggestion really appriciated. Reply Delete

when using PERCENT, Excel show 10% for a value of 0,1.

so divide values by 100 before applying format Delete

It’s fine..i have used date format so when i click date cell the formatting is custom but it will should be date.. can u help me?
Reply Delete

Can anyone help me on formatting long number similar to this 5402199999999999999 from html to excelsheet.
When I am using mso-number-format:0 in Style of a td tag, getting the number is excel as 5430689999999990000
But the same format mso-number-format:0 is working fine for this number
5402190000000000000.

Any suggestion greatly appreciated.

I want date format like «dd/mm», how I will achive this? I have tried force text option( «\@» ) but its not working.

here is my html td style code **style=»mso-number-format:mm/dd»**

any help really appricated. Reply Delete

Hello do you know how can I apply the «mso-number-format: Currency» without the money symbol?? I need a little help! Reply Delete

When I set a custom formatting of [h]:mm the css file Excel generates shows: \[h\]\:mm. However when I define the mso-number-format as \[h\]\:mm I don’t get the expected [h]:mm custom format. Worse: it generates an [h]:mm:ss custom format for any hour more than 24. Who needs those seconds! Any hint for elapsed time formatting? Thanks! Reply Delete

Hi,
Do you know how I can put ‘mso-number-format’ in the xsl style sheet for table column? like .
As I want to use xsl stylesheet to create an html page and set ‘td’ with mso-number-format:\@ css style. Reply Delete

Источник

Format HTML Table Cell So That Excel Formats as Text

Format HTML table cell so that Excel formats as text?

You can apply formatting to the cells for numbers, text, dates, etc.

See my previous answer on this: HTML to Excel: How can tell Excel to treat columns as numbers?

(adjusted snippet)

If you add a CSS Class to your page:

.num mso-number-format:General;
>
.text mso-number-format:"\@";/*force text*/
>

And slap those classes on your TD’s, does it work?

Format html table cell numeric value as text for Excel

HTML to Excel: How can tell Excel to treat columns as numbers?

Formatting can be applied to the cells for numbers, text, dates, etc.

.num mso-number-format:General;
>
.text mso-number-format:"\@";/*force text*/
>

add the class to the cell

Forcing numeric values as text on HTML table exporting to excel

Response.Write("=""" & rsPODetail("ITM_ID") & """")

How to format excel cell ‘text’ when opening an HTML content

How to keep format within HTML converted to Excel

you can achive that by using class. for example:

and then, in your iteration :

writer.Write("");
writer.Write(data);
writer.WriteLine("");

as shown in :
Export to Excel in ASP.NET, issue with decimal formatting for numbers greater than 1000

Источник

Оцените статью