Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
vlad-55
12 / 12 / 4
Регистрация: 21.02.2009
Сообщений: 1,746
#1

Как справиться с Excel? - PHP

04.10.2012, 00:46. Просмотров 654. Ответов 6
Метки нет (Все метки)

Файл в формате csv создается с помощью РНР-скрипта (разделитель точка с запятой или табуляция – пробовал и так, и эдак). Проблема в том, что программа формирует артикулы товаров, некоторые из которых могут иметь вот такой вид:
7.500
000428

Если открыть созданный файл текстовым редактором, то можно убедиться в том, что все эти артикулы записаны верно. Но если открыть программой Excel, то упомянутые примеры воспроизводятся так:
7.5
428

По умолчанию при открытии получается формат ячеек «Общий». Изменение его на «Текстовый» ничего не дает. И даже если просто открыть файл через Microsoft Excel и затем сохранить его в этом же файле, то нули уже оказываются потерянными! И если сохранить файл в формате xls, то потерянные нули не восстанавливаются.

Каким образом можно создать файл средствами РНР так, чтобы в дальнейшем работать с ним как с книгой Microsoft Excel?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2012, 00:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как справиться с Excel? (PHP):

Не могу справиться с простым вроде бы заданием
Есть такое задание: Вот до чего дошел я: <html> <head> </head> <body> <form action="LettersCounter.php" method="post"> ...

COM & PHP. Пожалуйста, помогите с Word`ом справиться
Добрый всем день. Извините за беспокойство, но у меня проблема - не могу её решить... Итак рабочий код: $word = new...

Не могу справиться с установкой imagick для php на денвер
Здравствуйте, никак не могу победить проблему Стоит Win 7 64 бита, денвер, на нем обновил php с 5.3 до 5.5, качал с php.net, в...

Я новичок в PHP и мне дали задание,а я справиться не могу никак
Есть сайт который выдергивает данные из базы данных при обновлений страницы, а именно мэйлы и рассылает всем на почту сообщение. ...

Как вычитать Excel
я делаю так:$fileExcel = PHPExcel_IOFactory::load($_FILES); foreach ( $fileExcel->getWorksheetIterator() as $worksheet) { //...

Как зациклить вставку значений из Excel в БД
Добрый день, С php знаком очень мало и с таблицами практически не работаю, но есть задача заносить данные из файла Excel в БД Понимаю,...

6
Vovan-VE
13148 / 6531 / 1038
Регистрация: 10.01.2008
Сообщений: 15,071
04.10.2012, 17:39 #2
А значения ячеек записываете в CSV в кавычках или без?

В Excel можно открыть файл, как текстовый, чтобы в дополнительном диалоге настроить разделители, ограничители строк и, возможно, форматы данных.
1
vlad-55
12 / 12 / 4
Регистрация: 21.02.2009
Сообщений: 1,746
04.10.2012, 18:31  [ТС] #3
Цитата Сообщение от Vovan-VE Посмотреть сообщение
А значения ячеек записываете в CSV в кавычках или без?
Файл формируется как текстовый самым обычным образом, без кавычек.

С кавычками Microsoft Excel воспроизводит число верно - я этого приема не знал - спасибо!

Цитата Сообщение от Vovan-VE Посмотреть сообщение
В Excel можно открыть файл, как текстовый, чтобы в дополнительном диалоге настроить разделители, ограничители строк и, возможно, форматы данных.
По умолчанию все ячейки сразу после открытия прописаны в формате "Общий" и в нем числа обрабатываются так, словно они формате "Числовой". Потом формат изменить можно, но уже поздно - нули потеряны навсегда.

А такой настройки, чтобы по умолчанию ячейки открывались в режиме "Текстовый", я не обнаружил.
Разве там есть такая опция?
0
Vovan-VE
13148 / 6531 / 1038
Регистрация: 10.01.2008
Сообщений: 15,071
04.10.2012, 18:37 #4
Цитата Сообщение от vlad-55 Посмотреть сообщение
А такой настройки, чтобы по умолчанию ячейки открывались в режиме "Текстовый", я не обнаружил.
Разве там есть такая опция?
В диалоге выбора файла выбираете тип "Текстовый файл" - после открытия должен вылезти диалог с параметрами. Так точно было в старых MS офисах, включая 2003й.
1
vlad-55
12 / 12 / 4
Регистрация: 21.02.2009
Сообщений: 1,746
04.10.2012, 18:52  [ТС] #5
Цитата Сообщение от Vovan-VE Посмотреть сообщение
В диалоге выбора файла выбираете тип "Текстовый файл" - после открытия должен вылезти диалог с параметрами. Так точно было в старых MS офисах, включая 2003й.
Как раз 2003 я и использую. Файл / Открыть - и дальше файл просто откроется (скриншот).
А где же здесь диалог с параметрами?
0
Миниатюры
Как справиться с Excel?  
Vovan-VE
13148 / 6531 / 1038
Регистрация: 10.01.2008
Сообщений: 15,071
04.10.2012, 19:08 #6
Цитата Сообщение от vlad-55 Посмотреть сообщение
Файл / Открыть - и дальше файл просто откроется (скриншот).
А кто будет делать это: ?
Цитата Сообщение от Vovan-VE Посмотреть сообщение
В диалоге выбора файла выбираете тип "Текстовый файл"
1
vlad-55
12 / 12 / 4
Регистрация: 21.02.2009
Сообщений: 1,746
04.10.2012, 19:59  [ТС] #7
Надо же, получилось! А я даже сомневался...

Спасибо!
0
04.10.2012, 19:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.10.2012, 19:59
Привет! Вот еще темы с решениями:

Как нарисовать таблицу по данным из Excel
Всем привет! как нарисовать такую таблицу с полями в моем случае только данные в ячейки exсel подставляются? $text =...

Как перенести данные формы в excel?
Нужно сделать так, что б данные формы падали в заготовленные места в шаблонной таблице, и готовый файл .xlsx падал пользователю в закачки,...

Как привязать макрос к excel в php?
Здравствуйте. Есть задача - сгенерировать на сервере файл excel (один лист), но с добавлением макроса. Макрос анализирует этот лист и...

Как с помощью PHP вытянуть данные из Excel?
ПРивет! Может кто сталкивался с такой проблемой: Есть обычный excel'файл. При помощи пхп нужно выцарапать данные из всех ячеек и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru