compter

chilo

XLDnaute Occasionnel
bonjour le fil

je vous soumets de nouveau un souci

je souhaite trouver un nombre entré dans a1
et afficher le nombre de fois qu'il apparait dans ce classeur

dans 1 classeur comportant plusieurs feuilles

dans les colonnes de a à ir

et sur les lignes 62000 (partfois)

ce nombre peut etre dans chaque colonne

MERCI DE VOTRE BONNE VOLONTE ET BONNE JOURNEE
 
T

Temjeh

Guest
Bonjour le forum
Et longue vie à ce site

J'ai eu cette idée qui peut te convenir...

Donne le nombre de valeur de A1 dans tout le classeur

Aussi si tu le veux automatic met ceci dans la feuille

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim countTot As Long
Dim ws As Object
Dim returnValue As String
strSearchString = Range('A1').Value
If strSearchString = '' Then Exit Sub
For Each ws In Worksheets
countTot = countTot + Application.CountIf(ws.UsedRange, '=' & strSearchString)
Next ws
If countTot = 0 Then
returnValue = MsgBox(' La valeur ' & strSearchString & ' n'est pas enregistrée ', vbOKOnly, ' Message ')
Else
Range('B1').Value = countTot
End If
End Sub


Moi à 40 ans



Dieu nous a donné deux extrémités :
l'une pour s'asseoir, l'autre pour réfléchir.
La vie dépend de celle qu'on utilise :
face on gagne, pile on perd.

[Paul-Emile Victor]



A++

Temjeh [file name=NbVal.zip size=12364]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/NbVal.zip[/file]
 

Pièces jointes

  • NbVal.zip
    12.1 KB · Affichages: 20
  • NbVal.zip
    12.1 KB · Affichages: 18
  • NbVal.zip
    12.1 KB · Affichages: 21
T

Temjeh

Guest
Rebonjour
Désolé prend ce code car il incluait 1 de plus(A1) dans sa recherche

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim countTot As Long
Dim ws As Object
Dim returnValue As String
strSearchString = Range('A1').Value
If strSearchString = '' Then Exit Sub
For Each ws In Worksheets
countTot = countTot + Application.CountIf(ws.UsedRange, '=' & strSearchString)
Next ws

Range('B1').Value = countTot - 1

End Sub

Temjeh
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour Chilo, Gilles, Temjeh le Forum

J'avais tenté à multes reprise ce matin de poster une réponse, mais 'unfortunately' je tombais sur Apache qui me taillait un scalpe inmanquablement... Fort heureusement j'avais conservé l'algo sur le fichier Excel...


...

Je teste
@+thierry
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re non pas possible !

Je n'ai pas compris la problématique de la même manière que toi Temjeh... Pour moi Chilo cherche une valeur dans toutes les feuilles du classeur...

Voici une Solution VBA qui retournera sur une nouvelle feuille générée à la volée la liste des occurrences trouvées dans toutes les feuilles du classeur, sauf celle nommée 'Interface' où se situera la valeur à chercher en cellule A1

@+Thierry
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Arf

Impossible de poster ce code, tentative fichier joint...

@+Thierry [file name=Search_MultiSheets.zip size=16372]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Search_MultiSheets.zip[/file]
 

Pièces jointes

  • Search_MultiSheets.zip
    16 KB · Affichages: 22
T

Temjeh

Guest
Bonjour à toi aissi _Thierry

Pour ma part j'avais compris qu'il voulais le nombre et non les adresses. Ben là il as le choix je lui donne le nombre et tu lui donne les adresses. Merci

Pour le prob du serveur on m'a dit que souvent il refuse les codes avec des signes plus grand ou plus petit .
Ca m'a arrivé déja plusieurs fois et c'est surtout décevant quand tu met 15 min a composé et que tu réussie et là il y a déjà 4 rep avec tes codes!!!

A+

Temjeh

Ps je te met les signes et ca passe pas

Salut Hervé
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour à Tous

Merci Hervé et Temjeh pour l'info du 'Different de' qui est devenu une source de rejet du post... Bon à savoir avant de s'énerver pour rien lol

Bon Dimanche
[ol]@+Thierry[/ol]

PS pour Chilo, il suffit de modifier cette partie comme suit pour avoir un compteur d'occurrences aussi :

With Worksheets.Add
    .Cells(1, 1) = 'WorkSheet'
    .Cells(1, 2) = 'Cell Address'
    .Cells(1, 3) = 'Value'
    .Cells(1, 4) = 'Nombre d
'Ocurrences Trouvées  = ' & i
     
     
For i = 0 To UBound(Tablo, 2)
       
For x = 0 To 2
        .Cells(i + 2, x + 1) = Tablo(x, i)
       
Next
     
Next
End With
 

Celeda

XLDnaute Barbatruc
Bonjour,

Thierry et Temjeh : un grand merci


j'éspérais une solution en formule, j'ai essayé divers countif sur plusieurs feuilles et je ne s'y suis pas arrivée :silly: alors en desespoir d'avoir une soluce en formule, encore une fois, je dois dire,



si vba

et vous n'existaient pas ....

êtes-vous le commencement

ou le nivarna ?

la saveur ou le détachement ?

en attendant Temjeh et Thierry

un grand merci.

Celeda

Message édité par: Celeda, à: 29/01/2006 14:13
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour Celeda, re le Fil, le Forum

Et oui chère Celeda, parfois il y a des trucs assez simples avec VB qui ne semblent pas pouvoir être reproduits par Formules... C'est, à mon avis, souvent le cas lorsque l'on s'attaque à du Multi-Feuilles, ou bien il faudrait une sacrée usine à gaz de formules à ajouter à chacune d'elles puis à récapituler sur une feuille 'globale'... Ce qui serait un sacré boulot de maintenance aussi, alors que VBA s'en charge quasiment à 100% tout seul...

Merci de ton message.

Bon Dimanche
[ol]@+Thierry[/ol]
 

Discussions similaires

Statistiques des forums

Discussions
312 443
Messages
2 088 469
Membres
103 860
dernier inscrit
SebRol