[Résolu] compter une chaîne de caractère à une place précise
Modérateur : Vilains modOOs
Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
-
juju0209
- Fraîchement OOthentifié
- Messages : 9
- Inscription : 02 sept. 2018 17:41
[Résolu] compter une chaîne de caractère à une place précise
Bonjour à tous,
Je cherche en vain à rédiger une formule qui me donnerait le nombre de cellule contenant les chiffres représentés par des xx dans une chaîne de caractères se présentant ainsi : YY/XX/YY représentant une date. Vous l'aurez compris j'ai d'un côté une colonne contenant de très nombreuses dates et de l'autre un tableau représentant les 12 mois de l'année. Je veux savoir combien d'analyses ont été réalisées mois par mois. sachant qu'il faut bien compter les XX car rechercher simplement 06 par exemple n'est pas possible car 06/02/18 contient bien 06 mais il s'agit du jour et non du mois ....
J'espère m'être bien exprimé. Je précise que j'ai aussi cherché à compter quelque chose qui serait du genre "??/06/??" mais je ne maîtrise pas les "jokers" dans les formules (mais je suis preneur pour la suite).
D'avance merci à tous !
Je cherche en vain à rédiger une formule qui me donnerait le nombre de cellule contenant les chiffres représentés par des xx dans une chaîne de caractères se présentant ainsi : YY/XX/YY représentant une date. Vous l'aurez compris j'ai d'un côté une colonne contenant de très nombreuses dates et de l'autre un tableau représentant les 12 mois de l'année. Je veux savoir combien d'analyses ont été réalisées mois par mois. sachant qu'il faut bien compter les XX car rechercher simplement 06 par exemple n'est pas possible car 06/02/18 contient bien 06 mais il s'agit du jour et non du mois ....
J'espère m'être bien exprimé. Je précise que j'ai aussi cherché à compter quelque chose qui serait du genre "??/06/??" mais je ne maîtrise pas les "jokers" dans les formules (mais je suis preneur pour la suite).
D'avance merci à tous !
Dernière modification par micmac le 03 sept. 2018 18:44, modifié 1 fois.
Raison : Balisage dans le titre du premier message
Raison : Balisage dans le titre du premier message
Apache Openoffice 4.1.5 avec Windows 7
-
micmac
- RespOOnsable forum

- Messages : 10071
- Inscription : 28 août 2010 08:45
Re: compter une chaîne de caractère à une place bien précise
Bonjour et bienvenue,
Vous devez préciser la version exacte d'OpenOffice et le système sur lequel il tourne.
Voici quelques exemples : AOO 4.1.5 sous Windows XP SP3, Vista SP2, Win7 SP1, Win 8.1, Win 10, Mac PPC 10.5.8, MacOS 10.13.6, , Ubuntu 18.04 ...etc.
Lien direct pour accéder à votre signature
Cordialement
La signature que vous avez indiquée est incomplète.Dans votre signature il y a écrit :Apache Openoffice 4.1.5
Vous devez préciser la version exacte d'OpenOffice et le système sur lequel il tourne.
Voici quelques exemples : AOO 4.1.5 sous Windows XP SP3, Vista SP2, Win7 SP1, Win 8.1, Win 10, Mac PPC 10.5.8, MacOS 10.13.6, , Ubuntu 18.04 ...etc.
Lien direct pour accéder à votre signature
Cordialement
Touche Ctrl de Windows = touche cmd⌘ sur Mac
OpenOffice > Outils > Options sur Windows = OpenOffice > Préférences sur macOS
OpenOffice > Outils > Options sur Windows = OpenOffice > Préférences sur macOS
-
OOotremer971
- ManitOOu

