Recherche et remplace avec condition (excel 2010)
Résolu/Fermé
Ju@nita
Messages postés
135
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
19 mars 2018
-
23 juin 2015 à 15:09
Ju@nita Messages postés 135 Date d'inscription mardi 11 juin 2013 Statut Membre Dernière intervention 19 mars 2018 - 25 juin 2015 à 14:37
Ju@nita Messages postés 135 Date d'inscription mardi 11 juin 2013 Statut Membre Dernière intervention 19 mars 2018 - 25 juin 2015 à 14:37
A voir également:
- Recherche et remplace avec condition (excel 2010)
- Liste déroulante excel - Guide
- Excel cellule couleur si condition texte - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Formule excel - Guide
7 réponses
via55
Messages postés
14398
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
10 avril 2024
2 701
23 juin 2015 à 16:38
23 juin 2015 à 16:38
Bonjour,
Une possibilité simple :
En colonne E recopier la colonne A et en colonne G recopier la colonne C
En F1 mettre cette formule :
=SIERREUR(SI(ET(TROUVE("Virement";B1);C1=25);"Frais virement";B1);B1)
et l'étirer au bas (double clic sur carré noir en bas à droite de la cellule)
Copier tout ce nouveau tableau et le coller sur une nouvelle feuille par collage spécial, Valeurs uniquement
Ne reste plus qu'à appliquer le tri sur ce tableau
Cdlmnt
Via
Une possibilité simple :
En colonne E recopier la colonne A et en colonne G recopier la colonne C
En F1 mettre cette formule :
=SIERREUR(SI(ET(TROUVE("Virement";B1);C1=25);"Frais virement";B1);B1)
et l'étirer au bas (double clic sur carré noir en bas à droite de la cellule)
Copier tout ce nouveau tableau et le coller sur une nouvelle feuille par collage spécial, Valeurs uniquement
Ne reste plus qu'à appliquer le tri sur ce tableau
Cdlmnt
Via
Ju@nita
Messages postés
135
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
19 mars 2018
23 juin 2015 à 16:47
23 juin 2015 à 16:47
Génial, ça fonctionne.
merci beaucoup
bonne journée.
merci beaucoup
bonne journée.
via55
Messages postés
14398
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
10 avril 2024
2 701
23 juin 2015 à 16:49
23 juin 2015 à 16:49
Ou alors mieux, sans tableau annexe, par une seule formule :
=SOMME.SI(B1:B11;"*Frais*";C1:C11)+SOMME.SI.ENS(C1:C11;B1:B11;"*Virement*";C1:C11;25)
Cdlmnt
Via
=SOMME.SI(B1:B11;"*Frais*";C1:C11)+SOMME.SI.ENS(C1:C11;B1:B11;"*Virement*";C1:C11;25)
Cdlmnt
Via
j'aime bien aussi la 2e solution, mais je veux pouvoir trier par la suite en ordre alphabétique et que tous les frais se regroupent ensemble. Le pourquoi du virement qui devient frais virement.
La première solution est exactement ce que je cherchais. Merci.
La première solution est exactement ce que je cherchais. Merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ju@nita
Messages postés
135
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
19 mars 2018
23 juin 2015 à 19:45
23 juin 2015 à 19:45
Via55: Il y a un détail auquel je n'avais pas pensé.
Comme le relevé bancaire n'a pas toujours le même nombre de ligne d'un mois à l'autre, ma macro doit tenir compte de ça. Donc, pour les besoins de l'exemple, j'extensionne ta commande jusqu'à la ligne 30.
Dans la feuille A, c'est le modèle de départ. Dans la feuille B, c'est la macro exécutée avant que je la continue. Etant donné que la formule dans la colonne E va jusqu'à la ligne 30, il est normal que ça donne comme résultat des 0. J'ai rajouté dans la macro une recherche pour remplacer ces 0 de cette colonne par rien du tout, mais regarde le résultat étrange. Non seulement les 0 ne sont pas disparus, mais ça rajoute des info dans la ligne 20 et 30 (et à chaque 10e ligne si je continue plus loin).
Et dans la feuille C, en principe, l'étape suivante dans ma macro serait que je copierais la colonne E à la colonne B, valeur seulement, puis j'effacerais la colonne E. Mais je ne suis pas plus avancée, j'ai encore ces 0 et des lignes non désirées. Comment puis-je dire dans ma macro de copier la formule vers le bas, mais jusqu'à ce qu'il n'y ait plus rien dans la colonne B ?
merci
https://www.cjoint.com/c/EFxrKUsjI3V
Comme le relevé bancaire n'a pas toujours le même nombre de ligne d'un mois à l'autre, ma macro doit tenir compte de ça. Donc, pour les besoins de l'exemple, j'extensionne ta commande jusqu'à la ligne 30.
Dans la feuille A, c'est le modèle de départ. Dans la feuille B, c'est la macro exécutée avant que je la continue. Etant donné que la formule dans la colonne E va jusqu'à la ligne 30, il est normal que ça donne comme résultat des 0. J'ai rajouté dans la macro une recherche pour remplacer ces 0 de cette colonne par rien du tout, mais regarde le résultat étrange. Non seulement les 0 ne sont pas disparus, mais ça rajoute des info dans la ligne 20 et 30 (et à chaque 10e ligne si je continue plus loin).
Et dans la feuille C, en principe, l'étape suivante dans ma macro serait que je copierais la colonne E à la colonne B, valeur seulement, puis j'effacerais la colonne E. Mais je ne suis pas plus avancée, j'ai encore ces 0 et des lignes non désirées. Comment puis-je dire dans ma macro de copier la formule vers le bas, mais jusqu'à ce qu'il n'y ait plus rien dans la colonne B ?
merci
https://www.cjoint.com/c/EFxrKUsjI3V
via55
Messages postés
14398
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
10 avril 2024
2 701
23 juin 2015 à 22:02
23 juin 2015 à 22:02
Re,
Macro qui copie la formule depuis E1 jusqu'à la dernière ligne remplie de B :
Cdlmnt
Via
Macro qui copie la formule depuis E1 jusqu'à la dernière ligne remplie de B :
Sub remplacement() Dim Ligne As Long Ligne = Columns(2).Find("*", , , , xlByColumns, xlPrevious).Row Range("E1").Select ActiveCell.FormulaR1C1 = _ "=IFERROR(IF(AND(FIND(""Virement"",RC[-3]),RC[-2]=25),""Frais virement"",RC[-3]),RC[-3])" Selection.AutoFill Destination:=Range("E1:E" & Ligne), Type:=xlFillDefault End Sub
Cdlmnt
Via
Ju@nita
Messages postés
135
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
19 mars 2018
25 juin 2015 à 14:37
25 juin 2015 à 14:37
merci beaucoup. ça fonctionne à merveille !