Ajustement auto de la hauteur d'une ligne en VBA
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Ajustement auto de la hauteur d'une ligne en VBA



  1. #1
    v_711

    Ajustement auto de la hauteur d'une ligne en VBA


    ------

    Bonjour,

    Je suis tout à fait novice dans le langage VBA, mais je suis déjà parvenu en partie à mon but.
    Dans un tableau Excel, je cherche à faire en sorte que la hauteur de chaque ligne s'adapte automatiquement au contenu de la cellule sélectionnée (le contenu étant suceptible de varier).
    Pour cela, j'ai réussi à bidouiller le code ci-dessous :

    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
      
      If Not Intersect(Target, Target.Worksheet.Range("F6")) Is Nothing Then setHeights
      
        Dim nextTarget As Range
    
        Set nextTarget = Range(Selection.Address)
              
        If Target.Row = ("21") Then
            Target.Rows.Select
            Target.Rows.AutoFit
            nextTarget.Select
        End If
                
        If Target.Row = ("22") Then
            Target.Rows.Select
            Target.Rows.AutoFit
            nextTarget.Select
        End If
                
        If Target.Row = ("23") Then
            Target.Rows.Select
            Target.Rows.AutoFit
            nextTarget.Select
        End If
                
        If Target.Row = ("24") Then
            Target.Rows.Select
            Target.Rows.AutoFit
            nextTarget.Select
        End If
    
    'et ainsi de suite jusqu'à la dernière ligne de mon tableau (25 lignes pourl'instant)
    End Sub
    C'est assez redondant, mais cela fonctionne comme je le souhaite.
    Auriez-vous une solution qui permette d'appliquer cette opération sur toute la plage de cellules et non pas par cellules individuelles ?
    Mes quelques tentatives n'ont rien donné jusqu'à présent.

    Par avance merci pour votre aide,

    -----
    Dernière modification par JPL ; 25/07/2016 à 14h45. Motif: Remplacement de la balise Quote par la balise Code

  2. #2
    cherbe

    Re : Ajustement auto de la hauteur d'une ligne en VBA

    Bonjour
    Je ne crois pas qu'il soit nécessaire d'opérer ligne par ligne. Je ne crois pas non plus qu'il soit nécessaire de sélectionner préalablement la ligne. Tu pourrais modifier toutes les lignes en une seule fois :
    Code:
    Rows("1:25").AutoFit 'modifier les lignes 1 à 25
    Je n'ai pas Excel sous la main donc pas testé cette instruction
    Si tu tiens à travailler ligne par ligne, tu peux le faire dans une boucle FOR :
    Code:
    For compteur = 1 to 25
       Rows(compteur).AutoFit
    next compteur
    Pour le voir travailler, va dans la fenêtre de code VBA et appuie autant de fois sur F8 que de lignes à modifier. C'est le mode pas à pas

Discussions similaires

  1. régulation débit/hauteur à hauteur fixe
    Par Sennenryuu dans le forum Physique
    Réponses: 3
    Dernier message: 22/04/2009, 14h27
  2. [Biochimie] Ajustement de pH
    Par invite15518c50 dans le forum Biologie
    Réponses: 3
    Dernier message: 17/03/2009, 10h35
  3. Ajustement de pH
    Par inviteb322f4ae dans le forum Chimie
    Réponses: 5
    Dernier message: 07/02/2008, 15h42
  4. Ajustement de loi
    Par inviteb7e0b4e7 dans le forum Mathématiques du supérieur
    Réponses: 12
    Dernier message: 16/08/2007, 10h52