Excel Downloads
Forum

Précédent   Excel Downloads Forums > Excel > Forum Excel > NB Si entre 2 feuilles vba excel
Vous inscrire
S'inscrire FAQ Membres Calendrier Recherche Messages du jour Marquer les forums comme lus


Réponse
 
LinkBack Outils de la discussion
Vieux 11/05/2008, 14h29   #1 (permalink)
matrix
XLDnaute Occasionel
 
Avatar de matrix
 
Date d'inscription: janvier 2008
Messages: 106
Par défaut NB Si entre 2 feuilles vba excel

Bonjour à tous,

Dans mon fichier excel, dans la feuille "COUT PAR PÉRIODE", colonne G, je voudrais qu'il me donne le nombre de fois que le nom inscrit dans la colonne A de chaque ligne comme par exemple sur le fichier excel joint, dans la cellule A5 avec la description "7 way plug" suivi de la valeur de la cellule G3 avec la valeur "1" se qui donne "7 way plug1".

Cette valeur doit être recherché dans la feuille "Tableau Cumulatif" colonne J.

Il dois faire la même chose pour tout les noms inscrit dans la colonne A de la feuille "COUT PAR PÉRIODE".

Donc si il y à un nom inscrit dans une cellule de la colonne A, il me cherche le nombre de fois que la valeur se trouve dans la feuille "Tableau Cumulatif" colonne J.

Comment faire svp.

Merci de votre aide!
Fichiers attachés
Type de fichier : zip Test1.zip (16,5 Ko, 6 affichages)
matrix est déconnecté   Réponse avec citation
ANNONCES
Vieux 11/05/2008, 14h53   #2 (permalink)
kjin
XLDnaute Impliqué
 
Date d'inscription: juin 2007
Localisation: Montpellier
Version Excel : Excel 2000 (PC)
Messages: 754
Par défaut Re : NB Si entre 2 feuilles vba excel

Bonjour,
Avec ce que j'ai compris, en G5 avec une plage de référence 'Tableau Cumulatif'!J7:J15 :
=NB.SI('Tableau Cumulatif'!J7:J15;CONCATENER('COUT PAR PÉRIODE'!$A5&'COUT PAR PÉRIODE'!$G$3))
A+
kjin
kjin est déconnecté   Réponse avec citation
Vieux 11/05/2008, 14h57   #3 (permalink)
matrix
XLDnaute Occasionel
 
Avatar de matrix
 
Date d'inscription: janvier 2008
Messages: 106
Par défaut Re : NB Si entre 2 feuilles vba excel

Oui, ça c'est en écrivant une formule dans la cellule. ^Ca je sais faire.

Par contre je voudrais transformer ça en VBA pour que quand je clique sur un bouton, il me donne la valeur de cette formule que tu as fais et cela pour tous les noms de la colonne A.

Merci
matrix est déconnecté   Réponse avec citation
Vieux 11/05/2008, 15h01   #4 (permalink)
cbea
XLDnaute Impliqué
 
Avatar de cbea
 
Date d'inscription: mars 2008
Version Excel : Excel 2003 (PC)
Messages: 745
Par défaut Re : NB Si entre 2 feuilles vba excel

Bonjour Matrix,

Voici une solution.
Fichiers attachés
Type de fichier : zip Test_v1.zip (18,0 Ko, 12 affichages)
__________________
@+
cbea
cbea est déconnecté   Réponse avec citation
Vieux 11/05/2008, 15h26   #5 (permalink)
matrix
XLDnaute Occasionel
 
Avatar de matrix
 
Date d'inscription: janvier 2008
Messages: 106
Par défaut Re : NB Si entre 2 feuilles vba excel

je fais le test avec ce script mais sans résultat,

Code:
 nbLignes = Cells(Rows.Count, "A").End(xlUp).Row
   
    Sheets("COUT PAR PÉRIODE").Range("G5:G" & nbLignes).Formula = "=DECALER('Tableau Cumulatif'!$J$7;;;NBVAL('Tableau Cumulatif'!$A:$A)-1)"
matrix est déconnecté   Réponse avec citation
Vieux 11/05/2008, 15h57   #6 (permalink)
kjin
XLDnaute Impliqué
 
Date d'inscription: juin 2007
Localisation: Montpellier
Version Excel : Excel 2000 (PC)
Messages: 754
Par défaut Re : NB Si entre 2 feuilles vba excel

Re,
Je n'avais pas compris "sans formule".
Code associé au bouton 2
Private Sub CommandButton2_Click()
Ref = Range("G3").Value
Set Plge = Sheets(2).Range("J7:J" & Range("J7").End(xlDown).Row)
For Each cel In Sheets(1).Range("A5:A" & Range("A5").End(xlDown).Row)
If cel.Value <> "" Then
cel.Offset(0, 6) = Application.WorksheetFunction.CountIf(Plge, cel & Ref)
End If
Next
End Sub

A+
kjin
kjin est déconnecté   Réponse avec citation
Vieux 11/05/2008, 16h22   #7 (permalink)
matrix
XLDnaute Occasionel
 
Avatar de matrix
 
Date d'inscription: janvier 2008
Messages: 106
Par défaut Re : NB Si entre 2 feuilles vba excel

oh oui, merci, ça fonctionne
matrix est déconnecté   Réponse avec citation
Vieux 11/05/2008, 18h04   #8 (permalink)
cbea
XLDnaute Impliqué
 
Avatar de cbea
 
