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 :

[VBA-E]arrondisup en VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 92
    Par défaut [VBA-E]arrondisup en VBA
    Bonjour a tous

    Et oui je ne peut me passer de vous, me revoila après cette petite pause.

    Bon, ayant terminer de développer mes scripts depuis 2 semaines, je me suis enfin decider à les simplifier un peu.

    Pour cela j'aimerai calculer mon nombre de tranche de façon la plus simple qui soit, sa fonctionne en calcul, mais je n'arrive pas à le retranscrir en VBA.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub NbTr()
     
    Dim NbTr As Integer
    Dim NBfinal As Long
     
    Nbdep = Cells(1, 3).Value
    NBfinal = Cells(65536, 3).End(xlUp).Row
    NBfin = Cells(NBfinal, 3).Value
    Nbval = ((NBfin - Nbdep) / 2) / 60
    Cells(9, 10).Value = Nbval
     
    '=ARRONDI.SUP(ARRONDI.SUP(Nbval;0)/2;0)
     
    End Sub
    arrondi.sup je n'arrive pas à le mettre en VBA

    Help me

    Merci

  2. #2
    Membre éprouvé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Par défaut
    tu as essayé avec Cells(x,y).FormulaLocal ?

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    En VBA, qu'il a dit...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Evaluate("= ROUNDUP(12.75,0)")
    Regarde dans Excel pour ce qui est de la syntaxe d'ARRONDI.SUP et dans VBA à Evaluate qui permet d'utiliser "certaines" formules d'Excel

  4. #4
    Expert éminent


    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
    Par défaut
    avec WorkSheetfunction ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    With WorksheetFunction
     MaValeur = .RoundUp(.RoundUp(Nbval, 0) / 2, 0)
     End With

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Merci bbil. J'ai appris quelque chose, je me coucherai moins bête
    Mais, as-tu essayé ta formule ?
    - Elle fonctionne parfaitement, pas de problème.
    - Elle donne bien les résultats correspondant à ce qu'on demande, pas de problème non plus
    Cependant, je déconseillerais d'enchaîner plusieurs fois RoundUp
    Essaie ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Nbval = 12.1
        With WorksheetFunction
            MaValeur = .RoundUp(.RoundUp(Nbval, 0) / 2, 0)
        End With
        MsgBox MaValeur
    Juste pour dire

  6. #6
    Expert éminent


    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
    Par défaut
    Citation Envoyé par ouskel'n'or
    Merci bbil. J'ai appris quelque chose, je me coucherai moins bête
    Mais, as-tu essayé ta formule ?
    - Elle fonctionne parfaitement, pas de problème.
    - Elle donne bien les résultats correspondant à ce qu'on demande, pas de problème non plus
    Cependant, je déconseillerais d'enchaîner plusieurs fois RoundUp
    Essaie ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Nbval = 12.1
        With WorksheetFunction
            MaValeur = .RoundUp(.RoundUp(Nbval, 0) / 2, 0)
        End With
        MsgBox MaValeur
    Juste pour dire
    ? ben cela fait 7 ..? et alors.. je vois pas le probléme..?

    cela aussi :
    Citation Envoyé par baptbapt
    ...
    '=ARRONDI.SUP(ARRONDI.SUP(Nbval;0)/2;0)
    ...

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

Discussions similaires

  1. [VBA-E] tri sur VBA pour Excel
    Par mariedrouin dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 21/05/2006, 13h32
  2. [VBA-E]Selection en VBA
    Par toniox dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/05/2006, 09h49
  3. [VBA-E]Executer fonction VBA sur Excel sans activer la macro
    Par marie10 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 19/01/2006, 14h34
  4. [Vba] BDD : Excel + Access + Vba
    Par Emcy dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/11/2005, 10h23
  5. [VBA-E] lien en VBA et fonction generatrice
    Par Smoke666 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/07/2004, 11h47

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