IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Etendre une formule jusqu'en bas du tableau [XL-2016]


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Par défaut Etendre une formule jusqu'en bas du tableau
    Bonjour,

    J'ai trouvé cette macro pour étendre une formule dans le feuille "Données triées" jusqu'en bas de la colonne D depuis la cellule D2 mais seule la cellule D2 est créée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub etendreformule()
        Dim DernLigne As Long
        DernLigne = Range("D" & Rows.Count).End(xlUp).Row
     
        With Sheets("Données triées")
            .Range("D2").FormulaR1C1 = "=RC[-1] & "" "" & RC[-2]"
            .Range("D2").AutoFill .Range("D2:D" & DernLigne)
        End With
    End Sub
    Merci pour votre aide

  2. #2
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 548
    Par défaut
    Bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
          .Range("D2:D" & DernLigne).FormulaR1C1 = "=RC[-1] & "" "" & RC[-2]"
    suffit mais comme déjà dit ailleurs, travailler en tableau structuré (listobject) évite cela car les formules et les formats se recopient automatiquement sur les lignes utilisées, une fois définis sur la 1ère ligne de données...

  3. #3
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par franckb74 Voir le message
    seule la cellule D2 est créée
    Que contiennent les cellules en dessous de D2 ?
    Si elles sont vides (ce qui serait logique pour des cellules à remplir), la ligne DernLigne = Range("D" & Rows.Count).End(xlUp).Row va trouver D2, donc l'AutoFill remplira jusqu'à D2.

    Essaye plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DernLigne = ActiveSheet.UsedRange.Rows.Count
    ou bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DernLigne = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row

  4. #4
    Membre éclairé
    Homme Profil pro
    Responsable qualité
    Inscrit en
    Mars 2012
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable qualité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 341
    Par défaut
    En fait dans mon code il y avait juste une erreur il fallait remplacer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DernLigne = Range("D" & Rows.Count).End(xlUp).Row
    Par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DernLigne = Range("B" & Rows.Count).End(xlUp).Row
    Afin qu'il vérifie compte bien le nombre de ligne de la colonne B pour étendre la formule au même nbe de ligne pour la colonne D

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. étirer une formule jusqu'au bas
    Par huître dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 15/05/2011, 11h30
  2. [XL-2003] Etendre une formule
    Par spacesheep dans le forum Excel
    Réponses: 17
    Dernier message: 14/04/2010, 11h53
  3. etendre une formule a une colonne de longueur indetreminée
    Par floom dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/06/2008, 13h22
  4. copier une formule jusqu'à une cellule n (n variable)
    Par Bubale dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/04/2008, 23h46
  5. Etendre ma formule jusqu'à la xième ligne
    Par benoitbs dans le forum Excel
    Réponses: 4
    Dernier message: 30/01/2008, 15h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo