Recherche de données dans un document texte
Résolu
Annex
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je souhaite automatiser une tâche à l'aide d'un programme, mais je n'ai aucune idée du langage de programmation à utiliser et de la manière de procéder.
Il s'agit d'une recherche de données dans un document texte.
Voici ce que le programme doit faire :
1. Rechercher une valeur numérique situé entre 2 caractères (fixe).
2. L'enregistrer dans une variable.
3. Mettre la valeur 0 à la place.
4. Rechercher une valeur numérique situé entre 2 caractères (fixe).
5. L'enregistrer dans une variable.
6. Additionner les variables.
7. Mettre la valeur obtenue dans le deuxième emplacement.
8. Répéter l'opération tant que le première emplacement est différent de 0.
Exemple :
1. *32/14"
2. x = 32
3. *0/14"
4. *0/14"
5. y = 14
6. z = x + y
7. *0/46"
8. Réitérer pour les autres données : *3/66", *21/9", *4/23",...
Voila si vous avez besoin de plus d'informations n'hésiter pas à le demander, j'espère que vous pourrez m'aider, déjà pour le langage à utiliser, et merci d'avance de vos solutions.
Annex
Je souhaite automatiser une tâche à l'aide d'un programme, mais je n'ai aucune idée du langage de programmation à utiliser et de la manière de procéder.
Il s'agit d'une recherche de données dans un document texte.
Voici ce que le programme doit faire :
1. Rechercher une valeur numérique situé entre 2 caractères (fixe).
2. L'enregistrer dans une variable.
3. Mettre la valeur 0 à la place.
4. Rechercher une valeur numérique situé entre 2 caractères (fixe).
5. L'enregistrer dans une variable.
6. Additionner les variables.
7. Mettre la valeur obtenue dans le deuxième emplacement.
8. Répéter l'opération tant que le première emplacement est différent de 0.
Exemple :
1. *32/14"
2. x = 32
3. *0/14"
4. *0/14"
5. y = 14
6. z = x + y
7. *0/46"
8. Réitérer pour les autres données : *3/66", *21/9", *4/23",...
Voila si vous avez besoin de plus d'informations n'hésiter pas à le demander, j'espère que vous pourrez m'aider, déjà pour le langage à utiliser, et merci d'avance de vos solutions.
Annex
A voir également:
- Recherche de données dans un document texte
- Comment reduire la taille d'un document - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
- Comment supprimer une page dans un document word - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Signer un document word - Guide
2 réponses
Bonjour,
Tu copies/colles ton texte dans excel.
Dans B1 tu saisis:
="*0/"&STXT(A1;2;CHERCHE("/";A1)-2)+STXT(A1;CHERCHE("/";A1)+1;NBCAR(A1)-CHERCHE("/";A1)-1)&""""
que tu recopies vers le bas
eric
Tu copies/colles ton texte dans excel.
Dans B1 tu saisis:
="*0/"&STXT(A1;2;CHERCHE("/";A1)-2)+STXT(A1;CHERCHE("/";A1)+1;NBCAR(A1)-CHERCHE("/";A1)-1)&""""
que tu recopies vers le bas
eric
On va décomposer alors pour avoir une formule plus simple.
en B1 position de * : =CHERCHE("~*";A1)
~* car * est un caractère générique qu'on ne peut rechercher, pour le rechercher il le faiire précéder de ~
en C1 position de / : =CHERCHE("/";A1)
en D1 la chaine transformée : =GAUCHE(A1;B1)&"0/"&STXT(A1;B1+1;C1-B1-1)+STXT(A1;C1+1;NBCAR(A1)-C1-1)&""""
"""" car " indique début et fin de chaine, pour l'ajouter il faut le doubler donc "" et comme c'est une chaine il faut l'encadrer par des " " => """"
eric
en B1 position de * : =CHERCHE("~*";A1)
~* car * est un caractère générique qu'on ne peut rechercher, pour le rechercher il le faiire précéder de ~
en C1 position de / : =CHERCHE("/";A1)
en D1 la chaine transformée : =GAUCHE(A1;B1)&"0/"&STXT(A1;B1+1;C1-B1-1)+STXT(A1;C1+1;NBCAR(A1)-C1-1)&""""
"""" car " indique début et fin de chaine, pour l'ajouter il faut le doubler donc "" et comme c'est une chaine il faut l'encadrer par des " " => """"
eric
J'ai malheureusement pas su utiliser ton code convenablement.
="*0/"&STXT(A1;2;CHERCHE("/";A1)-2)+STXT(A1;CHERCHE("/";A1)+1;NBCAR(A1)-CHERCHE("/";A1)-1)&""""
Le caractère "*" n'est pas utilisé dans ton code, est-ce normal ?
En fin de code, il y a """" ne devrait-il pas y en avoir que 3 ?
Si tu avais la possibilité d'expliquer quelque peu le code, ça serait très sympathique de ta part.
Merci d'avance.
Annex
Exemple :
hfgkd,hdgskl,djk*7/34"
hatfs,aoh*91/43"
wtarajms,kaojsga,hatfa*16/6"
Voila, je pense avoir tout dit cette fois.
Merci à ceux qui m'aide et un bon week end à chacun.
Annex