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 :

Insertion formule par vba


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Points : 41
    Points
    41
    Par défaut Insertion formule par vba
    Bonjour,

    J'aimerais après avoir copier mes cellules insérer des formules dans la cells(d,4) et (d,5) mais ca j'ai jamais fait et ca bug...

    Comme j'utilise une variable J j'aimerais insérer cette variable dans ma formule pour qu'elle s'adapte automatiquement...

    mon code pour ça :


    Code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Workbooks("PRICE CHECK - WI.xls").Activate
        Sheets("TECH").Cells(d, 4).Formula = "=IF(B&d=0,"",SUMIF(ANAGRAFICHE!$B$2:$B$1100,B&d,ANAGRAFICHE!$C$2:$C$1100))"
     
    'et 
     
    Workbooks("PRICE CHECK - WI.xls").Activate
        Sheets("TECH").Cells(d, 4).Formula = "=IF(B&d=0,"",SUMIF(ANAGRAFICHE!$B$2:$B$1100,B&d,ANAGRAFICHE!$C$2:$C$1100))"
     
        Workbooks("PRICE CHECK - WI.xls").Activate
        Sheets("TECH").Cells(d, 4).Formula = "=IF(B&d=0,"",IF(D&d=C&d,"OK",(D&d-C&d)/D&d))"
    Merci d'avance !

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Points : 41
    Points
    41
    Par défaut
    En fait j'ai compris qu'il faut utiliser FormulaR1C1 mais je ne comprend pas du tout comment fonctionne ce truc...

    Any idea ?

    A+

  3. #3
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Workbooks("PRICE CHECK - WI.xls").Activate
        Sheets("TECH").Cells(d, 4).Formula = "=IF(B" & d & "=0,"",SUMIF...
    Ca marchera mieux comme ça. A corriger partout où tu as B&d, D&d et C&d.

    Par contre je n'ai pas vu de variable J

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Points : 2 443
    Points
    2 443
    Par défaut
    Salut nono le golfeur et le forum
    FormulaR1C1 : si tu n'as pa l'habitude d'utiliser ce système de notation, c'est pas la peine d'essayer

    J'aimerais après avoir copier mes cellules insérer des formules dans la cells(d,4) et (d,5) mais ca j'ai jamais fait et ca bug...

    Comme j'utilise une variable J j'aimerais insérer cette variable dans ma formule pour qu'elle s'adapte automatiquement...
    ????? variable D ou variable J ?!? That is the question !

    Code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Workbooks("PRICE CHECK - WI.xls").Activate
        Sheets("TECH").Cells(d, 4).Formula = "=IF(B&d=0,"",SUMIF(ANAGRAFICHE!$B$2:$B$1100,B&d,ANAGRAFICHE!$C$2:$C$1100))"
    ce que je comprends :
    tu veux copier la formule : (en D4 par exemple)
    =IF(B4=0,""SumIf((ANAGRAFICHE!$B$2:$B$1100,B4,ANAGRAFICHE!$C$2:$C$1100))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Sheets("TECH").Cells(d, 4).Formula = "=IF(B" & d & "=0,"""",SUMIF(ANAGRAFICHE!$B$2:$B$1100,B" & d & ",ANAGRAFICHE!$C$2:$C$1100))"
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Sheets("TECH").Cells(D, 4).FormulaLocal = "=SI(B" & D & "=0;"""";somme.si(ANAGRAFICHE!$B$2:$B$1100;B" & D & ";ANAGRAFICHE!$C$2:$C$1100))"
    Formula : Permet d'utiliser les formules habituelles (mais, à priori en anglais)
    Formulaloca :l Permet d'utiliser les formules de la langue des options régionnales

    Pour que des guillement apparaissent dans une chaîne, il faut les doubler
    Pour que tes variables soient exploitées dans une chaîne, il faut concaténer( non, ce n'est pas une insulte ) la partie avant, la variable, la partie après
    A+

  5. #5
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Août 2007
    Messages : 36
    Points : 51
    Points
    51
    Par défaut
    Salut Nono, et bonjour à tous,

    Est-ce que tu peux faire un copié/collé dans ce forum de la formule qui fonctionne dans ta cellule, et tamp pis si c'est une formuyle en italien, on essaiera de comprendre.

    A+
    Dam2P

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Points : 41
    Points
    41
    Par défaut
    LOL non celle la est en ANglais maintenant !

    Ca 'est ma formule que je veux insérer en D & d (d est la variable qui commence à la ligne 14 et descend de 1 en 1):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(B14=0;"";SUMIF(ANAGRAFICHE!$B$2:$B$1100;B14;ANAGRAFICHE!$C$2:$C$1100))
    et :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(B14=0;"";IF(D14=C14;"OK";(D14-C14)/D14))

    Merci, @+

  7. #7
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Essaie déjà ce qui a été proposé.

    Et si ça ne fonctionne pas : donne des explications.

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Points : 41
    Points
    41
    Par défaut
    Pour la première formule, ça fonctionne parfait merci !

    Pour la deuxième j'ai une erreur au milieu, je pige pas trop pourquoi ...

    Ci-dessous ma formule Excel et celle VBA :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(B14=0;"";IF(D14=C14;"OK";(D14-C14)/D14))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("TECH").Cells(d, 5).Formula = "=IF(B" & d & "=0,"""",IF(D"&d&"=C"&d&",""OK"",(D"&d&"-C"&d&")/D"&d&"))"
    Merci d'avance !

  9. #9
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 58

    Informations forums :
    Inscription : Août 2007
    Messages : 36
    Points : 51
    Points
    51
    Par défaut

    Tu y étais presque : il fallait juste séparer les "&" avec des espaces.
    essaie ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(D, 5).Formula = "=IF(B" & D & "=0,"""",IF(D" & D & "=C" & D & ",""OK"",(D" & D & "-C" & D & ")/D" & D & "))"
    @+

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

Discussions similaires

  1. Insérer une formule par VBA
    Par Carmiel dans le forum Excel
    Réponses: 7
    Dernier message: 13/12/2016, 22h55
  2. Erreur dans insertion formule par VBA
    Par Nanit6 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/01/2011, 18h33
  3. formule par VBA
    Par jackall dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/05/2009, 13h13
  4. [XL-2003] modif de formule par VBA
    Par shadok6 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/04/2009, 19h16
  5. Insertion de formules par VBA
    Par Livet dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/08/2007, 15h23

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