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

Macros et VBA Excel Discussion :

glisser une formule en VBA


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    technicien BE
    Inscrit en
    Juin 2016
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : technicien BE

    Informations forums :
    Inscription : Juin 2016
    Messages : 48
    Points : 36
    Points
    36
    Par défaut glisser une formule en VBA
    Bonjour,

    Je suis en train d'automatiser un tableau Excel pour insérer des lignes.
    Je bute sur une chose.

    J'ai des formules dans certaines cellules que j'aimerais avoir dans la nouvelle ligne.
    par exemple dans la cellule AA tel ligne j'ai cette formule: =STXT(B tel ligne;5;13)

    Ce que j'aimerais, c'est que quand je crée la ligne quelque soit la ligne (sauf 2 bien sûr) ça copie la formule du dessus mais avec le bon tel ligne.

    En clair si je crée une ligne en 5, il reprend la formule dans AA4 (=STXT(B4;5;13)) mais la transforme en =STXT(B5;5;13)

    J'espère être assez clair.

    Merci de votre aide.

    Florent

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 947
    Points : 5 173
    Points
    5 173
    Par défaut
    bonjour
    la demande n'est pas bien claire au moins pour moi
    mais si j'ai bien compris il suffit d’insérer un tableau structuré, les formules sont applicables automatiquement pour toutes les lignes même en cas d'évolution des données
    donc il suffit de sélectionner toutes les données puis onglet insertion puis tableau
    si ce n'est pas ce que tu cherches ...revenir avec un exemple et/ou une simulation du résultat attendu
    --------------------------------------------------------------*****----------------------------------------------------------------------------
    Bonne Continuation & Plein Succès
    Notre seul pouvoir véritable consiste à aider autrui avec modestie
    ______________________________________________________
    Pour dire merci, cliquer sur et quand la discussion est résolue, penser à cliquer sur le bouton

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 348
    Points : 1 971
    Points
    1 971
    Par défaut
    Salut,

    Passe par des tableaux structurés, ils font cela en natif
    (en plus d'être autrement plus versatile qu'une plage de cellules quelconque).

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    technicien BE
    Inscrit en
    Juin 2016
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : technicien BE

    Informations forums :
    Inscription : Juin 2016
    Messages : 48
    Points : 36
    Points
    36
    Par défaut
    Pour être plus clair, j'ai ultra simplifié le tableau pour vous le montrer.... Oui ok en faite j'ai tout viré sauf une formule.

    Pour faire simple sur mon exemple, lorsque je clique sur la ligne au dessus de laquelle je souhaite créer la nouvelle, tout fonctionne nickel.
    Ce qu'il me manque c'est la réécriture de la formule colonne G.

    j'espère que c'est plus clair avec le tableau.
    Fichiers attachés Fichiers attachés

  5. #5
    Membre éclairé Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 445
    Points : 704
    Points
    704
    Par défaut
    Hello,

    comme proposé par deedolith, un tableau structurés suffit.
    Si vous transformez votre exemple via le bouton "Mettre sous forme de tableau" et que vous modifiez la formule =STXT(A2;6;6) en =STXT([@N°Affaire];6;6) pas besoin d'autre chose

    la macro devient alors
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub New_line()
     
        Rows(ActiveCell.Row + 1).Insert Shift:=xlDown
        Rows(ActiveCell.Row + 1).Select
     
    End Sub
    D'ailleurs y'a t'il besoin d'une macro pour insérer une ligne ?

    Quand à l'enregistrement automatique toutes les 2 minutes, j'aime vraiment pas, surtout en mode développement, tout en sachant que Excel fait un enregistrement pour "au cas où"
    JièL
    Membre des AMIS
    Anti Macro Inutilement Superfétatoire

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 348
    Points : 1 971
    Points
    1 971
    Par défaut
    Citation Envoyé par Nain porte koi Voir le message
    Quand à l'enregistrement automatique toutes les 2 minutes, j'aime vraiment pas, surtout en mode développement, tout en sachant que Excel fait un enregistrement pour "au cas où"
    Sauf erreur de ma part, il me semble qu'Office 365 propose se genre d'option.

  7. #7
    Membre éclairé Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 445
    Points : 704
    Points
    704
    Par défaut
    Citation Envoyé par deedolith Voir le message
    Sauf erreur de ma part, il me semble qu'Office 365 propose se genre d'option.
    Tout a fait
    Pièce jointe 657783
    et l'avantage c'est qu'on peut quand même garder la version actuelle, l'enregistrement auto est un enregistrement à part qui est récupéré en cas de crash, et Excel propose de le conserver ou de rester sur la version qui avait été enregistré par l'utilisateur.
    Il me semblait que cette option était déjà présente dans 2016, mais c'est peut-être 2019... ou alors je me trompe
    JièL
    Membre des AMIS
    Anti Macro Inutilement Superfétatoire

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    technicien BE
    Inscrit en
    Juin 2016
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : technicien BE

    Informations forums :
    Inscription : Juin 2016
    Messages : 48
    Points : 36
    Points
    36
    Par défaut
    Bonjour,

    je sais bien qu'il y a plus simple pour créer une ligne sauf que j'ai une pagination a faire sur certaines cellules et pour pas me prendre la tête a chaque création je fait tout en macro.

    Concernant la formule =STXT([@N°Affaire];6;6), quand je la créer j'ai ce message:
    Pièce jointe 657819

    Je ne comprend pas ce qui est bloque.

  9. #9
    Membre éclairé Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 445
    Points : 704
    Points
    704
    Par défaut
    Re,

    la pièce jointe n'est pas lisible et en fait votre fichier serait plus utile
    JièL
    Membre des AMIS
    Anti Macro Inutilement Superfétatoire

  10. #10
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 506
    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 506
    Points : 16 430
    Points
    16 430
    Par défaut
    Bonjour à tous

    Citation Envoyé par Florent6744 Voir le message
    Bonjour,

    je sais bien qu'il y a plus simple pour créer une ligne sauf que j'ai une pagination a faire sur certaines cellules et pour pas me prendre la tête a chaque création je fait tout en macro.
    Donc tu réinventes l'eau tiède dans Excel avec du VBA forcément beaucoup moins efficace que ce qui est natif...
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  11. #11
    Membre éclairé Avatar de Nain porte koi
    Homme Profil pro
    peu importe
    Inscrit en
    Novembre 2023
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : peu importe

    Informations forums :
    Inscription : Novembre 2023
    Messages : 445
    Points : 704
    Points
    704
    Par défaut
    Citation Envoyé par 78chris Voir le message
    ... moins efficace que ce qui est natif...
    Chouette un AMIS
    JièL
    Membre des AMIS
    Anti Macro Inutilement Superfétatoire

Discussions similaires

  1. Insérer une formule par VBA
    Par Carmiel dans le forum Excel
    Réponses: 7
    Dernier message: 13/12/2016, 21h55
  2. [XL-2002] Problème de syntaxe sur une formule dans VBA
    Par beber_le_stagiaire dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 11/06/2009, 15h32
  3. [VBA-E] ecrire une formule en vba
    Par Huubb dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 25/01/2007, 14h15
  4. Paramétrer une formule en vba
    Par arnogef dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/08/2006, 11h48
  5. Copier une formule avec vba
    Par NAMORJOSE dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/05/2006, 00h12

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