Un logiciel de gestion de listes plus souple qu'excel ?

ccciolll

Membre expert
Club iGen
Bonjour,

en râlant (je suis un râleur du quotidien, surtout devant un écran d'oridnateur) ce matin à propos du manque de souplesse d'excel pour gérer / manipuler des listes / bases de données, je me suis dit d'un coup : et si au lieu de râler j'essayais de savoir s'il existerait pas un logiciel en osX ou X11 qui me permettrait de faire ce que j'ai à faire ?

Alors voilà, je pose la question, tiens !

Je vous explique ce qui me manque dans excel, et pitête que vous saurez me dire "bah, t'es con, ya bidule-truc qui fait ça depuis longtemps, c'est super facile"

Dans excel, donc, j'ai souvent à manipuler des bases de données que je reçois pour le mettre sous une autre forme.
Exemple typique : on m'envoie une BDD possédant une colonne code postal + ville et je souhaite, moi, en faire une colonne code postal et une autre colonne ville.
Bon, pour l'instant je vais le coller dans Xpress (heureusement qu'il y a Xpress !) et je lui demande de rechercher/remplacer le caractère "espace" par le caractère "tabulation, je recolle dans excel, et voilà 2 belles colonnes (à part qu'avant ça il m'a fallu traquer les villes possédant un espace dans leur nom).
Bon, et bien j'aimerais que mon logiciel de liste, je puisse lui dire,
dans cette colonne, si tu vois un espace, tu le supprimes et tu colles le reste dans la colonne vide d'à côté.

Et puis tant qu'on y est, l'inverse aussi, par exemple justement pour les villes possédant un espace dans leur nom, après avoir tout ventilé, reprendre les colonnes des villes et lui dire : tout le contenu qui est là, mon ptit, eh ben tu le mets en une seule colonne avec un espace entre chque contenu (si contenu il y a).

Autre chose encore que excel ne sait pas faire : rechercher selon une condition de placement.
Exemple, les bases de données pourries où il y a de temps en temps (ou même tout le temps, c'est aussi chiant) un espace au début ou à la fin du champ… Bon, eh ben, rebelote, je le fous dans Xpress, et je dis remplacer "tab+espace" ou "espace+tab" par "tab-tout-seul" et je ré-injecte.
Mais quelle perte de temps. Alors que si je pouvais dire "dans cette colonne, supprimer les espaces (ou tel caractère) A CONDITION qu'il soit au début ou à la fin du champ".

Et puis, cerise sur la gâteau. Là, même Xpress baisse les bras : pouvoir rechercher avec des caractères non-conditionnés.
Je m'explique : admettons que j'ai une colonne des codes postaux qui, par malheur, a perdu ses zéros du début (par exemple 02150 devient 2150, ça arrive régulièrement quand des mauvaises manip précédentes ont laissé croire à excel que la colonne contenait des nombres, il supprime donc les zéros "inutiles"). Bon, eh ben je voudrais pouvoir lui dire "quand tu trouves **** (càd 4 caractères) tu remplaces **** par 0**** (càd tu ajoutes un zéro devant)".

Ça permettrait d'ailleurs, pour les manips que j'ai présentées tout à l'heure, de dire carrément "si tu trouves "***** *" (soit 5 caractères (un CP)+un espace+un autre caractère(le début du nom de la ville)) tu remplaces par "*****" + "*…" (soit tu coupes après les 5 caractères et tu fourgues le reste dans la colonne d'â côté)

Bon ça je peux le faire via Xdata (magnifique extension de Xpress mais très coûteuse), mais ça me demande une programmation et puis passer du temps à ça alors qu'un outil rechercher-remplacer bien achalandé pourrait le faire…

Alors, je suis d'accord, excel n'est PAS un logicile de gestion de liste / BDD, c'est un tableur (et pour cette fonction il me convient bien), mais c'est tout ce que j'ai POUR L'INSTANT sous la main pour manipuler des listes.

