Bonjour,
J'ai un fichier excel à plusieurs colonnes que je cherche à réimporter.
L'une des colonnes contient une concaténation de plusieurs sous bloc comme ceci avec un point virgule suivi du "alt 0010" comme séparateur . Pour séparer les divers infos des sous bloc j'utilise le pipe | :
Sur excel , un utilisateur a ajouté au préalable un retour chariot après le point virgule pour une question de visibilité sur son tableur .blabla1|statut1|numeropersonne1;blabla2|statut2|numeropersonne2;blabla3|statut3|numeropersonne3
Une fois mon fichier Excel rapatrié dans SAS je lance une macro qui va me dé concaténé autant de fois qu'il y a de sous bloc. Si j'ai 1 point virgule je sais que j'aurais 2 lignes , 2 points virgules j'aurais 3 lignes etc ...
Problème , lors de l'éclatement après le ";" il y a un retour chariot en début de chaine.
Après plusieurs contrôle :
* La fonction rank(monchamp,1) me donne 13 pour me dire que c'est un caractère ASCII de type 13.
* de manière textuel je peut supprimer le retour chariot avec un substr à partir de la 4ème position de la chaine
* en comptage sur la chaine SAS me dit que le retour chariot fait l'équivalent de 2 caractères ...
Bref vous l'aurez compris je cherche une solution "propre" pour jarter le caractère "retour chariot".
Merci de m'aiguiller
Partager