- Messages : 2791
- Inscription : 16 avr. 2010 13:31
Re: compter une chaîne de caractère à une place bien précise
Bonjour,
:
@+
Alors pourquoi ne pas simplement se servir de la fonction MOIS(), justement parce qu’elle sait différencier le mois du jour ou de l'année lorsqu’on lui passe une date en paramètrejuju0209 a écrit :Je veux savoir combien d'analyses ont été réalisées mois par mois. sachant qu'il faut bien compter les XX car rechercher simplement 06 par exemple n'est pas possible car 06/02/18 contient bien 06 mais il s'agit du jour et non du mois ....
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian GNU/Linux 12 (bookworm)
AOO
LibreOffice
Debian GNU/Linux 12 (bookworm)
-
juju0209
- Fraîchement OOthentifié
- Messages : 9
- Inscription : 02 sept. 2018 17:41
Re: compter une chaîne de caractère à une place bien précise
Bonjour OOotremer971,
Alors la réponse à ta question pourquoi ne pas choisir MOIS() ..... heu ben ... heu parce que je ne la connaissais pas .... donc ceci explique cela !
Un grand merci à toi pour cette réponse qui apporte la solution à mon premier problème MAIS, cela ne fonctionne que si la cellule est activée en date (pour info à ceux qui liront le sujet plus tard).
Toutefois, comment mon problème aurait-il pu être solutionné si toutefois (j'anticipe mes besoins futurs) il avait fallu compter le nombre de cellules où une chaîne de caractères apparaît (selon un formalise semblable dans toutes les cellules) à savoir XXX/XX??XXXX. Les X sont des caractères qui changent à chaque fois tout comme les caractères avec des points d'interrogation mais ma comptabilisation ne portera que sur les ? dont la position sera toujours la même. Ainsi combien de fois dans une plage de cellules le critère XXX/XXAKXXXX apparaît. Ainsi il faudra compter à la fois ABV/Z2AK1234 ET AZV/T2AK5555 où le seul point commun est la présence de AK à la même place ....
Si toutefois aucune formule directe n'est possible je pense recourir à STXT dans une cellule puis compter mais .... s'il y a plus simple ... genre faire la somme de XXX/XXAKXXXX où les X seraient remplacés par "un joker" plus rapide je pense.
Voilà j'espère que je suis clair (et pas trop compliqué) dans ma demande mais j'en ai besoin pour la suite... lol
Alors la réponse à ta question pourquoi ne pas choisir MOIS() ..... heu ben ... heu parce que je ne la connaissais pas .... donc ceci explique cela !
Un grand merci à toi pour cette réponse qui apporte la solution à mon premier problème MAIS, cela ne fonctionne que si la cellule est activée en date (pour info à ceux qui liront le sujet plus tard).
Toutefois, comment mon problème aurait-il pu être solutionné si toutefois (j'anticipe mes besoins futurs) il avait fallu compter le nombre de cellules où une chaîne de caractères apparaît (selon un formalise semblable dans toutes les cellules) à savoir XXX/XX??XXXX. Les X sont des caractères qui changent à chaque fois tout comme les caractères avec des points d'interrogation mais ma comptabilisation ne portera que sur les ? dont la position sera toujours la même. Ainsi combien de fois dans une plage de cellules le critère XXX/XXAKXXXX apparaît. Ainsi il faudra compter à la fois ABV/Z2AK1234 ET AZV/T2AK5555 où le seul point commun est la présence de AK à la même place ....
Si toutefois aucune formule directe n'est possible je pense recourir à STXT dans une cellule puis compter mais .... s'il y a plus simple ... genre faire la somme de XXX/XXAKXXXX où les X seraient remplacés par "un joker" plus rapide je pense.
Voilà j'espère que je suis clair (et pas trop compliqué) dans ma demande mais j'en ai besoin pour la suite... lol
Apache Openoffice 4.1.5 avec Windows 7
-
OOotremer971
- ManitOOu

- Messages : 2791
- Inscription : 16 avr. 2010 13:31
Re: compter une chaîne de caractère à une place bien précise
Les solutions sont nombreuses...trop nombreuses. Par exemple : @+juju0209 a écrit :(selon un formalise semblable dans toutes les cellules) [...]où le seul point commun est la présence de AK à la même place ....
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par OOotremer971 le 02 sept. 2018 19:48, modifié 1 fois.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian GNU/Linux 12 (bookworm)
AOO
LibreOffice
Debian GNU/Linux 12 (bookworm)
-
juju0209
- Fraîchement OOthentifié
- Messages : 9
- Inscription : 02 sept. 2018 17:41
Re: compter une chaîne de caractère à une place bien précise
Re bonjour OOotremer971
Merci à nouveau pour ces réponses ULTRA RAPIDES !!
Je pense que la solution est apportée par ta réponse mais avant de basculer le sujet en terminé je veux prendre le temps de tester et comprendre. Dès que c'est le cas je valide.
Merci à toi pour ta réactivité et l'exemple joint à la réponse !
Je valide dès que j'ai testé en réel (et compris lol ...)
Merci à nouveau pour ces réponses ULTRA RAPIDES !!
Je pense que la solution est apportée par ta réponse mais avant de basculer le sujet en terminé je veux prendre le temps de tester et comprendre. Dès que c'est le cas je valide.
Merci à toi pour ta réactivité et l'exemple joint à la réponse !
Je valide dès que j'ai testé en réel (et compris lol ...)
Apache Openoffice 4.1.5 avec Windows 7
-
Jean-Louis Cadeillan
- GourOOu

- Messages : 6090
- Inscription : 02 janv. 2009 23:56
Re: compter une chaîne de caractère à une place bien précise
Bonsoir, à valider par Ctrl+Maj+Entrée. D'ailleurs SOMMEPROD() est aussi une fonction matricielle qui cache son jeu, car elle se valide simplement par Entrée. On pourrait donc mettre de la même manière :
Cordialement,
Jean-Louis
C'est aussi très bien, STXT(). Mais pour éviter de mettre la fonction à chaque ligne de ta Plage et ensuite d'être obligé de compter les résultats qui correspondent à ton Critère, tu peux utiliser une formule matricielle dans une seule cellule :juju0209 a écrit :je pense recourir à STXT dans une cellule puis compter
Code : Tout sélectionner
=NB.SI(STXT(Plage;7;2);Critère)Code : Tout sélectionner
=SOMMEPROD(STXT(Plage;7;2)=Critère)On ne peut mieux conclureOOotremer971 a écrit :Les solutions sont nombreuses...trop nombreuses.
Cordialement,
Jean-Louis
Windows 10 Pro 64, LibO 25.8.6.2 (JRE 1.8.0_481) et AOO 4.1.16 (Adoptium 19.0.2.7)
-
juju0209
- Fraîchement OOthentifié
- Messages : 9
- Inscription : 02 sept. 2018 17:41
Re: compter une chaîne de caractère à une place bien précise
Bonsoir Jean-Louis Cadeillan, OOotremer971 et aux autres .... évidemment !!
Comme je m'y étais engagé, je reviens sur le forum pour valider vos propositions. En effet, j'ai décomposé et compris vos formules qui apportent la réponse à ma demande. Je n'arrivais pas à faire en sorte que la plage "entière" soit comptabilisée lors de mes tentatives... je pense que cela venait de la mauvaise formule choisie au départ pour faire le calcul. Visiblement SOMMEPROD était la solution. Je suis parvenu à "reformuler" la proposition de OOotremer971 avec stxt et j'arrive au résultat.
Si les solutions ne manquent pas, les talents et les "partageurs" non plus !! Vous en êtes la preuve alors à nouveau un grand merci !!!!!
Ce fil est à présent clos.
Comme je m'y étais engagé, je reviens sur le forum pour valider vos propositions. En effet, j'ai décomposé et compris vos formules qui apportent la réponse à ma demande. Je n'arrivais pas à faire en sorte que la plage "entière" soit comptabilisée lors de mes tentatives... je pense que cela venait de la mauvaise formule choisie au départ pour faire le calcul. Visiblement SOMMEPROD était la solution. Je suis parvenu à "reformuler" la proposition de OOotremer971 avec stxt et j'arrive au résultat.
Si les solutions ne manquent pas, les talents et les "partageurs" non plus !! Vous en êtes la preuve alors à nouveau un grand merci !!!!!
Ce fil est à présent clos.
Apache Openoffice 4.1.5 avec Windows 7