Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Возможна ли отмена автоматического форматирования в файле? - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Возможна ли отмена автоматического форматирования в файле?
av1984 Дата: Пятница, 12.12.2014, 10:50 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте.

Работаю над экспортёром данных с сайта в xlsx-формат (серверный язык - PHP). И возникла загвоздка.
Требуется экспортировать таблицу: по бокам и сверху таблицы данные в общем (текстовом) формате, а по центру ячейки в числовом формате.
Требуемые классы, отвечающие за формат, передаются корректно. Но всё равно все ячейки выводятся как текст. То есть все данные пишутся в SharedStrings.xml, вместо того чтобы разделять данные на запись в SharedString.xml SheetN.xml, хотя у меня и стоит условие для чередования.
Если указываю для всех ячеек класс формата как число, отрабатывает корректно.
То есть Excel почему-то, невзирая на прямые указания записи в конкретный файл, приводит все ячейки к одному виду.
Подскажите, пожалуйста, можно ли прописать какую-нибудь настройку в конкретном файле для отмены действия по умолчанию, чтобы Excel не форматировал на автомате?

Буду очень признателен за помощь.
К сообщению приложен файл: wtf-2.xlsx (9.3 Kb)


Сообщение отредактировал av1984 - Пятница, 12.12.2014, 10:52
 
Ответить
СообщениеЗдравствуйте.

Работаю над экспортёром данных с сайта в xlsx-формат (серверный язык - PHP). И возникла загвоздка.
Требуется экспортировать таблицу: по бокам и сверху таблицы данные в общем (текстовом) формате, а по центру ячейки в числовом формате.
Требуемые классы, отвечающие за формат, передаются корректно. Но всё равно все ячейки выводятся как текст. То есть все данные пишутся в SharedStrings.xml, вместо того чтобы разделять данные на запись в SharedString.xml SheetN.xml, хотя у меня и стоит условие для чередования.
Если указываю для всех ячеек класс формата как число, отрабатывает корректно.
То есть Excel почему-то, невзирая на прямые указания записи в конкретный файл, приводит все ячейки к одному виду.
Подскажите, пожалуйста, можно ли прописать какую-нибудь настройку в конкретном файле для отмены действия по умолчанию, чтобы Excel не форматировал на автомате?

Буду очень признателен за помощь.

Автор - av1984
Дата добавления - 12.12.2014 в 10:50
Karataev Дата: Суббота, 13.12.2014, 11:45 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1336
Репутация: 533 ±
Замечаний: 0% ±

Excel
если так сделать
1)создаете файл xlsx и делаете в нем нужные форматы ячеек.
2) этот файл используете как шаблон
3)копируете данные из другой программы(или откуда вы копируете) в этот шаблон,а не в новый файл
есть у вас возможность вставлять данные в имеющийся файл,а не в новый?
 
Ответить
Сообщениеесли так сделать
1)создаете файл xlsx и делаете в нем нужные форматы ячеек.
2) этот файл используете как шаблон
3)копируете данные из другой программы(или откуда вы копируете) в этот шаблон,а не в новый файл
есть у вас возможность вставлять данные в имеющийся файл,а не в новый?

Автор - Karataev
Дата добавления - 13.12.2014 в 11:45
av1984 Дата: Понедельник, 15.12.2014, 14:16 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Karataev,

спасибо за ответ.
Только, к сожалению, такой вариант не подходит. Потому как данные экспортируются самые разнообразные и единый шаблон здесь не подойдёт.
Буду ещё искать варианты.
 
Ответить
СообщениеKarataev,

спасибо за ответ.
Только, к сожалению, такой вариант не подходит. Потому как данные экспортируются самые разнообразные и единый шаблон здесь не подойдёт.
Буду ещё искать варианты.

Автор - av1984
Дата добавления - 15.12.2014 в 14:16
beast2040 Дата: Понедельник, 15.12.2014, 17:33 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 40% ±

av1984,

Я так понимаю вы программно вставляете в Excel данные.
Просто указывайте тип для области однотипных ячеек, или одной ячейки перед вставкой.

Программный код можно посмотреть в записанном макросе, правда его нужно будет адаптировать для вашего средства программирования.
Когда я делал на делфи утилитку, то записывал макрос и использовал в ней его код и все отлично работало.
Например для текстовой области ячеек:

[vba]
Код
Range("G15:M20").Select
Selection.NumberFormat = "@"
[/vba]

Не вдаваясь в подробности в Делфи
у меня выглядит так:


Otchet - переменная типа вариант, ей я присваивал лист ексэля, для удобства обращения.
Для числового формата вместо "@" будет "0.00"


Сообщение отредактировал beast2040 - Понедельник, 15.12.2014, 17:55
 
Ответить
Сообщениеav1984,

Я так понимаю вы программно вставляете в Excel данные.
Просто указывайте тип для области однотипных ячеек, или одной ячейки перед вставкой.

Программный код можно посмотреть в записанном макросе, правда его нужно будет адаптировать для вашего средства программирования.
Когда я делал на делфи утилитку, то записывал макрос и использовал в ней его код и все отлично работало.
Например для текстовой области ячеек:

[vba]
Код
Range("G15:M20").Select
Selection.NumberFormat = "@"
[/vba]

Не вдаваясь в подробности в Делфи
у меня выглядит так:


Otchet - переменная типа вариант, ей я присваивал лист ексэля, для удобства обращения.
Для числового формата вместо "@" будет "0.00"

Автор - beast2040
Дата добавления - 15.12.2014 в 17:33
RAN Дата: Понедельник, 15.12.2014, 18:13 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
В русской локали обычно десятичный разделитель "запятая", а все числа с разделителем "точка" - текст (если не преобразуются в дату).
Выгружайте нужный тип данных.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеВ русской локали обычно десятичный разделитель "запятая", а все числа с разделителем "точка" - текст (если не преобразуются в дату).
Выгружайте нужный тип данных.

Автор - RAN
Дата добавления - 15.12.2014 в 18:13
Karataev Дата: Понедельник, 15.12.2014, 23:10 | Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 1336
Репутация: 533 ±
Замечаний: 0% ±

Excel
в файле -шаблоне можно сделать формат ячеек *текстовый*.
такое используется,чтобы вставляемые данные не искажались
 
Ответить
Сообщениев файле -шаблоне можно сделать формат ячеек *текстовый*.
такое используется,чтобы вставляемые данные не искажались

Автор - Karataev
Дата добавления - 15.12.2014 в 23:10
av1984 Дата: Вторник, 16.12.2014, 10:23 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Спасибо всем большое за ответы. Буду пробовать все советы в деле.
 
Ответить
СообщениеСпасибо всем большое за ответы. Буду пробовать все советы в деле.

Автор - av1984
Дата добавления - 16.12.2014 в 10:23
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!