Sauf que, bien sûr, il y aura un logiciel pour me sauver et que vous allez me le présenter avec fierté.

pas vrai ?
 
Excel sait faire, au moins, 2 de tes problèmes :
- pour séparer code postal + nom de ville tu sélectionnes la colonne + Données + Convertir + largeur fixe. Et là tu as deux colonnes, l'une avec le code postal et l'autre avec la ville.
- pour les codes postaux où le 0 disparaît, il faut que ta colonne soit en format Texte pour que les 0 soient pris en compte.
Pour le reste... Je sais pas :hein:
 
  • J’aime
Réactions: ccciolll
Excel sait faire, au moins, 2 de tes problèmes :
- pour séparer code postal + nom de ville tu sélectionnes la colonne + Données + Convertir + largeur fixe. Et là tu as deux colonnes, l'une avec le code postal et l'autre avec la ville.
- pour les codes postaux où le 0 disparaît, il faut que ta colonne soit en format Texte pour que les 0 soient pris en compte.
Pour le reste... Je sais pas :hein:

pour la première nouvelle, je viens de le tester !
en fait c'est l'outil (enfin ça ressemble, je suis pas un expert) qui s'affiche quand on importe des fichiers qu'il ne reconnait pas.
Je ne savais pas qu'on pouvait l'utiliser comme ça.
Merci bien !

Pour les codes postaux et le 0 qui disparait, je m'étais dit que je devais préciser que c'était qu'un exemple et je l'ai pas fait…
Alors je le fais : ce n'est qu'un exemple, le fond du truc c'est de pouvoir faire une recherche sur des caractères non-définis. C'est vrai que mon exemple était pas vraiment bon car on peut le solutionner autrement.
 
Bon, alors d'abord 1) les solutions internes à Excel et 2) externes :

1) Pour les codes postaux ou autres dont le zéro de première position disparaît : tu sélectionne la colonne, tu fais "Format -> cellule -> format personnalisé", et, pour un code postal, tu met comme format "0####". Tu adaptes le nombre de zéros et le nombre de # aux possibilités de zéro à gauche (un seul pour un code postal, tu peux en avoir plus dans d'autres circonstances. De plus, ça reste une valeur numérique, et non un texte comme ça.

Ça règle donc deux de tes problèmes (dont celui que XPress ne sait pas régler).

2) Ceci fait, tu sauves ton fichier en mode texte séparé tab, tu l'ouvre avec Word, et là tu peux faire des recherches remplacement avec Tab (^t), retour chariot (^p) et plein d'autres (recherches sur les caractères spéciaux). Tu sauve dans Word, et tu rouvre dans Excel avant de le re-sauver en XLS pour pouvoir profiter des fonctions de bases de données d'Excel.


