Pages

Affichage des articles dont le libellé est precedentes. Afficher tous les articles
Affichage des articles dont le libellé est precedentes. Afficher tous les articles

Enregistrer des valeurs sans écraser les précédentes sujet

mardi 8 avril 2014




Bonjour,
Totalement novices dans le domaine, nous avons besoin d'aide sur un petit point !

Nous avons un dossier de données sous forme de colonnes que nous devons recopier dans Matlab.
MAIS, lorsqu'on veut "transcrire" les données dans un tableau, seule la dernière ligne est conservé. Le logiciel fait tous les calculs mais ecrase tout au fur et à mesure alors qu'on voudrait réécrire chaque ligne de données dans une ligne du tableau Matlab.

SOS :(




[AC-2003] Sommer sur 4 semaines précédentes à cheval sur 2 années sujet

vendredi 28 mars 2014




Bonjour,

J'ai un probleme en essayant de sommer des valeurs de 4 semaines consécutives au passage d'une année à l'autre.

Je dispose d'une table Tonnages où les champs Client, Volume, numéro de semaine, numéro d'année sont remplis automatiquement à partir d'un fichier excel.

Je traite ensuite les numéros de semaine et d'année afin de générer une date correspondant au premier jour de la semaine avec un module.

J'aimerais ensuite sommer les volumes sur 4 semaines consécutives (en demandant pour l'instant à l'utilisateur d'entrer le numéro de semaine) de l'année N et N-1 (afin de comparer).
Par exemple si l'utilisateur entre "5", la requete va calculer la somme des volumes de la semaine 1 à 4 pour chaque année.

Cela fonctionne pour moi mais je rencontre un problème lorsque la "fenetre" de 4 semaines est sur 2 années.
Ex: si l'utilisateur entre "2", la requete doit calculer la somme des volumes 50/année prec., 51/année prec., 52/année prec et 01/année.
Dans mon cas la requete ne franchit pas la "barrière" entre les 2 années, ne conservant que le volume 01/année.

Quelqu'un peut m'aider?

Voici mon module pour générer la date:

Code:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Function convDate( _
ByVal intAnnee As Long, _
Optional ByVal intSemaine As Long = 1)

Dim dt As Date

' Trouver le 1er jour de la semaine 1 de l'année
' (pas forcément le 1/1/aaaa en France !)
dt = DateSerial(intAnnee, 1, 1)
While DatePart("ww", dt, vbMonday, vbFirstFourDays) <> 1
dt = dt + 1
Wend

' Calculer le 1er jour de la semaine demandée
dt = dt - DatePart("w", dt, vbMonday) + 1
dt = dt + 7 * (intSemaine - 1)

convDate = dt
End Function


Et voici ma requête:


Code:


1
2
3
4
SELECT Tonnages.Client, Sum(Tonnages.Volume) AS SommeDeVolume, Tonnages.numAnnee
FROM Tonnages
WHERE Tonnages.tDate>=DateAdd("ww",-4,convDate(Tonnages.numAnnee,[SemaineACalculer])) And Tonnages.tDate<convDate(Tonnages.numAnnee,[SemaineACalculer])
GROUP BY Tonnages.Client, Tonnages.tDate, Tonnages.numAnnee;


En vous remerciant d'avance de vos réponses,

Ostrich95




XL 2010 Trouver la dernière valeur égale dans les lignes précédentes sujet

jeudi 27 mars 2014




Bonjour,

Je cherche à trouver la ligne la plus proche au dessus de la cellule active qui correspond à ma condition. Pour être plus clair et plus concret, j'ai la liste des composants d'une structure avec leur niveau dans la structure et je cherche à identifier le père de chaque élément. En pièce un petit exemple plus parlant que des mots.

J'ai essayé d'utiliser la fonction EQUIV (dans la colonne "Ma tentative") mais elle renvoie la première valeur qui correspond à la condition alors que j'ai besoin de la dernière valeur qui correspond à la condition ET qui se trouve avant la ligne où je suis.

Merci d'avance pour vos suggestions.













Fichiers attachés