Aide pour la fonction SI

Bonjour à tous, je vous écris car deux problèmes se pose à moi.

* Le premier est sans doute assez simple.

J'ai une colonne A excel avec des valeurs allant de 1 à 10.

J'aimerais créer une nouvelle colonne B en donnant:

  • la valeur 1 si la valeur de A est comprise entre 7 et 10
  • la valeur 2 si la valeur de A est comprise entre 5 et 6
  • la valeur 3 si la valeur de A est comprise entre 1 et 4.

Je pense qu'il est possible de faire ça avec la fonction SI, mais je ne maitrise pas très bien cette dernière.

*Mon second problème est plus compliqué.

J'ai pris une impression d'écran car c'est un peu compliqué. (impression d'écran en PJ)

La colonne en question est "Type schedule Code"

Je souhaite enlever toutes les lignes avec les valeurs 0 pour pouvoir étudier seulement celles avec la valeur 1, mais il faut donc aussi que les lignes des autres colonnes disparaissent aussi.

Par exemple, je veux que R2 disparaisse dans l'exemple, mais que par la même occasion N2, O2, P2, Q2 disparaissent aussi.

Y-a-il un code pour supprimer sinon carrément la ligne entière du fichier excel si la valeur de R2=0? Et ceci pour toute la feuille car il y a 17 000 lignes.

Merci d'avance!!!

Damien.

captura1

Bonjour,

Pour ton souci 1 : essaie avec cette formule en B1

=SI(ET(A1>=7;A1<=10);1;SI(ET(A1>=5;A1<=6);2;SI(ET(A1>=1;A1<=4);3;"")))

formule à recopier vers le bas.

Pour ton souci 2, cette colonne contient une formule ou des valeurs ? Si ce sont des valeurs, tu commences à la ligne 2 ??

A te relire

Tes valeurs qui vont de 1 à 10 sont des valeurs entières ? si oui voici la réponse à tes questions :

cordialement

Bonjour à vous!!!

Le premier problème est résolu! Merci beaucoup!

Pour la deuxième, oui ce sont simplement des valeurs commençant à la ligne 2, pas de formules,

Re,

essaie avec ce code à placer en VBE dans un module :

Sub test()
Dim i As Integer
For i = Range("R" & Rows.Count).End(xlUp).Row To 2 Step -1
    If Range("R" & i) = 0 Then Rows(i).Delete
Next
End Sub

Si ok, merci de cloturer le fil en cliquant sur le V vert à coté du bouton EDITER

Amicalement

Salut Damien666 et le forum

* Le premier est sans doute assez simple.

Une proposition :
=SI(A2<1;"hors valeur";SI(A2<5;3;SI(A2<7;2;SI(A2<11;1;"hors valeur"))))

*Mon second problème est plus compliqué.

Effacer une ligne ne peut pas se faire par formule. Tu es obligée de créer un code VBA.

Toutefois il y a une solution plus simple : utiliser un filtrage.

Tu sélectionnes la la ligne 1 et tu mets un filtre automatique. (sous Excel 2003, Menu Données>>Fltrer>>filtre automatique)

Ensuite, tu utilises le menu déroulant qui apparaît dans la cellule concernée et tu mets une valeur de filtrage.

A+

Merci pour cette réponse si rapide!

J'ai fait du VBA en L2 mais j'ai depuis tout oublié, ce qui m'amène à une question qui va vous faire rire: Comment ouvre-t-on la fenêtre VBA?

Re,

vois ce lien avec l'explication --> https://forum.excel-pratique.com/post167930.html?

Amicalement

Edit Dan : vois aussi la proposition de Gorfael qui est intéressante. Cela ne te supprime pas tes lignes

Tout fonctionne! Merci les amis!

Rechercher des sujets similaires à "aide fonction"