[RESOLU] PHPEXCEL impossible de lire le contenu d'une ligne avec form

Eléphant du PHP | 62 Messages

06 mai 2013, 11:43

Bonjour,

Sur phpexcel je peu tout lire sur toutes les colonnes sauf la dernière colonne AD, je bloque dessue car je ne sais pas lire une colonne qui contient une formule.

Le fichier Excel est un fichier fournit par mon fournisseur, donc je suis obliger de l’utilisé comme il est.

La colonne AD contient la description
Exemple de la ligne 3 Colonne AD : *HDMI HighSpeed et compatibilité HDCP.

Mais quand j’ouvre le fichier excel sur mon pc et que je fais bouton droit pour copier le texte (juste pour tester car je ne travail que sur php), magie j’ai la description complète (je ne sais pas d’où elle sort lol), mais ca m’intéresse beaucoup.

Voir le résultat de la copie


"*HDMI HighSpeed et compatibilité HDCP
*Vidéo HD non compressées jusqu'à 1080p @ 60Hz à 100m
*Transfers video, audio et HDCP sur un cordon RJ45 !
*Audio TrueHD, DTS-HD Master Audio
*Supporte la 3D (avec périphériques 3D)

Emetteur
entrée HDMI
sortie "

Les colonnes contiennent la même formule sauf A3 qui change : A3 = ligne 3, A4 = ligne 4 etc…
=RECHERCHEV(A3;'\\SRV004\Doc_CUC\INFORMATIQUE\Scripts\[BaseFTPProduit.xlsm]Caracteristiques'!A$7:B$15000;2;FAUX)

Mon echo donne ceci
// =VLOOKUP(A3,#REF!,2,FALSE)
require_once( $this->moduleDir.'PHPExcel.php' );
require_once( $this->moduleDir.'PHPExcel/Calculation.php' );
require_once( $this->moduleDir.'PHPExcel/Cell.php' );
$cacheMethod = PHPExcel_CachedObjectStorageFactory:: cache_to_phpTemp;
$cacheSettings = array('memoryCacheSize' => '16MB');
PHPExcel_Settings::setCacheStorageMethod($cacheMethod, $cacheSettings);
$DATAPHPExcel = PHPExcel_IOFactory::load($filename);
$loadedSheetNames = $DATAPHPExcel->getSheetNames();
$DATAPHPExcel->setActiveSheetIndex(0);
$ColExcel = $DATAPHPExcel->getActiveSheet()->toArray(null,false,false,true);
$data =array();
$data['UPdate'] =  date( 'Y-m-d H:i:s') ;
$nbligne = count( $ColExcel );

for( $i = 1 ; $i <= $nbligne ; $i++ )
{
	if ($ColExcel[$i]['R'] != '') 
	{
		$data['1'] = $ColExcel[$i]['B']; // ok
		$data['2'] = $ColExcel[$i]['D']; // OK
		$data['3'] = $ColExcel[$i]['E']; // OK
		$data['4'] = $ColExcel[$i]['C']; // OK
		$data['5'] = $ColExcel[$i]['G']; // OK
		$data['6'] = $ColExcel[$i]['M']; // OK
		$data['8'] = $ColExcel[$i]['Q']; // OK
		$data['9'] = $ColExcel[$i]['S']; // OK
		$data['11'] = $ColExcel[$i]['U']; // OK
		
	//	etc..
	//	$data['description'] = $ColExcel[$i]['AD']; // Impossible à récupérer l'erreur // =VLOOKUP(A3,#REF!,2,FALSE)

		echo ($ColExcel[$i]['AD']).	'<br>'; // pour voir le resultat						
	}
}
Merci d'avance

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

07 mai 2013, 19:46

Bonjour,

La fonction RechercheV fait référence à une feuille de classeur qui se trouve dans un chemin UNC de réseau local qui est : \\SRV004\Doc_CUC\INFORMATIQUE\Scripts\[BaseFTPProduit.xlsm]Caracteristiques
et l'erreur affiche le code #REF! qui veut dire que la liaison vers la référence est impossible.

Voilà.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphant du PHP | 62 Messages

08 mai 2013, 12:09

Merci

Savez vous comment y remédié, au pire récupérer la description qui ce trouve est évité la lecture de la formule.

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

08 mai 2013, 15:27

pour ça il faut disposer du classeur BaseFTPProduit.xlsm car les données utiles sont apparemment dans la feuille Caracteristiques

Est-ce que ce classeur se trouve dans ton ordinateur ou celui de ton client?
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphant du PHP | 62 Messages

08 mai 2013, 15:41

salut,

merci pour ton aides

je viens de d'envoyer le lien du fichier xls par MP, ce fichier est fournie par mon fournisseur, donc je n'est aucun autre fichier.

Merci d'avance

Eléphant du PHP | 62 Messages

08 mai 2013, 15:49

Je viens juste de recevoir un email du fournisseur qui me dit que des lundi un nouveau fichier sera transmis sans la formule, trop cool vraiment une semaine de galère.
1000 mercis à toi