EDIT : Pour les espaces en début et fin de mot, il y a aussi une solution interne à Excel : La fonction "SUPPRESPACE()" (elle supprime tous les espaces d'une cellule sauf les espaces simples entre les mots). tu met une colonne vide à droite de celle comportant les textes à épurer. dans la première cellule en haut, tu entre "=SUPPRESPACE(LC-1)" (pas textuellement, tu désigne à la souris la cellule à gauche contenant la valeur à épurer), et tu recopies la formule vers le bas autant que nécessaire. Ensuite, tu sélectionne toutes les cellules de la colonne contenant la formule, -> Copier -> Collage spécial valeurs, et tu n'as plus qu'à supprimer la colonne originale.

L'est pas belle, la vie ?
 
petite remarque : comme il s'agit d'un format, cela n'affecte pas les données réelles donc lors de l'export, c'est comme si on n'avait rien fait... non ?
 
Tu as sûrement raison, mais j'ai toujours en tête que cccioll est un utilisateur de XPress qui importe des données tabulaires avec l'intention de les traiter dans un document XPress (cf XDATA)
Dans cette éventualité, un traitement avec génération d'une colonne supp^lémentaire avec une formule du genre (E1 contient le cp de 4 chiffres) devrait convenir :

=si(E1<10000;"0"&E1;E1)

En ce qui concerne les autres traitements (genre CP suivi d'unes pace et de lettres...) cela devient un peu plus d&#233;licat car la fonction estnum se comporte &#233;trangement sur les extraction : estnum(1234) renvoie faux quand 1234 est le r&#233;sultat de gauche(E1;4) o&#249; E1 est une chaine alphanum&#233;rique.
Bref, faut regarder de plus pr&#232;s.
 
J'ai pas test&#233;, mais il me semble que ton truc ne devrait pas marcher. Soit E1 est en texte, et <10000 ne marche pas, soit E1 est num&#233;rique, et c'est la concat&#233;nation qui ne doit pas marcher.
 
J'ai pas test&#233;, mais il me semble que ton truc ne devrait pas marcher. Soit E1 est en texte, et <10000 ne marche pas, soit E1 est num&#233;rique, et c'est la concat&#233;nation qui ne doit pas marcher.
si, si... &#231;a marche.
Quel que soit le format d'origine (texte ou num) la cellule de destination sera au type texte.

L&#224; o&#249; &#231;a ne marche pas c'est lorsque le nombre a &#233;t&#233; pr&#233;c&#233;d&#233; volontairement d'un caract&#232;re ' pour forcer l'affichage du premier 0
 
Waouh, je suis dépassé par vos discussions, là.
Enfin, ce que je peux en dire c'est que effectivement, les espaces doivent disparaître pour de bon car en effet, le but de ces BDD est l'import en txt+tab via xdata.
Que le problème de 0 sur les codes postaux (juste celui-là), la meilleure solution pour moi reste de définir la colonne comme une colonne texte ainsi il garde le 0; car s'il s'agit d'ajouter un 0 devant les trucs qui n'ont que 4 caractères ça va aussi transformer les codes postaux belges qu n'ont que 4 chiffres, et puis c'est pas vraiment le problème, c'était plutôt une question sur "comment introduire des caractères non-définis dans l'outil recherche".
Et pour finir, l'ouverture dans word m'intéresse peu puisque si c'est pour tripoter la bdd, je le fais direct dans Xpress. Ça ne me prend pas beaucoup de temps, c'est juste que du coup, en fonction des manOeuvres, je passe parfois 10 fois de xpress à excel pour tripatouiller la bdd et si je fpouvais tout faire dans un seul logiciel ce serait plus simple.
Je sais déjà A PEU PRES résoudre tous mes problèmes de manip de bdd, ce que je recherche c'est s'il existe un logiciel dans lequel je pourrais tout faire sans sauter de l'un à l'autre.
 
Il y a une diff&#233;rence fondamentale entre Word et Xpress, c'est que Word peut ouvrir directement des documents Excel. Toutefois, vu l'ensemble des probl&#232;mes auxquels tu es confront&#233;, la meilleure solution serait de tout r&#233;gler directement dans Excel. Une ou deux macro simples ins&#233;r&#233;es dans le classeur de Macro compl&#233;mentaires (pour &#234;tre toujours disponibles), et tu peux tout traiter en une seule op&#233;ration !
 
Oui, word ouvre peut-être des fichiers excel, mais j'ai constaté qu'avec Xpress 6 et excel 2004, on peut passer de l'un à l'autre très facilement.
Dans excel, je peux selectionner, copier, puis aller coller dans xpress et ça me fait un texte avec tabulations.
(ce qui n'était pas possible dans certains vieux xpress et vieux excel, on ne pouvait pas copier dans excel et copier dans xpress)
Ensuite le collage depuis xpress vers excel a toujours bien fonctionné.

Donc comme je connais bien xpress et que de toutes façons il est toujours ouvert, c'est plus simple pour moi que d'aller dans word.