Je souhaiterais savoir si quelqu'un connait une méthode pour pouvoir faire
ce qui suit :
Imaginons un tableau a 2 colonnes et 500 lignes
Je voudrais pouvoir, lorsque la valeur d'une cellule de la deuxième colonne
est ABCD (il y en a plusieurs), recuperer les valeurs correspondantes de la
1ere colonne.
Exemple :
1 ABCD
2 XYZ
3 ABCD
4 ABCD
5 XYZ
RESULTAT : 1+3+4
J'éspère etre assez clair pour que quelqu'un puisse me donner ne serait-ce
qu'un début de réponse.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Bécarré
"Michael" a écrit :
Bonjour,
Je souhaiterais savoir si quelqu'un connait une méthode pour pouvoir faire ce qui suit :
Imaginons un tableau a 2 colonnes et 500 lignes
Je voudrais pouvoir, lorsque la valeur d'une cellule de la deuxième colonne est ABCD (il y en a plusieurs), recuperer les valeurs correspondantes de la 1ere colonne.
Exemple :
1 ABCD 2 XYZ 3 ABCD 4 ABCD 5 XYZ
RESULTAT : 1+3+4
J'éspère etre assez clair pour que quelqu'un puisse me donner ne serait-ce qu'un début de réponse.
Merci d'avance. Michael.
En inversant les colonnes (en posant C1 = +A1, C2 = +A2, ...), il y a moyen d'utiliser la fonction somme.si : =SOMME.SI(B1:C5;"ABCD";C1:C5)=8, mais c'est hors VBA, ...
Je ne sais pas si ça répond ...
"Michael" a écrit :
Bonjour,
Je souhaiterais savoir si quelqu'un connait une méthode pour pouvoir faire
ce qui suit :
Imaginons un tableau a 2 colonnes et 500 lignes
Je voudrais pouvoir, lorsque la valeur d'une cellule de la deuxième colonne
est ABCD (il y en a plusieurs), recuperer les valeurs correspondantes de la
1ere colonne.
Exemple :
1 ABCD
2 XYZ
3 ABCD
4 ABCD
5 XYZ
RESULTAT : 1+3+4
J'éspère etre assez clair pour que quelqu'un puisse me donner ne serait-ce
qu'un début de réponse.
Merci d'avance.
Michael.
En inversant les colonnes (en posant C1 = +A1, C2 = +A2, ...), il y a moyen d'utiliser la fonction somme.si : =SOMME.SI(B1:C5;"ABCD";C1:C5)=8, mais c'est hors VBA, ...
Je souhaiterais savoir si quelqu'un connait une méthode pour pouvoir faire ce qui suit :
Imaginons un tableau a 2 colonnes et 500 lignes
Je voudrais pouvoir, lorsque la valeur d'une cellule de la deuxième colonne est ABCD (il y en a plusieurs), recuperer les valeurs correspondantes de la 1ere colonne.
Exemple :
1 ABCD 2 XYZ 3 ABCD 4 ABCD 5 XYZ
RESULTAT : 1+3+4
J'éspère etre assez clair pour que quelqu'un puisse me donner ne serait-ce qu'un début de réponse.
Merci d'avance. Michael.
En inversant les colonnes (en posant C1 = +A1, C2 = +A2, ...), il y a moyen d'utiliser la fonction somme.si : =SOMME.SI(B1:C5;"ABCD";C1:C5)=8, mais c'est hors VBA, ...
Je ne sais pas si ça répond ...
Hervé
Bonjour Michael, En supposant que les colonnes son A et B et que les lettres cherchées (ABCD) se trouvent en colonne B. Les valeur situées en colonne A sont récupérées dans un tableau et affichées ensuite dans la fenêtre d'exécution :
Sub Recup() Dim Plage As Range Dim Cel As Range Dim Tbl() Dim I As Long
With Worksheets("Feuil1") Set Plage = .Range(.[B1], .[B63536].End(3)) End With
For Each Cel In Plage If Cel = "ABCD" Then I = I + 1 ReDim Preserve Tbl(1 To I) Tbl(I) = Cel.Offset(0, -1).Value End If Next Cel
For I = 1 To UBound(Tbl) Debug.Print Tbl(I) Next I
Set Cel = Nothing Set Plage = Nothing Erase Tbl End Sub
Hervé.
"Michael" a écrit dans le message news: #
Bonjour,
Je souhaiterais savoir si quelqu'un connait une méthode pour pouvoir faire ce qui suit :
Imaginons un tableau a 2 colonnes et 500 lignes
Je voudrais pouvoir, lorsque la valeur d'une cellule de la deuxième
colonne
est ABCD (il y en a plusieurs), recuperer les valeurs correspondantes de
la
1ere colonne.
Exemple :
1 ABCD 2 XYZ 3 ABCD 4 ABCD 5 XYZ
RESULTAT : 1+3+4
J'éspère etre assez clair pour que quelqu'un puisse me donner ne serait-ce qu'un début de réponse.
Merci d'avance. Michael.
Bonjour Michael,
En supposant que les colonnes son A et B et que les lettres cherchées (ABCD)
se trouvent en colonne B. Les valeur situées en colonne A sont récupérées
dans un tableau et affichées ensuite dans la fenêtre d'exécution :
Sub Recup()
Dim Plage As Range
Dim Cel As Range
Dim Tbl()
Dim I As Long
With Worksheets("Feuil1")
Set Plage = .Range(.[B1], .[B63536].End(3))
End With
For Each Cel In Plage
If Cel = "ABCD" Then
I = I + 1
ReDim Preserve Tbl(1 To I)
Tbl(I) = Cel.Offset(0, -1).Value
End If
Next Cel
For I = 1 To UBound(Tbl)
Debug.Print Tbl(I)
Next I
Set Cel = Nothing
Set Plage = Nothing
Erase Tbl
End Sub
Hervé.
"Michael" <bas_michael@yahoo.fr> a écrit dans le message news:
#3pVxyhhFHA.1244@TK2MSFTNGP14.phx.gbl...
Bonjour,
Je souhaiterais savoir si quelqu'un connait une méthode pour pouvoir faire
ce qui suit :
Imaginons un tableau a 2 colonnes et 500 lignes
Je voudrais pouvoir, lorsque la valeur d'une cellule de la deuxième
colonne
est ABCD (il y en a plusieurs), recuperer les valeurs correspondantes de
la
1ere colonne.
Exemple :
1 ABCD
2 XYZ
3 ABCD
4 ABCD
5 XYZ
RESULTAT : 1+3+4
J'éspère etre assez clair pour que quelqu'un puisse me donner ne serait-ce
qu'un début de réponse.
Bonjour Michael, En supposant que les colonnes son A et B et que les lettres cherchées (ABCD) se trouvent en colonne B. Les valeur situées en colonne A sont récupérées dans un tableau et affichées ensuite dans la fenêtre d'exécution :
Sub Recup() Dim Plage As Range Dim Cel As Range Dim Tbl() Dim I As Long
With Worksheets("Feuil1") Set Plage = .Range(.[B1], .[B63536].End(3)) End With
For Each Cel In Plage If Cel = "ABCD" Then I = I + 1 ReDim Preserve Tbl(1 To I) Tbl(I) = Cel.Offset(0, -1).Value End If Next Cel
For I = 1 To UBound(Tbl) Debug.Print Tbl(I) Next I
Set Cel = Nothing Set Plage = Nothing Erase Tbl End Sub
Hervé.
"Michael" a écrit dans le message news: #
Bonjour,
Je souhaiterais savoir si quelqu'un connait une méthode pour pouvoir faire ce qui suit :
Imaginons un tableau a 2 colonnes et 500 lignes
Je voudrais pouvoir, lorsque la valeur d'une cellule de la deuxième
colonne
est ABCD (il y en a plusieurs), recuperer les valeurs correspondantes de
la
1ere colonne.
Exemple :
1 ABCD 2 XYZ 3 ABCD 4 ABCD 5 XYZ
RESULTAT : 1+3+4
J'éspère etre assez clair pour que quelqu'un puisse me donner ne serait-ce qu'un début de réponse.
Merci d'avance. Michael.
Michael
Merci beaucoup ça marche impec mais comment récupérer les valeurs de la table ? dans une colonne par exemple ?
Je sais que je suis exigeant désolé !
Merci Michael
Merci beaucoup ça marche impec mais comment récupérer les valeurs de la
table ? dans une colonne par exemple ?