sschupp
Messages postés63Date d'inscriptionmardi 3 juin 2003StatutMembreDernière intervention18 mai 2006 5 oct. 2005 à 11:39
Par dupliquer, j'entend copier une feuille et son
contenu dans une nouvelle feuille. Cela comprend le contenu et la mise
en forme de chaque cellule. Voire mieux, d'une plage donnée (car on
utilise rarement les 64000 colonnes tout de même, donc si on peut
accéler le traitement...).
Après, pour l'objet COM, il a des fonctions attribués, donc pourquoi pas une fonction "Duplicate" (, elle n'existe pas !).
sschupp
Messages postés63Date d'inscriptionmardi 3 juin 2003StatutMembreDernière intervention18 mai 2006 6 oct. 2005 à 11:06
La fonction clone marche à peu près comme ça (je suis en PHP5) :
$wsCible = clone($wsModele);
Où $wsModele est une feuille de mon classeur, et $wsCible son clone.
Pour ajouter une feuille, je fais comme ça :
$wsNew = $workgroup->Worksheets->add();
Où $workgroup est le classeur, qui contient aussi
$wsModele et $wsNew une nouvelle feuille. Pas de problême, je crée une
feuille vide.
Seulement je n'arrive pas à faire en sorte que $wsNew contiennent les informations de $wsCible.
J'ai bien essayé de faire une double boucle pour recopier les informations d'une feuille sur l'autre.
$maxLigne = 30;
$maxCol = 20;
for ($ligne=1;$ligne<$maxLigne;$ligne++) {
for ($col=1;$col<$maxCol;$col++) {
$cellCible = $wsCible->Cells($ligne,$col);
$celNew = $wsNew->Cells($ligne,$col);
$cellNew->value = $cellCible->value;
}
}
Je copie bien le contenu des cellules ($cellNew->value = $cellCible->value;), mais pas la mise en forme (couleur de fond, bordure de cellule).
Ces informations doivent exister quelque part, mais je n'ai pas trouvé
de liste des méthodes et propriétés d'un objet COM-Excel.