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 :

Ajout d'une formule par code vba


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de Runsh63
    Homme Profil pro
    Contrôleur de gestion
    Inscrit en
    Mars 2011
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Contrôleur de gestion
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2011
    Messages : 476
    Points : 478
    Points
    478
    Par défaut Ajout d'une formule par code vba
    Bonjour,

    Tout d'abor, merci à toutes les personnes qui m'ont aidées depuis mon inscription. Grâce à leur patience et leurs conseils, j'ai compris les basiques et suis aujourd'hui à même d'écrire mes propres boucles... qui marchent !
    Allons aux faits : Vous qui êtes des pros de la programmation, vous arrive t-il dans vos macros d'insérer une formule Excel "classique. Pour mieux me faire comprendre, je vais illustrer avec un problème (qui n'en est pas un) auquel je suis confronté. Le début de ma macro est constituée de boucles afin de supprimer les lignes inutiles et structurer les données afin qu'elles soient exploitables par la suite. J'arrive au moment ou sur une colonne, je dois supprimer les espaces inutiles. D'où ma question, est-ce idiot de simplement écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(10,2).Formula = "=TRIM(RC[-7])"
    puis faier un Autofill ou bien est-ce que vous lui préférez un For Each Range In avec Next ?
    Pour info, j'ai lu la belle phrase de Mr Fauconnier mais là ma question est légèrement différente car nous sommes déja dans de la programmation en VB.

    Merci !

    Runsh

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonsoir
    3 propositions, je préfère la dernière (gain de temps)
    1. Boucle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim i As Integer
     
    For i = 2 To 100
        Range("J" & i).FormulaR1C1 = "=TRIM(RC[-7])"
    Next i
    2. Autofill
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Range("J2").FormulaR1C1 = "=TRIM(RC[-7])"
    Range("J2").AutoFill Range("J2:J100")
    3. Directement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("J2:J100").FormulaR1C1 = "=TRIM(RC[-7])"

  3. #3
    Membre confirmé Avatar de Runsh63
    Homme Profil pro
    Contrôleur de gestion
    Inscrit en
    Mars 2011
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Contrôleur de gestion
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2011
    Messages : 476
    Points : 478
    Points
    478
    Par défaut
    Bonjour Mercatog,

    Merci pour toutes tes solutions. J'étais parti sur la première puis ai basculé sur ta dernière solution, suivant ton conseil. C'est en effet plus rapide.
    Merci d'avoir pris le temps de poster tes façons de faire.

    Bonne journée !

    Runsh

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

Discussions similaires

  1. [XL-2010] Traduire une formule en code VBA
    Par thomasdu40 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/07/2012, 09h39
  2. [XL-2007] Ajouter une formule par code
    Par Nanais19 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/11/2011, 09h29
  3. Acces aux fonctions d'une DLL par code VBA
    Par GlamIS dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/09/2010, 15h59
  4. [VB 2005][DatagridView] Ajouter une ligne par code
    Par RaelRiaK dans le forum VB.NET
    Réponses: 3
    Dernier message: 23/01/2007, 22h54
  5. ajouter un utilisateur au groupe users par code VBA ?
    Par electrosat03 dans le forum Access
    Réponses: 2
    Dernier message: 12/01/2007, 17h00

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