Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fabien
Bonjour à tous,
J'ai un souci que je n'arrive pas à résoudre, surement par méconnaissance d'access.
J'ai une Table1 dans lequel il y a un champ "date" au format [Date/Heure] (et un champ société)
Dans la Table2 j'ai un champ "delaidelivraison" qui est au format [Numérique] (et un champ société)
J'ai donc voulu créer une requête qui me mettrait à jour le champ "date" de Table1 en rajoutant la valeur du champ "delaidelivraison" de Table 2
Ma requête mise à jour avait juste comme valeur [date]+[delaidelivraison]
Hors la mise à jour me donnait des valeurs beaucoup plus importante que prévue.
Pouvez vous m'aider dans la formulation de ma requête ?
Concrêtement en table 1 j'ai : date 19/06/2007
en table 2 j'ai delaidelivraison 1
J'aimerai avoir une requête qui me donne soit en mise a jour dans la Table1 directement la valeur de 19/06/2007 + 1 j donc le 20/06/2007
La valeur de "delaidelivraison" étant comprise entre 1 et 7
Tant qu'à y être est t'il possible d'y inclure un report en fonction des jours fériés ou pas ?
Vous remerciant par avance de votre aide.
Bonne journée. Bonjour,
Si le delai est toujours en jour alors dateadd("d",Delai,Date) est pour toi. Pour ce qui est des jours feriés il existe des fonctions qui te retourne vrai si la date est fériée. A toi de combiner les deux pour obtenir une date qui te vas Perso voici la focntion que j'utilise pour le jours fériés Option Compare Database Option Explicit Function Ferie(Range As Date) As Boolean
Dim A As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim e As Integer Dim f As Integer Dim g As Integer Dim h As Integer Dim I As Integer Dim k As Integer Dim q As Integer Dim m As Integer Dim n As Integer Dim p As Integer Dim Z As Integer Dim Pâques As Date Dim LundiPâques As Date Dim Ascension As Date Dim LundiPentecôte As Date Dim Pentecôte As Date
Z = Year(Range) 'année A = Z Mod 19 b = Int(Z / 100) c = Z Mod 100 d = Int(b / 4) e = b Mod 4 f = Int((b + 9) / 25) g = Int((b - f + 1) / 3) h = (19 * A + b - d - g + 15) Mod 30 I = Int(c / 4) k = c Mod 4 q = (32 + 2 * e + 2 * I - h - k) Mod 7 m = Int((A + 11 * h + 22 * q) / 451) n = Int((h + q - 7 * m + 114) / 31) 'jour p = (h + q - 7 * m + 114) Mod 31 'mois
Pâques = DateSerial(Z, n, p + 1) LundiPâques = Pâques + 1 Ascension = Pâques + 39 Pentecôte = Pâques + 49 LundiPentecôte = Pâques + 50 Select Case Format(Range, "dd/mm/yyyy") Case Format(Pâques, "dd/mm/yyyy"): Ferie = True Case Format(LundiPâques, "dd/mm/yyyy"): Ferie = True Case Format(Ascension, "dd/mm/yyyy"): Ferie = True Case Format(Pentecôte, "dd/mm/yyyy"): Ferie = True 'Case Format(LundiPentecôte, "dd/mm/yyyy"): Ferie = True ' N'est plus férier Case Format(DateSerial(Z, 7, 14), "dd/mm/yyyy"): Ferie = True ' 14 juillet Case Format(DateSerial(Z, 5, 1), "dd/mm/yyyy"): Ferie = True ' 1er Mai Case Format(DateSerial(Z, 5, 8), "dd/mm/yyyy"): Ferie = True ' Victoire de 1945 Case Format(DateSerial(Z, 11, 11), "dd/mm/yyyy"): Ferie = True ' Armictice 1918 Case Format(DateSerial(Z, 8, 15), "dd/mm/yyyy"): Ferie = True ' Assomption Case Format(DateSerial(Z, 11, 1), "dd/mm/yyyy"): Ferie = True ' Toussaint Case Format(DateSerial(Z, 12, 25), "dd/mm/yyyy"): Ferie = True ' Noël Case Format(DateSerial(Z, 1, 1), "dd/mm/yyyy"): Ferie = True ' Nouvel An Case Else: Ferie = False End Select
'On peut personnaliser : exemple date anniversaire... 'refaire les 4 lignes de code : If, ferie, Else, End If 'avec : DateSerial (Z, mois anniversaire, jour anniversaire) 'ça peut donner : 'Case DateSerial(Z, 5, 14) : ferie = true 'Msg_ferie = "Amélie " & Z - 1998 & " ans" 'ici, 1998 est l'année de naissance bien sûr !
End Function
Bonjour à tous,
J'ai un souci que je n'arrive pas à résoudre, surement par méconnaissance
d'access.
J'ai une Table1 dans lequel il y a un champ "date" au format [Date/Heure]
(et un champ société)
Dans la Table2 j'ai un champ "delaidelivraison" qui est au format
[Numérique] (et un champ société)
J'ai donc voulu créer une requête qui me mettrait à jour le champ "date" de
Table1 en rajoutant la valeur du champ "delaidelivraison" de Table 2
Ma requête mise à jour avait juste comme valeur
[date]+[delaidelivraison]
Hors la mise à jour me donnait des valeurs beaucoup plus importante que
prévue.
Pouvez vous m'aider dans la formulation de ma requête ?
Concrêtement en table 1 j'ai :
date 19/06/2007
en table 2 j'ai
delaidelivraison 1
J'aimerai avoir une requête qui me donne soit en mise a jour dans la Table1
directement la valeur de 19/06/2007 + 1 j donc le 20/06/2007
La valeur de "delaidelivraison" étant comprise entre 1 et 7
Tant qu'à y être est t'il possible d'y inclure un report en fonction des
jours fériés ou pas ?
Vous remerciant par avance de votre aide.
Bonne journée.
Bonjour,
Si le delai est toujours en jour alors dateadd("d",Delai,Date) est pour toi.
Pour ce qui est des jours feriés il existe des fonctions qui te retourne
vrai si la date est fériée.
A toi de combiner les deux pour obtenir une date qui te vas
Perso voici la focntion que j'utilise pour le jours fériés
Option Compare Database
Option Explicit
Function Ferie(Range As Date) As Boolean
Dim A As Integer
Dim b As Integer
Dim c As Integer
Dim d As Integer
Dim e As Integer
Dim f As Integer
Dim g As Integer
Dim h As Integer
Dim I As Integer
Dim k As Integer
Dim q As Integer
Dim m As Integer
Dim n As Integer
Dim p As Integer
Dim Z As Integer
Dim Pâques As Date
Dim LundiPâques As Date
Dim Ascension As Date
Dim LundiPentecôte As Date
Dim Pentecôte As Date
Z = Year(Range) 'année
A = Z Mod 19
b = Int(Z / 100)
c = Z Mod 100
d = Int(b / 4)
e = b Mod 4
f = Int((b + 9) / 25)
g = Int((b - f + 1) / 3)
h = (19 * A + b - d - g + 15) Mod 30
I = Int(c / 4)
k = c Mod 4
q = (32 + 2 * e + 2 * I - h - k) Mod 7
m = Int((A + 11 * h + 22 * q) / 451)
n = Int((h + q - 7 * m + 114) / 31) 'jour
p = (h + q - 7 * m + 114) Mod 31 'mois
Pâques = DateSerial(Z, n, p + 1)
LundiPâques = Pâques + 1
Ascension = Pâques + 39
Pentecôte = Pâques + 49
LundiPentecôte = Pâques + 50
Select Case Format(Range, "dd/mm/yyyy")
Case Format(Pâques, "dd/mm/yyyy"): Ferie = True
Case Format(LundiPâques, "dd/mm/yyyy"): Ferie = True
Case Format(Ascension, "dd/mm/yyyy"): Ferie = True
Case Format(Pentecôte, "dd/mm/yyyy"): Ferie = True
'Case Format(LundiPentecôte, "dd/mm/yyyy"): Ferie = True '
N'est plus férier
Case Format(DateSerial(Z, 7, 14), "dd/mm/yyyy"): Ferie = True '
14 juillet
Case Format(DateSerial(Z, 5, 1), "dd/mm/yyyy"): Ferie = True '
1er Mai
Case Format(DateSerial(Z, 5, 8), "dd/mm/yyyy"): Ferie = True '
Victoire de 1945
Case Format(DateSerial(Z, 11, 11), "dd/mm/yyyy"): Ferie = True '
Armictice 1918
Case Format(DateSerial(Z, 8, 15), "dd/mm/yyyy"): Ferie = True '
Assomption
Case Format(DateSerial(Z, 11, 1), "dd/mm/yyyy"): Ferie = True '
Toussaint
Case Format(DateSerial(Z, 12, 25), "dd/mm/yyyy"): Ferie = True '
Noël
Case Format(DateSerial(Z, 1, 1), "dd/mm/yyyy"): Ferie = True '
Nouvel An
Case Else: Ferie = False
End Select
'On peut personnaliser : exemple date anniversaire...
'refaire les 4 lignes de code : If, ferie, Else, End If
'avec : DateSerial (Z, mois anniversaire, jour anniversaire)
'ça peut donner :
'Case DateSerial(Z, 5, 14) : ferie = true
'Msg_ferie = "Amélie " & Z - 1998 & " ans" 'ici, 1998 est l'année
de naissance bien sûr !
J'ai un souci que je n'arrive pas à résoudre, surement par méconnaissance d'access.
J'ai une Table1 dans lequel il y a un champ "date" au format [Date/Heure] (et un champ société)
Dans la Table2 j'ai un champ "delaidelivraison" qui est au format [Numérique] (et un champ société)
J'ai donc voulu créer une requête qui me mettrait à jour le champ "date" de Table1 en rajoutant la valeur du champ "delaidelivraison" de Table 2
Ma requête mise à jour avait juste comme valeur [date]+[delaidelivraison]
Hors la mise à jour me donnait des valeurs beaucoup plus importante que prévue.
Pouvez vous m'aider dans la formulation de ma requête ?
Concrêtement en table 1 j'ai : date 19/06/2007
en table 2 j'ai delaidelivraison 1
J'aimerai avoir une requête qui me donne soit en mise a jour dans la Table1 directement la valeur de 19/06/2007 + 1 j donc le 20/06/2007
La valeur de "delaidelivraison" étant comprise entre 1 et 7
Tant qu'à y être est t'il possible d'y inclure un report en fonction des jours fériés ou pas ?
Vous remerciant par avance de votre aide.
Bonne journée. Bonjour,
Si le delai est toujours en jour alors dateadd("d",Delai,Date) est pour toi. Pour ce qui est des jours feriés il existe des fonctions qui te retourne vrai si la date est fériée. A toi de combiner les deux pour obtenir une date qui te vas Perso voici la focntion que j'utilise pour le jours fériés Option Compare Database Option Explicit Function Ferie(Range As Date) As Boolean
Dim A As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim e As Integer Dim f As Integer Dim g As Integer Dim h As Integer Dim I As Integer Dim k As Integer Dim q As Integer Dim m As Integer Dim n As Integer Dim p As Integer Dim Z As Integer Dim Pâques As Date Dim LundiPâques As Date Dim Ascension As Date Dim LundiPentecôte As Date Dim Pentecôte As Date
Z = Year(Range) 'année A = Z Mod 19 b = Int(Z / 100) c = Z Mod 100 d = Int(b / 4) e = b Mod 4 f = Int((b + 9) / 25) g = Int((b - f + 1) / 3) h = (19 * A + b - d - g + 15) Mod 30 I = Int(c / 4) k = c Mod 4 q = (32 + 2 * e + 2 * I - h - k) Mod 7 m = Int((A + 11 * h + 22 * q) / 451) n = Int((h + q - 7 * m + 114) / 31) 'jour p = (h + q - 7 * m + 114) Mod 31 'mois
Pâques = DateSerial(Z, n, p + 1) LundiPâques = Pâques + 1 Ascension = Pâques + 39 Pentecôte = Pâques + 49 LundiPentecôte = Pâques + 50 Select Case Format(Range, "dd/mm/yyyy") Case Format(Pâques, "dd/mm/yyyy"): Ferie = True Case Format(LundiPâques, "dd/mm/yyyy"): Ferie = True Case Format(Ascension, "dd/mm/yyyy"): Ferie = True Case Format(Pentecôte, "dd/mm/yyyy"): Ferie = True 'Case Format(LundiPentecôte, "dd/mm/yyyy"): Ferie = True ' N'est plus férier Case Format(DateSerial(Z, 7, 14), "dd/mm/yyyy"): Ferie = True ' 14 juillet Case Format(DateSerial(Z, 5, 1), "dd/mm/yyyy"): Ferie = True ' 1er Mai Case Format(DateSerial(Z, 5, 8), "dd/mm/yyyy"): Ferie = True ' Victoire de 1945 Case Format(DateSerial(Z, 11, 11), "dd/mm/yyyy"): Ferie = True ' Armictice 1918 Case Format(DateSerial(Z, 8, 15), "dd/mm/yyyy"): Ferie = True ' Assomption Case Format(DateSerial(Z, 11, 1), "dd/mm/yyyy"): Ferie = True ' Toussaint Case Format(DateSerial(Z, 12, 25), "dd/mm/yyyy"): Ferie = True ' Noël Case Format(DateSerial(Z, 1, 1), "dd/mm/yyyy"): Ferie = True ' Nouvel An Case Else: Ferie = False End Select
'On peut personnaliser : exemple date anniversaire... 'refaire les 4 lignes de code : If, ferie, Else, End If 'avec : DateSerial (Z, mois anniversaire, jour anniversaire) 'ça peut donner : 'Case DateSerial(Z, 5, 14) : ferie = true 'Msg_ferie = "Amélie " & Z - 1998 & " ans" 'ici, 1998 est l'année de naissance bien sûr !
End Function
Patrick de Montpellier
Bonjour, Si le delai est toujours en jour alors dateadd("d",Delai,Date) est pour toi. Merci.
Pour ce qui est des jours feriés il existe des fonctions qui te retourne vrai si la date est fériée. A toi de combiner les deux pour obtenir une date qui te vas Perso voici la focntion que j'utilise pour le jours fériés Option Compare Database .......... End Function Merci beacoup pour ton aide.
Je vais me servir probablement des deux pour faire ensuite des comparatifs en fonctions des spécificités de chaque dépot de réception.
Bonne fin de journée.
Patrick
Bonjour,
Si le delai est toujours en jour alors dateadd("d",Delai,Date) est pour toi.
Merci.
Pour ce qui est des jours feriés il existe des fonctions qui te retourne
vrai si la date est fériée.
A toi de combiner les deux pour obtenir une date qui te vas
Perso voici la focntion que j'utilise pour le jours fériés
Option Compare Database
..........
End Function
Merci beacoup pour ton aide.
Je vais me servir probablement des deux pour faire ensuite des comparatifs
en fonctions des spécificités de chaque dépot de réception.
Bonjour, Si le delai est toujours en jour alors dateadd("d",Delai,Date) est pour toi. Merci.
Pour ce qui est des jours feriés il existe des fonctions qui te retourne vrai si la date est fériée. A toi de combiner les deux pour obtenir une date qui te vas Perso voici la focntion que j'utilise pour le jours fériés Option Compare Database .......... End Function Merci beacoup pour ton aide.
Je vais me servir probablement des deux pour faire ensuite des comparatifs en fonctions des spécificités de chaque dépot de réception.