Pour revenir dans le sujet:
tu parses ton fichier SYLK ligne poar ligne (avec fgets() par exemple), si la ligne commence par "C", tu l'"explode()" avec ";".
Pour chacun des indices du tableau obtenu, tu testes:
commence par "X"? => coordonnée de la colonne
commence par "Y"? => coordonnée de la ligne
commence par "K"? => valeur
Tu stockes les valeurs dans un tableau de type:
$tableau = array(
"ligne1" => array("colonne1" => "valeur", "colonne2" => "valeur", ...),
"ligne2" => array("colonne1" => "valeur", "colonne2" => "valeur", ...),
...
)
Tu tries ton tableau par les clés.
Et puis, ligne par ligne, tu réécris dans un fichier CSV.