Suppression cellules avec décalage

Résolu
athizy Messages postés 24 Statut Membre -  
athizy Messages postés 24 Statut Membre -
Bonjour a tous,
J'aimerai savoir comment en fonction d'une valeur dans une colonne, excel me supprime automatiquement certaines cellules tout en me décalant mes cellules vers le haut.
Ci-joint mon fichier avec la condition de suppression : rendu "OUI"

http://www.cijoint.fr/cjlink.php?file=cj201003/cij2MST2zy.xls

Si vous avez des idées.
Merci d'avance.
Cordialement
Configuration: Windows XP / Safari 532.5

12 réponses

  1. piopicolo Messages postés 1422 Statut Membre 200
     
    Perso, j'essayerais de faire une macro :
    - faire un tri des lignes sur la colonne "rendu"
    - puis chercher la première ligne "OUI"
    - supprimer toute les lignes à partir du premier "OUI".

    A+ 
    0
  2. athizy Messages postés 24 Statut Membre
     
    Je suis entrain de chercher la macro qui correspond le mieux, cependant je voudrais pouvoir supprimer que les cellules et non la ligne en entière.
    0
  3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      Salut michel_m,
      Je me serais fait avoir comme un débutant??

      En même temps ça ne doit pas être la première fois.
      Bonne journée à toi
      0
  4. athizy Messages postés 24 Statut Membre
     
    Merci pour ta sage réponse michel_m.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. athizy Messages postés 24 Statut Membre
     
    Doucement les cocos.
    Je suis tranquillement au boulot et ne connais pas se Geoda.

    Autrement dis se n'est pas la ligne que je veux supprimer mais mes cellules et sans décalage. J'ai ce programme mais il me fait un décalage de mes cellules vers la gauche.
    Comment l'éviter?

    Sub EffAceLigne()
    Dim i As Long
    Application.ScreenUpdating = False
    For i = Range("D65536").End(xlUp).Row To 2 Step -1
    If Cells(i, 4) = "OUI" Then Range("A" & i & ":" & "D" & i).Delete
    Next i
    Application.ScreenUpdating = True
    End Sub

    Merci d'avance.
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      Remplacer ".Delete" par .Clearcontents

      ps : le "les cocos" était vraiment superflu! et avoue franchement que la similitude des sujets portait à confusion.
      0
  7. athizy Messages postés 24 Statut Membre
     
    Je ne dis pas le contraire, ce fut juste une question de hasard.
    Merci pour le .Clearcontents la macro fonctionne correctement.
    Bonne continuation a vous.
    Cordialement.
    0
  8. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    De toutes façons, il y a aussi la même question, et pas de veoda, des réponses sur DVP et XLD (et l'origine du OUI et Non sur XL-pratique )....
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      ?? Je ne te comprends pas là : des réponses sur DVP et XLD??
      0
  9. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      oui pas faux. Je n'ai cependant pas une vision aussi large que toi, me contentant d'un forum...
      Bonne continuation
      0
  10. athizy Messages postés 24 Statut Membre
     
    Bien entendu mon but étant de trouver une solution à mon fichier excel et par conséquent à ma base de donnée. je cherche des solutions sur le maximum de forums possible ayant d'autre objectifs à répondre lors de ma journée de travail et n'ai pas le temps de m'occuper des soucis de concurrence entre les forums que cela n'en déplaise à Michel_m.

    Bonne continuation à vous.
    0
  11. athizy Messages postés 24 Statut Membre
     
    Voici une solution qui convient.

    Sub Macro1()
    Range("A1").Select
    DerLigne = Selection.End(xlDown).Row
    For i = DerLigne To 2 Step -1
    If Cells(i, 4).Value = "OUI" Then
    Range("A" & i & ":D" & i).Select
    Selection.Delete Shift:=xlUp
    End If
    Next

    End Sub

    Bonne continuation.
    0
  12. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Le principal, c'est que plusieurs bénévoles bossent pour toi par solidarité, pas vrai ?

    ayant d'autre objectifs à répondre lors de ma journée de travail

    hé bé, au moins, tu ne te prends pas au sérieux, tes collègues, pardon! tes subalternes, doivent se réjouir quotidiennement de te côtoyer
    0
  13. athizy Messages postés 24 Statut Membre
     
    Pauvre enfant.
    A quoi sert un forum a ton avis? De plus la solution je l'ai trouvé avec un de mes collègues qui se réjouit de tes messages.
    Aurais-je touché à ton intégrité ?
    Un grand merci à toi pour ton aide et pour tes solutions pertinentes.
    Au plaisir mich mich.
    0