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 :

appliquer une formule à +sieurs cellules excel


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 10
    Points : 6
    Points
    6
    Par défaut appliquer une formule à +sieurs cellules excel
    bonjour la communauté,
    comment peut on faire pour appliquer une formule à une plage de cellules excel? par exemple je veux mettre dans la plage (b2:b50) la formule suivante qui consiste à ajouter 1 à toutes les cellules (A2:A50)
    c-a-d: b2=a2+1 b3=a3+1

    merci d'avance à tous ceux qui prendront le temps de me lire.

  2. #2
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    ok merci c'est vraiment tout simple mais comment puis récupérer la feuille excel dans visual basic?

  3. #3
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut Re: appliquer une formule à +sieurs cellules excel
    Citation Envoyé par ramsesthebest
    bonjour la communauté,
    comment peut on faire pour appliquer une formule à une plage de cellules excel? par exemple je veux mettre dans la plage (b2:b50) la formule suivante qui consiste à ajouter 1 à toutes les cellules (A2:A50)
    c-a-d: b2=a2+1 b3=a3+1

    merci d'avance à tous ceux qui prendront le temps de me lire.
    Je comprendss pas ...
    - tu ve le faire par programmation VBA ...?
    - tu ve que les cellues B2:B50 contienne résulat de la somme à un moment donné ou la formule du style A2+1...

    sans programmation :
    tu ecris la formule =A2+1 dans cellule B2 ... puis tu étire la cellule B2 , jusqu'en B50 ... ce qui as pour effet de recopier vers le bas...


  4. #4
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    je veux le faire par programmation,
    en fait dans le programme il faut pouvoir récupérer le classeur dans lequel se trouve la feuille.
    il faudra que le programme puisse incrémenter les valeurs de la colone A et les stocker dans la colone B.
    et ce par programmation.

  5. #5
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 10
    Points : 6
    Points
    6
    Par défaut
    en fait je voulais le faire sous VB mais je pense que VBA est plus approprié.
    en fait je dois écrire du code pour vérifier que les nombres d'une plage de cellules sont tous multiples de 60 sinon il faut ajouter le nombre qu'il faut pour qu'il soit multiple et pour ne pas écraser les anciennes valeurs il faut insérer les nouvelles dans une autre plage de cellules.

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    tien un peu de code ... à adapter peu-être...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub test()
     Dim r As Range 'Range source à tester
     Dim c  As Range 'Cellule du range source
     Dim i As Integer ' Valeur temporaire de calcul
     Set r = Range("A2:A50")
     
     For Each c In r
      i = c.Value
       While i Mod 60 <> 0
         i = i + 1
       Wend
      c.Offset(0, 1).Value = i 'Affecte valeur à cellule a coté ..
     
     Next
     
    End Sub

Discussions similaires

  1. [XL-2003] Appliquer une formule a plusieurs autre fichiers Excel
    Par Chillon dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/10/2010, 15h50
  2. [VBA-E] Appliquer une formule si cellule non vide.
    Par zeralium dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/03/2007, 19h58
  3. Réponses: 2
    Dernier message: 03/05/2006, 22h34
  4. concaténation en vba dans une formule de cellule Excel
    Par kernel57 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 04/12/2005, 22h58
  5. [D7-EXCEL2000] Formule dans cellule Excel qui ne se calcule pas
    Par Albertolino dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 09/09/2003, 14h18

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