PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → nombre de mot répété
nombre de mot répété
Started by Stephane Vital OHOU, Jun., 01 2020 1:35 AM - 11 replies
Registered member
146 messages
Popularité : +2 (4 votes)
Posted on June, 01 2020 - 1:35 AM
Salut tous,
J'ai un projet dans lequel il y a un tableau. Dans une colonne, il y a des noms qui sont répétés.
Exemple:
JEAN
PAUL
SILVIIE
JEAN
BEAU
DANS
ERIC
JEAN
PAUL
PAUL
SILVIIE
Il y a t-il un code qui peut me permettre d'afficher dans une zone de saisie, combien de fois un nom est répété ?
Merci

--
Très respectueusement
Registered member
286 messages
Popularité : +24 (28 votes)
Posted on June, 01 2020 - 9:06 AM
Bonjour

A part le fait de passé par un tableau à 2 dimensions ( Mot 1, Compteur 2)
Une boucle sur la chaîne avec espace comme séparateur
Recherche dans le tableau si le mot s'y trouve ....
...
....
Registered member
286 messages
Popularité : +24 (28 votes)
Posted on June, 01 2020 - 9:09 AM
Au temps pour moi
La boucle sur la chaîne doit être remplacée par le parcours du tableau de référence
Registered member
3,883 messages
Popularité : +227 (347 votes)
Posted on June, 01 2020 - 9:43 AM
Bonjour,
Dans un premier temps, parles-tu d'un tableau (type de variable) ou d'un champ table ?

--
Il y a peut être plus simple, mais, ça tourne
Registered member
3,883 messages
Popularité : +227 (347 votes)
Posted on June, 01 2020 - 9:55 AM
Dans un 2° temps, s'il s'agit d'un champ table, comment est rempli ton champ ?

--
Il y a peut être plus simple, mais, ça tourne
Registered member
146 messages
Popularité : +2 (4 votes)
Posted on June, 02 2020 - 12:50 AM
Salut à tous,
mon tableau est un champ table. pour le remplir, je clique sur un bouton et la ligne est ajoutée.

--
Très respectueusement
Registered member
3,883 messages
Popularité : +227 (347 votes)
Posted on June, 02 2020 - 4:52 AM
Stephane Vital OHOU a écrit :
mon tableau est un champ table

Non, une variable ne peut pas être un champ
. pour le remplir, je clique sur un bouton et la ligne est ajoutée

Comment ?
C'est un champ table mémoire, fichier ....

--
Il y a peut être plus simple, mais, ça tourne
Registered member
2,571 messages
Popularité : +222 (260 votes)
Posted on June, 02 2020 - 11:47 AM
@Stephane Vital OHOU: Un parcours de la table et un tableau associatif pourront résoudre ton problème.

taNoms est un tableau associatif d'entier

POUR TOUTE LIGNE de TABLE_SansNom1
taNoms[COL_SansNom1] += 1
FIN

POUR TOUT nQte,sCle de taNoms
Trace(sCle + " : " + nQte)
FIN


--
Cordialement,

Philippe SAINT-BERTIN
Registered member
119 messages
Popularité : +1 (1 vote)
Posted on June, 02 2020 - 12:22 PM
Tu peux utiliser TableOccurence() à la sélection d'une ligne de la table pour afficher dans la champ le nombre le fois que le contenu de la ligne sélectionnée existe dans la table

José
Registered member
3,883 messages
Popularité : +227 (347 votes)
Posted on June, 02 2020 - 1:17 PM
Philippe SB a écrit :
@Stephane Vital OHOU: Un parcours de la table et un tableau associatif pourront résoudre ton problème.

taNoms est un tableau associatif d'entier

POUR TOUTE LIGNE DE TABLE_SansNom1
taNoms[COL_SansNom1] += 1
FIN

POUR TOUT nQte,sCle de taNoms
Trace(sCle + " : " + nQte)
FIN

La première partie du code :
taNoms est un tableau associatif d'entier

taNoms[COL_SansNom1] += 1

Peut même se mettre dans l'affichage d'une ligne.
TableAjouteLigne appelera directement cette partie.

On aura plus qu'à appeler le 2° partie du code pour afficher le résultat (on gagne une boucle)

--
Il y a peut être plus simple, mais, ça tourne
Registered member
2,571 messages
Popularité : +222 (260 votes)
Posted on June, 02 2020 - 6:19 PM
La première partie du code :
taNoms est un tableau associatif d'entier

taNoms[COL_SansNom1] += 1

Peut même se mettre dans l'affichage d'une ligne.
TableAjouteLigne appelera directement cette partie.


Surtout pas, tu vas compter plusieurs fois la même ligne rien qu'en faisant défiler ta table.

--
Cordialement,

Philippe SAINT-BERTIN
Registered member
146 messages
Popularité : +2 (4 votes)
Posted on June, 08 2022 - 3:29 AM
Merci a tous de m'avoir aidé.
Voila le code que j'ai utilisé et adapté a mon projet

taNoms est un tableau associatif d'entier

POUR TOUTE LIGNE de TABLE_SansNom1
taNoms[COL_SansNom1] += 1
FIN

POUR TOUT nQte,sCle de taNoms
Sai_total = (sCle + " : " + nQte)
FIN

--
Très respectueusement