Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Suppression Interligne

  • Initiateur de la discussion Initiateur de la discussion t70527t@yahoo.fr
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

t70527t@yahoo.fr

Guest
Bonjour à Tous

Nouveau projet…. mais toujours des problèmes de suppression de ligne.

Voila sur une feuille pour des raisons de présentation j’ai une ligne avec des informations et dessous une ligne vide (voir Fichier joint).

Dans le projet les utilisateurs doivent supprimer les lignes via une Listbox à choix multiple.
Pour éviter un amoncèlement de lignes vide j’ai créé plusieurs macros
1- je supprime par une macro à l’ouverture du classeur ces lignes vides (cela prend beaucoup de temps)
2- L’utilisateur fait sa sélection
3- Quand l’utilisateur sort du projet par une macro intercale des lignes vides

Je voudrai savoir si c’est possible quand l’utilisateur supprime une ou des lignes via la ListBox que la ligne vide positionnée dessous ou dessus soit supprimé en même temps afin d’éviter les temps de suppression et d’insertion de ces lignes vides.


Merci pour votre Aide
Cordialement
 

Pièces jointes

Re : Suppression Interligne

Bonjour thierry,

Ton code ne fonctionne pas sur mon poste (il manque plusieurs éléments), mais après mûre réflexion je te propose de le modifier comme suit :

Code:
Private Sub CommandButton3_Click()
Dim i As Integer
Dim Plage As Range
Dim Ligne As Range
Dim lig As Range
Dim Lignes As Range
Dim Lignes1 As Range
Dim c As Range
Dim adr1 As String
    With Worksheets("Powers-P")                                                    '--Début de la recherche des items cochés dans la ListBox1--
    
    Set Plage = .Range("C16:C" & .Range("C" & .Rows.Count).End(xlUp).Row)
    End With

    With UserForm1.ListBox1
          For i = 0 To .ListCount - 1
            If .Selected(i) Then
                Set c = Plage.Find(.List(i), LookIn:=xlValues, lookat:=xlWhole, searchorder:=xlByRows)
                If Not c Is Nothing Then
                    adr1 = c.Address
                    Do
                        If Ligne Is Nothing Then Set Ligne = c Else Set Ligne = Union(Ligne, c)
                        Set c = Plage.FindNext(c)
                    Loop While Not c Is Nothing And c.Address <> adr1
                End If
            End If
        Next i
    End With                                                                        '--Fin de la recherche des items cochés dans la ListBox1--
    If Not Ligne Is Nothing Then
[B][COLOR="RoyalBlue"]       Range("A" & ligne.Row & ":A" & ligne.Row + 1).EntireRow.Delete[/COLOR][/B]
       Call tyty
      
       '--Suppression des lignes dans la feuille et de l'Item dans de la ListBox--
        
       'UserForm2.CommandButton1.Visible = False                                     '--Masque le bouton suppression de la feuille "POWERS-P6" dans l'UserForm2--
    End If

Ainsi, la ligne sélectionnée et la ligne du dessous seront-elles effacées en une seule opération.

Espérant avoir répondu.

Cordialement.
 
Re : Suppression Interligne

Bonjour

L'exercice est intéressant mais honnêtement est-ce bien raisonnable de s'embêter à mettre ou ôter des interlignes qui enlèvent toute possibilité de trier, filtrer, et mille autres choses, pour un poil de cosmétique ?

Je sais, les goûts et les couleurs, ça ne se discute pas, mais perdre 95% des facilités d'Excel ... je trouve ça dommage.

J'ai dû abuser du kawa...
 
Re : Suppression Interligne

bonjour à tous,

j'allais faire pil poil la même remarque que Chris
- des lignes vides pour égayer la présentation d'un formulaire de saisie comme tu l'as fait ligne 1 à 12, mais sinon :
- une feuille avec uniquement les données (une colonne par item / champ, ce qui permet de faire des calculs, des tris, des filtres ...)
- une feuille avec les résultats, les boutons ... et tout ce qui va bien avec l'appli

tout le reste ne sera qu'une source d'emm... tout au long de la vie de ce classeur, crois-en notre bonne vielle expérience
 
Re : Suppression Interligne

Bonjour le Forum,

Chris, Mutzik,

Vous avez parfaitement raison de vos conseils avisés.

Une solution élégante pour "simuler" une ligne vide est d'augmenter la hauteur des lignes et d'ajuster l'alignement vertical sur le haut, le milieu ou le bas des cellules.

Cordialement.
 
Re : Suppression Interligne

re,
Papounet,
pourquoi simuler une ligne vide, une feuille de données doit rester une feuille de données, la mise en forme de l'impression devant se faire sur la feuille de sortie (ou autre)
mais bon, ces remarques n'engagent que moi (et je suis d'accord avec moi-même, c'est vous dire ... lol)
 
Re : Suppression Interligne

Re mutzik,

Quand je dis simuler, je veux bien dire simuler : la ligne vide n'existe pas, la méthode que je préconise est uniquement d'aérer le tableau à l'écran. Celà ne change en rien l'agencement du tableau qui ne comporte pas de ligne vide entre chaque ligne de donnée, ce qui rejoint bien ta "philosophie Excel".

Cordialement.
 
Re : Suppression Interligne

Bonjour à Tous

Merci de vos avis; effectivement j'ai supprimé les interlignes et augmenté la taille des lignes et c'est beaucoup mieux, visuellement et pour faire les tries.

Donc Fil résolu.


Merci à tous de votre aide et conseil. 😉
Bonnes fêtes de Noël et meilleurs vœux pour L'année 2010.🙂
Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
9
Affichages
538
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…