<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://knowledge.pinon-hebert.fr/mediawiki/index.php?action=history&amp;feed=atom&amp;title=EXCEL_Compter_occurrence</id>
	<title>EXCEL Compter occurrence - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://knowledge.pinon-hebert.fr/mediawiki/index.php?action=history&amp;feed=atom&amp;title=EXCEL_Compter_occurrence"/>
	<link rel="alternate" type="text/html" href="https://knowledge.pinon-hebert.fr/mediawiki/index.php?title=EXCEL_Compter_occurrence&amp;action=history"/>
	<updated>2026-05-19T19:27:09Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://knowledge.pinon-hebert.fr/mediawiki/index.php?title=EXCEL_Compter_occurrence&amp;diff=637&amp;oldid=prev</id>
		<title>Jpinon : Page créée avec « == Description == Il n&#039;y a pas de fonction qui compte le nombre d&#039;occurrence d&#039;un caractère dans une chaine.  On a une fonction =NBCAR(), qui correspond à len() ou length() des langages de de programmation, avec laquelle on compte les caractères d&#039;une chaine.  La ruse consiste a faire la soustraction du nombre de caractère de la chaine complète avec la chaine à laquelle on a enlevé les caractères. {| class=&quot;wikitable&quot; |+ ! !A !B !C |- !1 |Le roi est mort... »</title>
		<link rel="alternate" type="text/html" href="https://knowledge.pinon-hebert.fr/mediawiki/index.php?title=EXCEL_Compter_occurrence&amp;diff=637&amp;oldid=prev"/>
		<updated>2024-04-10T14:39:48Z</updated>

		<summary type="html">&lt;p&gt;Page créée avec « == Description == Il n&amp;#039;y a pas de fonction qui compte le nombre d&amp;#039;occurrence d&amp;#039;un caractère dans une chaine.  On a une fonction =NBCAR(), qui correspond à len() ou length() des langages de de programmation, avec laquelle on compte les caractères d&amp;#039;une chaine.  La ruse consiste a faire la soustraction du nombre de caractère de la chaine complète avec la chaine à laquelle on a enlevé les caractères. {| class=&amp;quot;wikitable&amp;quot; |+ ! !A !B !C |- !1 |Le roi est mort... »&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Description ==&lt;br /&gt;
