> Tous les forums > Forum Bureautique
 [Excel 2007] Fonction NB.SI - problème
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Mike Portnoy
  Posté le 25/06/2014 @ 16:16 
Aller en bas de la page 
Petit astucien

Bonjour à tous,

Je me permets de vous écrire pour m'aider à composer une formule assez spéciale.

Mon tableau contient plusieurs chiffres séparés par des espaces.

De plus, dans une autre colonne, j'ai une liste de chiffres de 1 à 26 (voir tableau excel ci-joint).

Ce que j'aimerai faire, c'est que la cellule C1 m'indique combien de fois le chiffre de la cellule B1 se trouve dans la liste A1 à A2.

Exemple :

Dans la liste, combien de fois ressort le chiffre de la cellule B23 ? 2x

Combien de fois ressort le chiffre de la cellule B3 ? 2x

En espérant avoir été clair, merci d'avance pour vos réponses.

Publicité
Mike Portnoy
 Posté le 25/06/2014 à 16:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Anonyme a écrit :

Salut

NB.SI() ne sert pas à ça !


La preuve que je ne suis pas très doué...

Les nombres sont au format "standard".

Merci beaucoup pour votre aide

DjiDji59430
 Posté le 25/06/2014 à 18:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Tu selectionnes la colonne A puis Données--> convertir, tu choisis espace, et tu te retrouve avec 4 colonnes et la tu peux utiliser nb.si().

Par exemple en f23 =nb.si(a1:d26;e23)



Modifié par DjiDji59430 le 25/06/2014 22:24
ferrand
 Posté le 25/06/2014 à 22:19 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

J'ai pas mieux pour l'instant, en C1:

=SOMMEPROD(--(ESTNUM(CHERCHE(STXT(SUBSTITUE(" "&$A$1&" "&$A$2&" ";" "&B1&" ";"A");LIGNE(INDIRECT("1:"&NBCAR(SUBSTITUE(" "&$A$1&" "&$A$2&" ";" "&B1&" ";"A"))));1);"A"))))

On peut décomposer en 2 maillons, cela permet d'ailleurs de mieux comprendre le mécanisme.

En C1 : =SUBSTITUE(" "&$A$1&" "&$A$2&" ";" "&B1&" ";"A")

En D1 : =SOMMEPROD(--(ESTNUM(CHERCHE(STXT(C1;LIGNE(INDIRECT("1:"&NBCAR(C1)));1);"A"))))

(2e partie inspirée de Boisgontier )

Toutes les formules sont tirables sur la colonne.

ferrand
 Posté le 25/06/2014 à 23:17 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Re,

Une solution plus simple : en C1 :

=(NBCAR($A$1&$A$2)+3-NBCAR(SUBSTITUE(" "&$A$1&" "&$A$2&" ";" "&B1&" ";"")))/(NBCAR(B1)+2)

A tirer sur la colonne.

ferrand
 Posté le 26/06/2014 à 12:24 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

Pour le fun, une autre solution utilisant une fonction personnalisée :

Function NBDANS(nr As Integer, ParamArray suites())
Dim i%, j%, n%, ch
Application.Volatile
If IsMissing(suites) Then
NBDANS = CVErr(xlErrNA)
Exit Function
End If
For i = 0 To UBound(suites)
If Application.WorksheetFunction.IsText(suites(i)) Then
ch = Split(suites(i))
For j = 0 To UBound(ch)
If IsNumeric(ch(j)) Then
If CInt(ch(j)) = nr Then n = n + 1
Else
NBDANS = CVErr(xlErrValue)
Exit Function
End If
Next j
Else
NBDANS = CVErr(xlErrValue)
Exit Function
End If
Next i
NBDANS = n
End Function

La fonction étant collée dans un module standard, en C1 la formule suivante (à tirer sur la colonne comme les autres) :

=NBDANS(B1;$A$1;$A$2)



Modifié par ferrand le 26/06/2014 12:25
ferrand
 Posté le 27/06/2014 à 22:16 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Une autre variante personnalisée :

Function NBDEDANS(nr As Integer, ParamArray suites())
Dim i%, h%, n%, ch
Application.Volatile
If IsMissing(suites) Then
NBDEDANS = CVErr(xlErrNA)
Exit Function
End If
For i = 0 To UBound(suites)
If Application.WorksheetFunction.IsText(suites(i)) Then
ch = Replace(" " & suites(i) & " ", " " & nr & " ", Chr(191))
Do
h = InStr(h + 1, ch, Chr(191))
If h > 0 Then n = n + 1
Loop While h > 0
Else
NBDEDANS = CVErr(xlErrValue)
Exit Function
End If
Next i
NBDEDANS = n
End Function

C1 => =NBDEDANS(B1;$A$1;$A$2)

ferrand
 Posté le 29/06/2014 à 16:38 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Je n'ai plus de variantes intéressantes !

Mike Portnoy
 Posté le 01/07/2014 à 17:24 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Wow je devrais me connecter plus souvent sur PCASTUCES, merci pour tous ces renseignements, je vous redirai quelle solution je vais utiliser.

Merci beaucoup.

Lui
 Posté le 05/07/2014 à 11:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Hello tous ,

Juste pour dire, Ferrand, respect

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
Lot de 4 caméras de sécurité connectées étanches Blink Outdoor + sonnette sans fil Blink Video Doorbell à 143,99 €
143,99 € 347 € -59%
@Amazon
Enceinte connectée Amazon Echo Pop avec assistant Alexa à 19,99 €
19,99 € 70 € -71%
@Amazon
PC portable 16 pouces Asus Vivobook 16 FX36 (WUXGA 144Hz IPS, Intel Core i7-12700H, 16 Go, SSD 512 Go, RTX 4060, sans OS) à 899,99 €
899,99 € 899 € -0%
@Cdiscount
Kit de 16 Go (2 x 8 Go) de mémoire DDR4 Corsair Vengeance LPX 3200 MHz à 32,99 €
32,99 € 60 € -45%
@Amazon
Chargeur USB UGREEN Nexode 200W (4xUSB C + 2xUSB A) à 90,54 €
90,54 € 130 € -30%
@Amazon Allemagne
Lot de 2 étagères de rangement à 5 niveaux réglables (40 x 90 x 180 cm) à 49,99 €
49,99 € 80 € -38%
@Cdiscount

Sujets relatifs
Excel 2007 Problème bizarre #valeur!
Probleme d'enregistrement avec excel 2007
Fonction SI Excel (Excel 2007)
Probleme excel - tri dans macro Excel 2007
Problème de "fonction" sous Excel
Problème doc excel 2007 et office 2002
fonction FIN.MOIS Excel 2007
Problème avec mon graph à bulles sur Excel 2007
Excel 2007 problème formule
Problème virgule Excel 2007
Plus de sujets relatifs à [Excel 2007] Fonction NB.SI - problème
 > Tous les forums > Forum Bureautique