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 :

Opérations (+,-, ..) sur variables tableau [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 26
    Points : 18
    Points
    18
    Par défaut Opérations (+,-, ..) sur variables tableau
    bonjour,

    j'ai une variable tableau "T1" qui contient au préalable des valeurs dates (jj-mmm-aa) tirées d'une sheet.

    une deuxième variable "T2" qui contient les même type de valeur.


    Peut-ton soustraire les deux tableau de manière a avoir une 3e variable tableau T3 qui contient la différence des dates des deux tableaux (T = T1 - T2)???

    Merci d'avance

  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
    Oui en faisant une boucle (sur les tableaux c'est très rapide par rapport aux boucles sur les cellules excel)

    exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim LastLig As Long, i As Long, n As Long
    Dim T1, T2
    Dim T3() As Integer
     
    With Sheets("Feuil1")
        LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row
        T1 = .Range("A1:A" & LastLig).Value
        T2 = .Range("E1:E" & LastLig).Value
        ReDim T3(1 To UBound(T1, 1), 1 To 1)
        For i = 1 To UBound(T1, 1)
            T3(i, 1) = DateDiff("d", T1(i, 1), T2(i, 1))
        Next i
        .Range("X1:X" & LastLig) = T3
    End With

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 26
    Points : 18
    Points
    18
    Par défaut
    ok merci infiniment.

    mais pourquoi T3 est déclaré comme Integer? T3 vas contenir des dates non?

    y'a-il une version en anglais de Datediff mon excel est en version english

  4. #4
    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
    J'ai mis pour l'exemple T3 est une durée (différence entre 2 dates)
    DateDiff est une fonction vba

    Pour tester le code, crée en Feuil1 une série de dates en colonne A (disons dans A1:A20)
    En colonne E une autre série de dates (dans E1:E20)
    Lance la macro et regarde la résultat en X1:X20.

    C'était un exemple.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 26
    Points : 18
    Points
    18
    Par défaut
    merci beaucoup

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

Discussions similaires

  1. [TPW] Opérations sur un tableau
    Par chiichi dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 06/02/2013, 08h48
  2. opération sur variable avant affichage
    Par TuxEdoo dans le forum Langage
    Réponses: 3
    Dernier message: 17/11/2008, 13h45
  3. [WD10] Etat sur variable tableau
    Par Louis Griffont dans le forum WinDev
    Réponses: 5
    Dernier message: 14/11/2008, 08h28
  4. [HP-UX] opération sur variable
    Par Fred Ratel dans le forum Unix
    Réponses: 4
    Dernier message: 24/01/2008, 23h06
  5. [VB6]opération sur un tableau complet en une seule fois?
    Par marco62118 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 24/05/2006, 12h50

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