Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1128 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  variable vba et fonction excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

variable vba et fonction excel

n°1902710
dadaking
Posté le 06-07-2009 à 14:47:00  profilanswer
 

Bonjour,
J’ai un tableau qui recense des factures émises depuis le début de l'année quelque soit leur devise d'émission (JPY, USD, EUR, etc..).
Je voudrais qu'il me calcule la somme par devise et par lieu d'émission (siège ou agence) pour une période donnée. Pour cela, j'ai créé un userform dans lequel on rentre les dates de début et fin de période (champs que j'aie appelé : txtDateDebut et txtDateFin)
 
Pour les 2 premières conditions (sans prise en compte de la période), il n'y a aucun problème : la fonction SOMMEPROD (SUMPRODUCT en VBA) fait très bien l'affaire. Par contre, je n'arrive pas à introduire dans la formule les dates de début et fin de période. J'ai essayé de créer 2 variables :  
                                   "a"= txtDateDebut.value
                                   "b"= txtDatefin.value
 
Quelqu'un saurait-il comment faire pour résoudre ce problème de prise en compte de la période dans le calcul?
 
D'avance merci

mood
Publicité
Posté le 06-07-2009 à 14:47:00  profilanswer
 

n°1902712
Deamon
Posté le 06-07-2009 à 14:51:14  profilanswer
 

dadaking a écrit :

                                  "a"= txtDateDebut.value
                                   "b"= txtDatefin.value


 [:delarue5]  
T'as pas mis ça exactement dans ton code quand même ?
Car c'est impossible ça. L'inverse oui mais tu peux pas changer la valeur de la lettre "a". :pt1cable:  
Ou alors c'est une faute de frappe et tu voulais dire : a = txtDateDebut.value ?

n°1902714
dadaking
Posté le 06-07-2009 à 14:54:10  profilanswer
 

c'est effectivement une erreur de frappe de ma part... j'ai mis :  
               a = txtDatedebut.value
excuse-moi pour cette erreur de saisie

n°1902720
Deamon
Posté le 06-07-2009 à 15:04:07  profilanswer
 

C'est quoi les types de a et b ? Et c'est quoi le problème exactement ? Ca compile pas, ça met une erreur à l'éxécution, ... ?

n°1902726
dadaking
Posté le 06-07-2009 à 15:17:22  profilanswer
 

mes variable sont de type date. le pb est que je n'arrive pas à prendre en considération cette période (entre a et b) dans ma formule SUMPRODUCT
voici ce que j'ai mis comme code  
"=SUMPRODUCT(('[Fact_2009.xls]Individuelles'!R3C8:R165C8=""MUR"" )*(a<='[Fact_2009.xls]Individuelles'!r3c1:r165c1<=b)*('[Fact_2009.xls]Individuelles'!R3C12:R165C12))
Comme résultat il me met : #NOM?

n°1902729
Deamon
Posté le 06-07-2009 à 15:25:24  profilanswer
 

à la place de a et b essaye de mettre un truc du genre : DATEVAL("xx/xx/xxxx" ) en remplaçant bien entendu les xx par la date que tu veux.


Message édité par Deamon le 06-07-2009 à 15:26:38
n°1902731
dadaking
Posté le 06-07-2009 à 15:29:57  profilanswer
 

j'avais bien pensé à ça mais le problème est que je ne veux pas que la période soit en dure dans le code : il faut que ça marche quelque soit la période mise (d'où l'utilisation d'un userform pour la saisie des dates de début et de fin de période)

n°1902736
Deamon
Posté le 06-07-2009 à 15:38:24  profilanswer
 

Alors fais un DATEVAL d'une variable string qui contiendrait la date entrée. Ca te va pas ça ?

n°1902739
dadaking
Posté le 06-07-2009 à 15:51:24  profilanswer
 

je mets un truc du style :  
 
dim a as string
dim b as string
     a = txtDateDebut.value
     b = txtDateFin.value
 
"=SUMPRODUCT(('Fact_2009....=""MUR"" )*(dateval(a)<='[Fact_2009...<=dateval(b))*(...)
 
je suis dans le vrai ou pas?
Excuse-moi de te harceler mais je débute en vba...

n°1902789
Deamon
Posté le 06-07-2009 à 17:06:47  profilanswer
 

Bah si tu testes ça ça marche ou pas ?

 

Je ne sais pas si Excel est sensible à la casse mais dans le doute je mettrai DATEVAL en majuscule.


Message édité par Deamon le 06-07-2009 à 17:07:30
mood
Publicité
Posté le 06-07-2009 à 17:06:47  profilanswer
 

n°1902831
dadaking
Posté le 06-07-2009 à 18:07:07  profilanswer
 

j'ai essayé les deux versions (majuscules et minuscules) et ça ne marche pas....
Merci quand même de m'avoir aidé.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  variable vba et fonction excel

 

Sujets relatifs
Addition toute bête en VBA (Macro Excel)[RESOLU] Problème de vérouillage dans ma feuille excel
Détecter l'affichage d'une MsgBox dans une macro excelcalcule de la longeur de la variable
incrémenter une cellule avec une condition sous excelCommunication iframe et fonction parent javascript sur deux serveurs
Besoin d`aide assigné une fonction a un tbutton[Résolu] Arrondir avec la fonction Format
Excel : impression "auto" d'onglets => PDF[EXCEL]Fonction fréquence et variable qualitative
Plus de sujets relatifs à : variable vba et fonction excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR