Suppr cellule vide à gauche

Résolu
Max -  
 Max -
Bonjour,

J'aimerais supprimer des cellules vides d'un tableau et rabbatre les cellules non vides vers la gauche, vous comprendrez mieux avec l'exemple ci joint :

Soit par maccro ou à l'aide d'un bouton..

http://cjoint.com/?3HfkiPsnRfK

9 réponses

  1. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Bonjour,

    Il y a t'il un début de macro ou autre que l'on puisse corriger ?
    0
  2. Max
     
    Personne aurait une astuce pour que ca fonctionne?
    0
  3. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  4. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bonjour,

    Tu souhaites partir de ton premier tableau ou du second pour obtenir le troisième???
    0
  5. Max
     
    Je souhaiterais partir du 1er pour arriver au 3e...
    Le second tableau s'est ce que j'ai actuellement et qui ne me convient pas a cause des vides...
    0
  6. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Bon.
    tu traces un bouton (!!! Contrôle activex par contrôle de formulaire) sur ta feuille.
    Tu double clic dessus
    Copie/colle ce code :
    Private Sub CommandButton1_Click()
    Decale_A_Gauche
    End Sub

    Sub Decale_A_Gauche()
    Dim Col As Integer
    For Col = 7 To 2 Step -1
    If Cells(4, Col).Value = "NON" Then Range(Cells(4, Col), Cells(4, Col).Offset(5, 0)).Delete Shift:=xlToLeft
    If Cells(10, Col).Value = "B" Then Range(Cells(10, Col), Cells(10, Col).Offset(3, 0)).Delete Shift:=xlToLeft
    Next Col
    End Sub


    revient dans ta feuille et sort du mode création;
    Puis teste
    0
  7. Max
     
    d'accord ! Merci

    J'ai trouvé une alternative avec une formule matricielle qui fonctionne
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      Et qu'elle est cette formule magique?
      0
  8. Max
     
    Voila en oubliant pas de valider en faisant Ctrl + MAJ +Enter :

    http://cjoint.com/?3HgpbQdr5Ui

    Bonne journée !
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      Ok.
      Merci.
      Je la place ici cela peux servir à d'autres...
      =SIERREUR(INDEX($B$5:$G$5;;PETITE.VALEUR(SI($B$4:$G$4="OUI";COLONNE($B$4:$G$4)-1);COLONNE()-1));"")
      0
    2. Max
       
      Très bien,

      Les -1 à la fin de la formule correspondent au numéro de la premiere colonne (B) dans notre cas.
      -2 si colonne début à partir de C ....
      0