Date d'inscription: mars 2008
Version Excel : Excel 2003 (PC)
Messages: 745
Par défaut Re : NB Si entre 2 feuilles vba excel

Bonsoir Matrix, kjin,

Une méthode plus courte avec ce code VBA :
Code:
    nbLignes = Cells(Rows.Count, "A").End(xlUp).Row
   
    Sheets("COUT PAR PÉRIODE").Range("G5:G" & nbLignes).Formula = "=COUNTIF(RefCumul,$A5&$G$3)"
RefCumul a été décrit dans le fichier joint précédemment.
__________________
@+
cbea
cbea est déconnecté   Réponse avec citation
Vieux 12/05/2008, 13h28   #9 (permalink)
matrix
XLDnaute Occasionel
 
Avatar de matrix
 
Date d'inscription: janvier 2008
Messages: 106
Par défaut Re : NB Si entre 2 feuilles vba excel

Merci cbea ,


Dernière chose, dans le même fichier, dans la colonne G nous avons le nB.Si, mais maintenant, j'ai besoins du Prix total qui correspond avec. Et se Prix total se trouve dans la feuille "Tableau Cumulatif" colonne N.

Comment faire svp


Merci de votre aide précieuse!
matrix est déconnecté   Réponse avec citation
Vieux 12/05/2008, 13h56   #10 (permalink)
matrix
XLDnaute Occasionel
 
Avatar de matrix
 
Date d'inscription: janvier 2008
Messages: 106
Par défaut Re : NB Si entre 2 feuilles vba excel

Je viens de faire le test avec

Code:
Ref = Range("G3").Value
Set Plge = Sheets("Tableau Cumulatif").Range("J7:J" & Range("J7").End(xlDown).Row)
For Each cel In Sheets("COUT PAR PÉRIODE").Range("A5:A" & Range("A5").End(xlDown).Row)
If cel.Value <> "" Then
cel.Offset(0, 7) = Application.WorksheetFunction.SumIf(Plge.Offset(0, 4), cel & Ref)
End If
Next
Mais ça ne marche pas.

Avez-vous une idée ce qui cloche ?

Merci
matrix est déconnecté   Réponse avec citation
Vieux 12/05/2008, 14h02   #11 (permalink)
kjin
XLDnaute Impliqué
 
Date d'inscription: juin 2007
Localisation: Montpellier
Version Excel : Excel 2000 (PC)
Messages: 754
Par défaut Re : NB Si entre 2 feuilles vba excel

Bonjour,
Essaies comme ça:
Private Sub CommandButton2_Click()
Ref = Range("G3").Value
Set Plge1 = Sheets(2).Range("J7:J" & Range("J7").End(xlDown).Row)
Set Plge2 = Sheets(2).Range("N7:N" & Range("N7").End(xlDown).Row)
For Each cel In Sheets(1).Range("A5:A" & Range("A5").End(xlDown).Row)
If cel.Value <> "" Then
cel.Offset(0, 6) = Application.WorksheetFunction.CountIf(Plge1, cel & Ref)
cel.Offset(0, 7) = Application.WorksheetFunction.SumIf(Plge1, cel & Ref, Plge2)
End If
Next

End Sub

A+
kjin
kjin est déconnecté   Réponse avec citation
Vieux 12/05/2008, 14h24   #12 (permalink)
cbea
XLDnaute Impliqué
 
Avatar de cbea
 
Date d'inscription: mars 2008
Version Excel : Excel 2003 (PC)
Messages: 745
Par défaut Re : NB Si entre 2 feuilles vba excel

Bonjour Matrix, Kjin,

Voici une autre solution :
Dans la feuille "Tableau Cumulatif", déclarer une cellule nommée (utiliser le menu : Insertion/Nom/Définir...)
Nom : PrixCumul
Référence : =DECALER('Tableau Cumulatif'!$N$7;;;NBVAL('Tableau Cumulatif'!$A:$A)-1)

Code VBA :
Code:
    nbLignes = Cells(Rows.Count, "A").End(xlUp).Row
    Sheets("COUT PAR PÉRIODE").Range("H5:H" & nbLignes).Formula = "=SUMPRODUCT(($A5&$G$3=RefCumul)*(PrixCumul))"
__________________
@+
cbea
cbea est déconnecté   Réponse avec citation
Vieux 12/05/2008, 14h33   #13 (permalink)
matrix
XLDnaute Occasionel
 
Avatar de matrix
 
Date d'inscription: janvier 2008
Messages: 106
Par défaut Re : NB Si entre 2 feuilles vba excel

Merci beaucoup, ça fonctionne super!
matrix est déconnecté   Réponse avec citation
ANNONCES
Réponse



Outils de la discussion

Règles de messages
Vous pouvez ouvrir de nouvelles discussions : nonoui
Vous pouvez envoyer des réponses : nonoui
Vous pouvez insérer des pièces jointes : nonoui
Vous pouvez modifier vos messages : nonoui

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Discussions similaires
Discussion Auteur Forum Réponses Dernier message
Joindre 2 feuilles excel entre eux. Hysteresis Forum Excel 5 19/07/2006 08h49
transition entre feuilles excel MALIKA Forum Excel 5 13/05/2006 12h27
pb de correspondance entre feuilles excel Sébastien 21 Forum Excel 2 02/01/2006 23h34
lien entre feuilles excel Sébastien Forum Excel 1 11/07/2005 17h03
lien entre feuilles excel Sébastien Forum Excel 1 11/07/2005 17h02


Fuseau horaire GMT +2. Il est actuellement 23h35.


(C) 2006 Excel Downloads