A voir également:
- Existe-t-il la formule pour Excel...
- Formule excel - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Liste déroulante excel - Guide
- Formule moyenne excel - Guide
- Formule excel si et - Guide
10 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 686
24 janv. 2009 à 21:59
24 janv. 2009 à 21:59
bonjour
Ce que tu demandes est possible en VBA mais c'est aussi une utopie car si les lignes vides sont cachées comment vas-tu faire pour les remplir ?
Ce que tu demandes est possible en VBA mais c'est aussi une utopie car si les lignes vides sont cachées comment vas-tu faire pour les remplir ?
Je les remplis avec la fonction RECHERCHV il y des cases où le résultat peut être 0 où une donnée...
Et je veux savoir peut on faire que quand le résultat est 0 la ligne soit masquée...
Bonsoir
Peut_être en ajoutant une feuille d'affichage qui prendrait ses données dans la feuille actuelle par recherchev() uniquement si la valeur de la cellule est différente de 0 ?
Peut_être en ajoutant une feuille d'affichage qui prendrait ses données dans la feuille actuelle par recherchev() uniquement si la valeur de la cellule est différente de 0 ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
G.David
Messages postés
768
Date d'inscription
vendredi 21 novembre 2003
Statut
Membre
Dernière intervention
1 juin 2020
203
3 mars 2009 à 11:32
3 mars 2009 à 11:32
cfeci fait ce que tu demandes lorsque tu entre 0 dans une cellule la validation par entrée (si entrée renvoies à la ligne en dessous ce qui est généralement le cas en standard)
dans le code de la feuille
dans le code de la feuille
Private Sub Worksheet_Change(ByVal Target As Range) If ActiveCell.Offset(-1, 0).Value = 0 Then ActiveCell.Offset(-1, 0).EntireRow.Hidden = True End If End Sub
Bonjour David, merci pour la reponse, mais je n'arrive pas a lancer la macro, il manque quelque chose et comme je suis debutant en la matiere, je ne trouve pas; j'ai fait un "copie" "colle" pour importet la formule dans le "visual basic" et quand je clique sur "Executer/sub user form" la formule n'apparait pas dans la fenetre??
Pourrais-tu me depanner avec ceci?
Merci d'avance
Maurice
Pourrais-tu me depanner avec ceci?
Merci d'avance
Maurice
arrial
Messages postés
1753
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
29 décembre 2023
250
3 mars 2009 à 13:48
3 mars 2009 à 13:48
… je pense que c'est possible avec un filtre automatique, et, pour que ce soit simple à utiliser, mettre une macro filtrage/défiltrage sur un bouton …
→ est différent de ""
renvoie les valeurs non vides, par exemple
G.David
Messages postés
768
Date d'inscription
vendredi 21 novembre 2003
Statut
Membre
Dernière intervention
1 juin 2020
203
>
momo
3 mars 2009 à 17:13
3 mars 2009 à 17:13
losrque tu ouvres VBA
tu as à gauche les feuilles du classeur qui apparaissent en icône
tu cliques sur la feuil1
dans la fenêtre de l'éditeur tu cliques sur général et tu sélectionnes Worksheet
c'est ici que tu colles le code
après dans ta feuille quand tu entres un 0 et que tu fait entrée la ligne se masque
ce sont les macros événementielles
tu as à gauche les feuilles du classeur qui apparaissent en icône
tu cliques sur la feuil1
dans la fenêtre de l'éditeur tu cliques sur général et tu sélectionnes Worksheet
c'est ici que tu colles le code
après dans ta feuille quand tu entres un 0 et que tu fait entrée la ligne se masque
ce sont les macros événementielles
momo
>
G.David
Messages postés
768
Date d'inscription
vendredi 21 novembre 2003
Statut
Membre
Dernière intervention
1 juin 2020
3 mars 2009 à 17:30
3 mars 2009 à 17:30
Rebonjour David,
OK pour mettre la macro en place sur la feuille en question; mais du coup si je rentre la valeur "0" ceci me masque la ligne, et donc:
* comment faire pour faire reapparaitre les lignes pour d'autres eventuelles saisies?ou au moins une ligne ?
OK pour mettre la macro en place sur la feuille en question; mais du coup si je rentre la valeur "0" ceci me masque la ligne, et donc:
* comment faire pour faire reapparaitre les lignes pour d'autres eventuelles saisies?ou au moins une ligne ?
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 686
>
momo
3 mars 2009 à 17:48
3 mars 2009 à 17:48
bonjour
comment faire pour faire reapparaitre les lignes pour d'autres eventuelles saisies?ou au moins une ligne ?
Il me semble que c'est exactement ce que j'avais dit ici et il me semble que cette question n'a pas été suffisamment réfléchie.
comment faire pour faire reapparaitre les lignes pour d'autres eventuelles saisies?ou au moins une ligne ?
Il me semble que c'est exactement ce que j'avais dit ici et il me semble que cette question n'a pas été suffisamment réfléchie.
momo
>
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
3 mars 2009 à 18:18
3 mars 2009 à 18:18
Bonjour gbinforme,
pour moi ce n'est pas utopie car la solution d'Arrial ( la macro) me permet de "trier par non vide" ce qui a pour effet de supprimer les vides et de "tous" ce qui a pour effet de reafficher toutes les lignes, meme les vides.
Donc en ce qui me concerne cette solution repond tres bien a ma demande
Merci quand meme de t'etre interesse au sujet
pour moi ce n'est pas utopie car la solution d'Arrial ( la macro) me permet de "trier par non vide" ce qui a pour effet de supprimer les vides et de "tous" ce qui a pour effet de reafficher toutes les lignes, meme les vides.
Donc en ce qui me concerne cette solution repond tres bien a ma demande
Merci quand meme de t'etre interesse au sujet
G.David
Messages postés
768
Date d'inscription
vendredi 21 novembre 2003
Statut
Membre
Dernière intervention
1 juin 2020
203
3 mars 2009 à 17:20
3 mars 2009 à 17:20
remarques ce n'est pas sur que ça marche en dehors de la saisie il faut que je rejette un œil au truc. Par contre: est ce qu'il faut traiter une plage où sont déjà entrés les zéros . Ce qui serait plus facile par macro lancer à l'activation de la page
arrial
Messages postés
1753
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
29 décembre 2023
250
3 mars 2009 à 17:26
3 mars 2009 à 17:26
Pour faire simple, j'ai fait une colonne de test en colonne H (Field:=8)
H1="test" (la ligne 1 contient les titres de colonnes)
H2=NBVAL(A2:G2)
On tire la formule de H2 vers le bas, autant que nécessaire, pour s'appliquer à toutes les lignes (cela pourrait se faire avec une macro)
Sub filtrer()
Cells.Select
Selection.AutoFilter
Range("A1").Select
Selection.AutoFilter Field:=8, Criteria1:="<>0,0", Operator:=xlAnd
End Sub
Sub afficher()
Cells.Select
Selection.AutoFilter
Range("A1").Select
End Sub
Tu peux mettre un bouton avec le texte FILTRER et lui affecter (clic-droit) la macro filtrer(), puis un autre avec le texte AFFICHER et la macro afficher().
Tu peux ajuster le n° de ta colonne de test dans <Field:=8>, en remplaçant 8 par le rang de ta colonne …
Rebonjour Arrial, merci pour la reponse
J'ai pu mettre en place la macro et cela marche;
mais j'ai pas compris le truc de colonne de test en colonne H (field:=8)
ok pour :H1=test
ainsi que : H2=NBVAL(A2:G2)
si tu peux m'eclairer sur le 1er point ( H( field:=8) ??????????????????
Merci
J'ai pu mettre en place la macro et cela marche;
mais j'ai pas compris le truc de colonne de test en colonne H (field:=8)
ok pour :H1=test
ainsi que : H2=NBVAL(A2:G2)
si tu peux m'eclairer sur le 1er point ( H( field:=8) ??????????????????
Merci
arrial
Messages postés
1753
Date d'inscription
mardi 11 mars 2008
Statut
Membre
Dernière intervention
29 décembre 2023
250
4 mars 2009 à 07:39
4 mars 2009 à 07:39
"mais j'ai pas compris le truc de colonne de test en colonne H (field:=8)
ok pour :H1=test
ainsi que : H2=NBVAL(A2:G2) "
► je réserve la ligne 1 aux titres de colonne. Je choisis de fabriquer une colonne de critère de filtrage en colonne H, et je rentre en titre de colonne 'test' : j'aurais pu mettre n'importe quoi ('toto') ; c'est juste pour respecter l'existence d'un titre de colonne
► nbval(a2:g2) va totaliser le nombre de cellules contenant quelque chose dans la ligne 2 (de la colonne A à la colonne précédent H)
► il ne reste plus qu'à filtrer sur toutes les lignes ne contenant pas la réponse '0', signifiant que la ligne est vide …
Il y a sûrement des méthodes plus élégantes avec 'WorkSheet' par exemple, mais je ne me suis pas appesanti sur le problème.
@+
ok pour :H1=test
ainsi que : H2=NBVAL(A2:G2) "
► je réserve la ligne 1 aux titres de colonne. Je choisis de fabriquer une colonne de critère de filtrage en colonne H, et je rentre en titre de colonne 'test' : j'aurais pu mettre n'importe quoi ('toto') ; c'est juste pour respecter l'existence d'un titre de colonne
► nbval(a2:g2) va totaliser le nombre de cellules contenant quelque chose dans la ligne 2 (de la colonne A à la colonne précédent H)
► il ne reste plus qu'à filtrer sur toutes les lignes ne contenant pas la réponse '0', signifiant que la ligne est vide …
Il y a sûrement des méthodes plus élégantes avec 'WorkSheet' par exemple, mais je ne me suis pas appesanti sur le problème.
@+
Bonjour, avant tout + specialement MERCI a Arrial et David pour le soutien sur ce probleme; les solutions proposees sont interressantes ( cela me permet d'appprendre a gerer les macros, en connaitre de nouvelles etc.....) mais ne repondent pas a mon probleme initial et je pense que je dois reprendre depuis le depart:
* on part d'une feuille "tarifs" sur laquelle on rentre:
a1:code b1: designation c1: unitees d1: P.U H.T e1: TVA f1: TTC
En A2, a3,a4 etc.... tu rentres un code de ref genre :1,2,3,4 etc....
En E1 tu fais le calcul du montant de la TVA
En F1 tu fais le total TTC
Ces formules tu les copies vers le bas jusqu'environ disons A300 ( pour pas etre limite dans les enregistrements)
Donc ensuite tu veux ne pas faire apparaitre les cellules vides ( ref a la maccro de David, qui marche, mais tu dois entrer la valeur "0" dans toutes les cases vides une premiere fois!!!!!!!!!!!!!!)
Pour une nouvelle saisie, tu peux faire apparaitre toutes les cases en appliquant la macro de Arrial, et tu cliques sur "tout"( afficher) et tu recuperes la feuille complete, qui une fois les nouvelles donneees enregistrees, peut etre refiltree grace a cette meme macro selon tes choix ( jusqu'a ce point super!!!!!!!!!)
* Ensuite tu as une deuxieme feuille " Calcul" sur laquelle tu veux :
. Faire reapparaitre les colonnes A et B( ou une autre de ton choix) mais qui ont des valeurs, pas celles vide .
Si on peut avancer sur ce sujet dans un premier temps ce serait super; par aileurs je voulais vous informer que je vis au Canada ( Ontario du Nord) GMT -6, donc si je ne reponds pas toujours de suite, ne m'en vouler pas .
Merci pour le support
* on part d'une feuille "tarifs" sur laquelle on rentre:
a1:code b1: designation c1: unitees d1: P.U H.T e1: TVA f1: TTC
En A2, a3,a4 etc.... tu rentres un code de ref genre :1,2,3,4 etc....
En E1 tu fais le calcul du montant de la TVA
En F1 tu fais le total TTC
Ces formules tu les copies vers le bas jusqu'environ disons A300 ( pour pas etre limite dans les enregistrements)
Donc ensuite tu veux ne pas faire apparaitre les cellules vides ( ref a la maccro de David, qui marche, mais tu dois entrer la valeur "0" dans toutes les cases vides une premiere fois!!!!!!!!!!!!!!)
Pour une nouvelle saisie, tu peux faire apparaitre toutes les cases en appliquant la macro de Arrial, et tu cliques sur "tout"( afficher) et tu recuperes la feuille complete, qui une fois les nouvelles donneees enregistrees, peut etre refiltree grace a cette meme macro selon tes choix ( jusqu'a ce point super!!!!!!!!!)
* Ensuite tu as une deuxieme feuille " Calcul" sur laquelle tu veux :
. Faire reapparaitre les colonnes A et B( ou une autre de ton choix) mais qui ont des valeurs, pas celles vide .
Si on peut avancer sur ce sujet dans un premier temps ce serait super; par aileurs je voulais vous informer que je vis au Canada ( Ontario du Nord) GMT -6, donc si je ne reponds pas toujours de suite, ne m'en vouler pas .
Merci pour le support