Il n&amp;#039;y a pas de fonction qui compte le nombre d&amp;#039;occurrence d&amp;#039;un caractère dans une chaine.&lt;br /&gt;
&lt;br /&gt;
On a une fonction =NBCAR(), qui correspond à len() ou length() des langages de de programmation, avec laquelle on compte les caractères d&amp;#039;une chaine.&lt;br /&gt;
&lt;br /&gt;
La ruse consiste a faire la soustraction du nombre de caractère de la chaine complète avec la chaine à laquelle on a enlevé les caractères.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!&lt;br /&gt;
!A&lt;br /&gt;
!B&lt;br /&gt;
!C&lt;br /&gt;
|-&lt;br /&gt;
!1&lt;br /&gt;
|Le roi est mort ce soir&lt;br /&gt;
|23&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!2&lt;br /&gt;
|L roi st mort c soir&lt;br /&gt;
|20&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
!3&lt;br /&gt;
|&lt;br /&gt;
|3&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* En A1 le texte a traiter.&lt;br /&gt;
* En B1 le nombre de caractères de A1 soit : =NBCAR(A1)&lt;br /&gt;
* En A2 le texte dont on a substitué les caractères &amp;quot;e&amp;quot; par un vide &amp;quot;&amp;quot; soit : =SUBSTITUE(A1;&amp;quot;e&amp;quot;;&amp;quot;&amp;quot;)&lt;br /&gt;
* En B2 le nombre de caractère de la chaine où on a supprimé les &amp;quot;e&amp;quot; soit : =NBCAR(A2)&lt;br /&gt;
* En B3 la différence de longueur entre la chaine complète et la chaine &amp;quot;nettoyée&amp;quot; soit : =B1-B2&lt;br /&gt;
&lt;br /&gt;
On peut s&amp;#039;éviter tout les intermédiaires avec : &amp;lt;syntaxhighlight lang=&amp;quot;vb.net&amp;quot;&amp;gt;&lt;br /&gt;
=NBCAR(A1)-NBCAR(SUBSTITUE(A1;&amp;quot;e&amp;quot;;&amp;quot;&amp;quot;))&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Un autre exemple serait de vouloir compter le nombre de &amp;quot;1&amp;quot; dans un nombre binaire (voir l&amp;#039;[[EXCEL Bases numériques|article sur les bases numeriques]]).&lt;br /&gt;
&lt;br /&gt;
On a le nombre 42(0x24) qui est représenté en binaire par 00101010 comment compter le nombre de bits à 1?&amp;lt;syntaxhighlight lang=&amp;quot;vb.net&amp;quot;&amp;gt;&lt;br /&gt;
=NBCAR(A1)-NBCAR(SUBSTITUE(A1;&amp;quot;1&amp;quot;;&amp;quot;&amp;quot;))&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Dans ce cas on a 3 car 3 bits a 1.&lt;br /&gt;
&lt;br /&gt;
== Application : la parité en [[UART/RS323|UART/RS232]]. ==&lt;br /&gt;
On a un caractère ASCII sur 7 bits. On va choisir &amp;quot;7&amp;quot; (le caractère &amp;quot;7&amp;quot; par le chiffre 7). son code ascii est conné par la fonction =CODE(A1) qui donne le code ascii de la première lettre de la chaine.&lt;br /&gt;
&lt;br /&gt;
On le nombre de bits à &amp;quot;1&amp;quot; par:&amp;lt;syntaxhighlight lang=&amp;quot;vb.net&amp;quot;&amp;gt;&lt;br /&gt;
=NBCAR(DECBIN(CODE(A1);7))-NBCAR(SUBSTITUE(DECBIN(CODE(A1);7);&amp;quot;1&amp;quot;;&amp;quot;&amp;quot;))&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;C&amp;#039;est une application des formules ci-dessus.&lt;br /&gt;
&lt;br /&gt;
La suite consiste à vérifier si ce nombre est pair =MOD(A1;2) donne 0 si pair et 1 si impair. C&amp;#039;est donc la parité. On ajoute ce bit en tête de l&amp;#039;octet et on aura donc toujours un nombre qui contiendra un nombre pair de bits à 1. La définition d&amp;#039;une parité paire.&amp;lt;syntaxhighlight lang=&amp;quot;vb.net&amp;quot;&amp;gt;&lt;br /&gt;
=CONCATENER(MOD(NBCAR(DECBIN(CODE(A1);7))-NBCAR(SUBSTITUE(DECBIN(CODE(A1);7);&amp;quot;1&amp;quot;;&amp;quot;&amp;quot;));2);DECBIN(CODE(A1);7))&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;on peut s&amp;#039;en servir pour avoir la table des codes ASCII sur 7 bits des caractères A à Z ainsi que le code sur 8 bit avec parité envoyer pour un UART en parité PAIRE&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Lettre&lt;br /&gt;
!ASCII&lt;br /&gt;
!binaire&lt;br /&gt;
!UART&lt;br /&gt;
|-&lt;br /&gt;
|A&lt;br /&gt;
|65&lt;br /&gt;
|1000001&lt;br /&gt;
|01000001&lt;br /&gt;
|-&lt;br /&gt;
|B&lt;br /&gt;
|66&lt;br /&gt;
|1000010&lt;br /&gt;
|01000010&lt;br /&gt;
|-&lt;br /&gt;
|C&lt;br /&gt;
|67&lt;br /&gt;
|1000011&lt;br /&gt;
|11000011&lt;br /&gt;
|-&lt;br /&gt;
|D&lt;br /&gt;
|68&lt;br /&gt;
|1000100&lt;br /&gt;
|01000100&lt;br /&gt;
|-&lt;br /&gt;
|E&lt;br /&gt;
|69&lt;br /&gt;
|1000101&lt;br /&gt;
|11000101&lt;br /&gt;
|-&lt;br /&gt;
|F&lt;br /&gt;
|70&lt;br /&gt;
|1000110&lt;br /&gt;
|11000110&lt;br /&gt;
|-&lt;br /&gt;
|G&lt;br /&gt;
|71&lt;br /&gt;
|1000111&lt;br /&gt;
|01000111&lt;br /&gt;
|-&lt;br /&gt;
|H&lt;br /&gt;
|72&lt;br /&gt;
|1001000&lt;br /&gt;
|01001000&lt;br /&gt;
|-&lt;br /&gt;
|I&lt;br /&gt;
|73&lt;br /&gt;
|1001001&lt;br /&gt;
|11001001&lt;br /&gt;
|-&lt;br /&gt;
|J&lt;br /&gt;
|74&lt;br /&gt;
|1001010&lt;br /&gt;
|11001010&lt;br /&gt;
|-&lt;br /&gt;
|K&lt;br /&gt;
|75&lt;br /&gt;
|1001011&lt;br /&gt;
|01001011&lt;br /&gt;
|-&lt;br /&gt;
|L&lt;br /&gt;
|76&lt;br /&gt;
|1001100&lt;br /&gt;
|11001100&lt;br /&gt;
|-&lt;br /&gt;
|M&lt;br /&gt;
|77&lt;br /&gt;
|1001101&lt;br /&gt;
|01001101&lt;br /&gt;
|-&lt;br /&gt;
|N&lt;br /&gt;
|78&lt;br /&gt;
|1001110&lt;br /&gt;
|01001110&lt;br /&gt;
|-&lt;br /&gt;
|O&lt;br /&gt;
|79&lt;br /&gt;
|1001111&lt;br /&gt;
|11001111&lt;br /&gt;
|-&lt;br /&gt;
|P&lt;br /&gt;
|80&lt;br /&gt;
|1010000&lt;br /&gt;
|01010000&lt;br /&gt;
|-&lt;br /&gt;
|Q&lt;br /&gt;
|81&lt;br /&gt;
|1010001&lt;br /&gt;
|11010001&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|82&lt;br /&gt;
|1010010&lt;br /&gt;
|11010010&lt;br /&gt;
|-&lt;br /&gt;
|S&lt;br /&gt;
|83&lt;br /&gt;
|1010011&lt;br /&gt;
|01010011&lt;br /&gt;
|-&lt;br /&gt;
|T&lt;br /&gt;
|84&lt;br /&gt;
|1010100&lt;br /&gt;
|11010100&lt;br /&gt;
|-&lt;br /&gt;
|U&lt;br /&gt;
|85&lt;br /&gt;
|1010101&lt;br /&gt;
|01010101&lt;br /&gt;
|-&lt;br /&gt;
|V&lt;br /&gt;
|86&lt;br /&gt;
|1010110&lt;br /&gt;
|01010110&lt;br /&gt;
|-&lt;br /&gt;
|W&lt;br /&gt;
|87&lt;br /&gt;
|1010111&lt;br /&gt;
|11010111&lt;br /&gt;
|-&lt;br /&gt;
|X&lt;br /&gt;
|88&lt;br /&gt;
|1011000&lt;br /&gt;
|11011000&lt;br /&gt;
|-&lt;br /&gt;
|Y&lt;br /&gt;
|89&lt;br /&gt;
|1011001&lt;br /&gt;
|01011001&lt;br /&gt;
|-&lt;br /&gt;
|Z&lt;br /&gt;
|90&lt;br /&gt;
|1011010&lt;br /&gt;
|01011010&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Jpinon</name></author>
	</entry>
</feed>