Ver Mensaje Individual
  #4 (permalink)  
Antiguo 06/03/2014, 06:58
gentleman
 
Fecha de Ingreso: marzo-2014
Mensajes: 2
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: PHPExcel: Lectura fichero XLS de muchos registros lenta

ocp001a, el fichero no puedo subirlo en xlsx, la única opción que me dan es xls sin excepciones y tarda en procesarlo, no en subirlo.

hhs, me ha servido de ayuda tu respuesta, en concreto la instrucción $objReader->setLoadSheetsOnly que me ha permitido cargar sólo las páginas que necesito.

Tengo un nuevo problema, ya que el fichero XLS es generado automáticamente por otros Excel conteniendo una serie de información (nombre, apellidos, provincia, etc) y todo esto no es modificable por el usuario que sube el Excel a la web. De tal forma que un usuario subirá un XLS con su nombre y su provincia MADRID, pero otro que esté en Barcelona lo subirá con su provincia correspondiente.

El Excel sólo tiene una hoja que me sirve, que es la primera, las demás son MADRID, BARCELONA, SEVILLA, MURCIA, ETC... así con todas las provincias y cada hoja contiene el calendario laboral de dicha provincia con sus respectivos festivos.

Aquí el problema:

Si yo cargo sólo la hoja que necesito me da un error call to a member function cellexists() on a non-object porque no puede ver las hojas referenciadas (cabe decir que en la hoja que necesito hay una celda que hace referencia a TODAS las hojas de provincias buscando la provincia correspondiente) por lo tanto aunque el usuario sea de Madrid, de Barcelona o de cualquier provincia, SIEMPRE hará referencia a todas las hojas, por lo que no me sirve cargar sólo la hoja principal y la del calendario correspondiente, me sale el mismo error.

Comprobaciones:

He probado a modificar la fórmula de la hoja principal del Excel donde hace referencia a todos los calendarios, dejando sólo la búsqueda para la hoja de Madrid (subo un usuario de Madrid), de esta forma sólo tengo que cargar en PHP la hoja principal y MADRID y funciona todo correctamente y bastante rápido. Claro que si sólo cargo la principal y MADRID para un usuario de Madrid da error si no modifico la formula del Excel...

El Excel origen está descartado que pueda modificar absolutamente nada, tengo que buscarme la vida por mi cuenta.

No se me ocurre nada...

Última edición por gentleman; 06/03/2014 a las 07:01 Razón: faltaban datos