Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pour THOM THOM

10 réponses
Avatar
asta
Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car je
trouve ce cas de figure judicieux et je voudrais essayer de le faire, mais je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta

10 réponses

Avatar
Thom Thom
Ok!

Tout d'abord, pour que cela fonctionne, il te faut impérativement une
version d'access supérieur à 97.

Alors, petit cours de VBA. Le VBA, c'est le language qui se cache deriere
access. Tu peux créer de nouvelles fonctions qui n'existent pas encore.

Pour créer une fonction, tu dois créer un nouveau module (comme pour les
requêtes, formulaires, tables et macros)

Colle le petit bout de code qui suit:

'Début de la fonction
Public Function GetDate(DateComplete As String, Separateur As String,
ElementARecuperer As Integer) As String
Dim TabDate() As String

TabDate = Split(DateComplete, Separateur)

GetDate = TabDate(ElementARecuperer)

End Function
'Fin de la fonction


Pour l'utiliser, dans une requête, dans un formulaire(idem dans un module,
mais avec des "," à la place de ";":
GetDate("Jeu. 03 MARS 05 18:31";" ";1)

Paramètre 1 : ta chaine de caractère
Paramètre 2 : le séparateur (ici, les espaces)
Paramètre 3 : la position de l'élément que tu veux récupérer (ex:3 pour "05"
(le premier élément commence à à))

Tiens moi au courant,

-Thom-





"asta" a écrit dans le message de news:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car je
trouve ce cas de figure judicieux et je voudrais essayer de le faire, mais
je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta



Avatar
asta
Merci pour ton cours très sympa, bon j'ai qq notions en VBA et je vais de ce
pas recopier ton petit bout de macro .....
je t'informerais de la suite des évennements
Merci à toi
asta

"Thom Thom" wrote:

Ok!

Tout d'abord, pour que cela fonctionne, il te faut impérativement une
version d'access supérieur à 97.

Alors, petit cours de VBA. Le VBA, c'est le language qui se cache deriere
access. Tu peux créer de nouvelles fonctions qui n'existent pas encore.

Pour créer une fonction, tu dois créer un nouveau module (comme pour les
requêtes, formulaires, tables et macros)

Colle le petit bout de code qui suit:

'Début de la fonction
Public Function GetDate(DateComplete As String, Separateur As String,
ElementARecuperer As Integer) As String
Dim TabDate() As String

TabDate = Split(DateComplete, Separateur)

GetDate = TabDate(ElementARecuperer)

End Function
'Fin de la fonction


Pour l'utiliser, dans une requête, dans un formulaire(idem dans un module,
mais avec des "," à la place de ";":
GetDate("Jeu. 03 MARS 05 18:31";" ";1)

Paramètre 1 : ta chaine de caractère
Paramètre 2 : le séparateur (ici, les espaces)
Paramètre 3 : la position de l'élément que tu veux récupérer (ex:3 pour "05"
(le premier élément commence à à))

Tiens moi au courant,

-Thom-





"asta" a écrit dans le message de news:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car je
trouve ce cas de figure judicieux et je voudrais essayer de le faire, mais
je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta








Avatar
asta
Bon j'ai recopié ton petit bout de code mais il manque qq chose dans la
première ligne messg "erreur de syntaxe" ????
merci

"asta" wrote:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car je
trouve ce cas de figure judicieux et je voudrais essayer de le faire, mais je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta



Avatar
Thom Thom
J'ai fait un copiercoller du code et ça marche!!!

Deux chose :
_ Vérifie que tu utilise une version supérieur à access 97
_Vérifie que quand tu as fais le copier coller du code, il te reste pas des
">" devant les lignes et que la premiere ligne de code ne soit pas coller
sur deux lignes


"asta" a écrit dans le message de news:

Merci pour ton cours très sympa, bon j'ai qq notions en VBA et je vais de
ce
pas recopier ton petit bout de macro .....
je t'informerais de la suite des évennements
Merci à toi
asta

"Thom Thom" wrote:

Ok!

Tout d'abord, pour que cela fonctionne, il te faut impérativement une
version d'access supérieur à 97.

Alors, petit cours de VBA. Le VBA, c'est le language qui se cache deriere
access. Tu peux créer de nouvelles fonctions qui n'existent pas encore.

Pour créer une fonction, tu dois créer un nouveau module (comme pour les
requêtes, formulaires, tables et macros)

Colle le petit bout de code qui suit:

'Début de la fonction
Public Function GetDate(DateComplete As String, Separateur As String,
ElementARecuperer As Integer) As String
Dim TabDate() As String

TabDate = Split(DateComplete, Separateur)

GetDate = TabDate(ElementARecuperer)

End Function
'Fin de la fonction


Pour l'utiliser, dans une requête, dans un formulaire(idem dans un
module,
mais avec des "," à la place de ";":
GetDate("Jeu. 03 MARS 05 18:31";" ";1)

Paramètre 1 : ta chaine de caractère
Paramètre 2 : le séparateur (ici, les espaces)
Paramètre 3 : la position de l'élément que tu veux récupérer (ex:3 pour
"05"
(le premier élément commence à à))

Tiens moi au courant,

-Thom-





"asta" a écrit dans le message de news:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction
de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car
je
trouve ce cas de figure judicieux et je voudrais essayer de le faire,
mais
je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il
faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta










Avatar
asta
Désolée autant pour moi j'avais oublié un petit bout dans mon copié collé ça
fonctionne à merveille tu es génial .............
Merci et à très bientôt dans une de mes questions à la ..... ce que tu veux
asta
"Thom Thom" wrote:

J'ai fait un copiercoller du code et ça marche!!!

Deux chose :
_ Vérifie que tu utilise une version supérieur à access 97
_Vérifie que quand tu as fais le copier coller du code, il te reste pas des
">" devant les lignes et que la premiere ligne de code ne soit pas coller
sur deux lignes


"asta" a écrit dans le message de news:

Merci pour ton cours très sympa, bon j'ai qq notions en VBA et je vais de
ce
pas recopier ton petit bout de macro .....
je t'informerais de la suite des évennements
Merci à toi
asta

"Thom Thom" wrote:

Ok!

Tout d'abord, pour que cela fonctionne, il te faut impérativement une
version d'access supérieur à 97.

Alors, petit cours de VBA. Le VBA, c'est le language qui se cache deriere
access. Tu peux créer de nouvelles fonctions qui n'existent pas encore.

Pour créer une fonction, tu dois créer un nouveau module (comme pour les
requêtes, formulaires, tables et macros)

Colle le petit bout de code qui suit:

'Début de la fonction
Public Function GetDate(DateComplete As String, Separateur As String,
ElementARecuperer As Integer) As String
Dim TabDate() As String

TabDate = Split(DateComplete, Separateur)

GetDate = TabDate(ElementARecuperer)

End Function
'Fin de la fonction


Pour l'utiliser, dans une requête, dans un formulaire(idem dans un
module,
mais avec des "," à la place de ";":
GetDate("Jeu. 03 MARS 05 18:31";" ";1)

Paramètre 1 : ta chaine de caractère
Paramètre 2 : le séparateur (ici, les espaces)
Paramètre 3 : la position de l'élément que tu veux récupérer (ex:3 pour
"05"
(le premier élément commence à à))

Tiens moi au courant,

-Thom-





"asta" a écrit dans le message de news:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction
de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car
je
trouve ce cas de figure judicieux et je voudrais essayer de le faire,
mais
je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il
faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta















Avatar
asta
Bon la question c'est vite fait sentir, est t'il possible via une function
établir toute une série de chose que je ferais traduire dans ma requête, j'ai
donc séparé comme je le désirais mes paramètres sur cette date qui me cause
bien des tourments, donc un champs qui est "ven." un autre qui est "25 "un
autre qui est "avr." un autre qui est "05" et un autre qui "18:25" puis je
donc lui dire que "lun." "mar." "mer." etc pour tous les jours de la semaine
lui indiquer que c'est égal à "lundi"; mardi etc et idem pour les mois
"janv." ; "fev." ainsi je construis ma requête et je n'aurais plus à
m'inquiété de la façon dont ma date est arrivée elle sera traduite champs par
champs, ven. sera traduit par vendredi, avr. par avril etc ......
Est ce possible SVP MERCI
"asta" wrote:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car je
trouve ce cas de figure judicieux et je voudrais essayer de le faire, mais je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta



Avatar
Thom Thom
Deux solutions :
la premiere (que je préfère):
format ("31" & " /" & "12" & "/"05","mmmm") qui te donne décembre
format ("31" & " /" & "12" & "/"05","dddd") qui te donne samedi

Pour récupérer la date : remplace les diférentes partie de la date par la
fonction que je t'ai donné précédement

La seconde:

Public Function TraduireJourMois(MonJourMois) As String
Select Case MonJourMois
Case "Lun."
TraduireJourMois = "Lundi"
Case "Mar."
TraduireJourMois = "Mardi"
Case "Mer."
TraduireJourMois = "Mercredi"
[...]

Case "Jan."
TraduireJourMois = "Jeudi"
Case "Fev."

Case Else
TraduireJourMois = "Erreur!"
[...]


End Function




"asta" a écrit dans le message de news:

Bon la question c'est vite fait sentir, est t'il possible via une function
établir toute une série de chose que je ferais traduire dans ma requête,
j'ai
donc séparé comme je le désirais mes paramètres sur cette date qui me
cause
bien des tourments, donc un champs qui est "ven." un autre qui est "25 "un
autre qui est "avr." un autre qui est "05" et un autre qui "18:25" puis je
donc lui dire que "lun." "mar." "mer." etc pour tous les jours de la
semaine
lui indiquer que c'est égal à "lundi"; mardi etc et idem pour les mois
"janv." ; "fev." ainsi je construis ma requête et je n'aurais plus à
m'inquiété de la façon dont ma date est arrivée elle sera traduite champs
par
champs, ven. sera traduit par vendredi, avr. par avril etc ......
Est ce possible SVP MERCI
"asta" wrote:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car
je
trouve ce cas de figure judicieux et je voudrais essayer de le faire,
mais je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il
faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta





Avatar
asta
alors dans ma requête pour récupérer le jour voici ce que j'ai fais : jours:
GetDate([Start];" ";0) donc je récupère ven. si je désire utiliser ton cas
préféré ou dois-je mettre "format ("31" & " /" & "12" & "/"05","dddd") qui te
donne samedi" ????? à quel endroit de ma requête ????
merci


"Thom Thom" wrote:

Deux solutions :
la premiere (que je préfère):
format ("31" & " /" & "12" & "/"05","mmmm") qui te donne décembre
format ("31" & " /" & "12" & "/"05","dddd") qui te donne samedi

Pour récupérer la date : remplace les diférentes partie de la date par la
fonction que je t'ai donné précédement

La seconde:

Public Function TraduireJourMois(MonJourMois) As String
Select Case MonJourMois
Case "Lun."
TraduireJourMois = "Lundi"
Case "Mar."
TraduireJourMois = "Mardi"
Case "Mer."
TraduireJourMois = "Mercredi"
[...]

Case "Jan."
TraduireJourMois = "Jeudi"
Case "Fev."

Case Else
TraduireJourMois = "Erreur!"
[...]


End Function




"asta" a écrit dans le message de news:

Bon la question c'est vite fait sentir, est t'il possible via une function
établir toute une série de chose que je ferais traduire dans ma requête,
j'ai
donc séparé comme je le désirais mes paramètres sur cette date qui me
cause
bien des tourments, donc un champs qui est "ven." un autre qui est "25 "un
autre qui est "avr." un autre qui est "05" et un autre qui "18:25" puis je
donc lui dire que "lun." "mar." "mer." etc pour tous les jours de la
semaine
lui indiquer que c'est égal à "lundi"; mardi etc et idem pour les mois
"janv." ; "fev." ainsi je construis ma requête et je n'aurais plus à
m'inquiété de la façon dont ma date est arrivée elle sera traduite champs
par
champs, ven. sera traduit par vendredi, avr. par avril etc ......
Est ce possible SVP MERCI
"asta" wrote:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus, car
je
trouve ce cas de figure judicieux et je voudrais essayer de le faire,
mais je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il
faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta










Avatar
Thom Thom
Pardon, ça ne peux pas fonctionner à cause de ton mois qui n'est pas un
numéro!
mieux vaut utiliser la deuxieme solution
cette fonction s'utilise de la même façon que GetDate

ps: je te laisse le soin de la complèter


"asta" a écrit dans le message de news:

alors dans ma requête pour récupérer le jour voici ce que j'ai fais :
jours:
GetDate([Start];" ";0) donc je récupère ven. si je désire utiliser ton cas
préféré ou dois-je mettre "format ("31" & " /" & "12" & "/"05","dddd") qui
te
donne samedi" ????? à quel endroit de ma requête ????
merci


"Thom Thom" wrote:

Deux solutions :
la premiere (que je préfère):
format ("31" & " /" & "12" & "/"05","mmmm") qui te donne décembre
format ("31" & " /" & "12" & "/"05","dddd") qui te donne samedi

Pour récupérer la date : remplace les diférentes partie de la date par la
fonction que je t'ai donné précédement

La seconde:

Public Function TraduireJourMois(MonJourMois) As String
Select Case MonJourMois
Case "Lun."
TraduireJourMois = "Lundi"
Case "Mar."
TraduireJourMois = "Mardi"
Case "Mer."
TraduireJourMois = "Mercredi"
[...]

Case "Jan."
TraduireJourMois = "Jeudi"
Case "Fev."

Case Else
TraduireJourMois = "Erreur!"
[...]


End Function




"asta" a écrit dans le message de news:

Bon la question c'est vite fait sentir, est t'il possible via une
function
établir toute une série de chose que je ferais traduire dans ma
requête,
j'ai
donc séparé comme je le désirais mes paramètres sur cette date qui me
cause
bien des tourments, donc un champs qui est "ven." un autre qui est "25
"un
autre qui est "avr." un autre qui est "05" et un autre qui "18:25" puis
je
donc lui dire que "lun." "mar." "mer." etc pour tous les jours de la
semaine
lui indiquer que c'est égal à "lundi"; mardi etc et idem pour les mois
"janv." ; "fev." ainsi je construis ma requête et je n'aurais plus à
m'inquiété de la façon dont ma date est arrivée elle sera traduite
champs
par
champs, ven. sera traduit par vendredi, avr. par avril etc ......
Est ce possible SVP MERCI
"asta" wrote:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction
de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus,
car
je
trouve ce cas de figure judicieux et je voudrais essayer de le faire,
mais je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il
faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta












Avatar
asta
Bonjour,
Oui je m'en suis doutée alors j'ai effectivement appliqué la seconde
solution qui fonctionne très bien un peu long car je vais appliquer ça dans
une requête ou j'ai deux champs date/heure, un champs qui est l'heure et date
de prise de service, et un champs qui est l'heure et date de fin de service
au format comme tu l'as vu dans nos entretiens précédents, donc je dois
décortiquer mes jours, mois, an et heure pour ces 2 chps et ensuite rajouter
la cde qui fonctionnera également pour mes deux champs "entrée" et "sortie
"(jour), il faut savoir que je récupère des fichiers ".csv" d'un logiciel de
brasserie, je récupère par mois et par individu donc j'ai 14 fichiers ".csv"
que je récupère en lien dans access et ensuite je regroupe ces 14 fichiers
par ajout dans une seule table puis je fais mes conversions comme tu me l'as
si gentiment expliqué donc beaucoups de manip dans un premier tps avant
d'arriver au final à un état par personne avec le récapitulatif des heures et
dates de prise de service et de fin de service le tps en heure journalier et
le récapitulatif en fin d'état pour avoir le nombre d'heures travaillées dans
le mois .........voilà, le tout que je rends le plus simple possible pour
l'utilisateur qui ne pratique pas l'informatique en général, puisse sortir
ses états mensuels sans se prendre la tête, la prise de tête pour le moment
c'est la mienne.
En tout cas je te remercie je vais me remettre à la tâche afin de la
simplifier au maximum.
cordialement
asta

"Thom Thom" wrote:

Pardon, ça ne peux pas fonctionner à cause de ton mois qui n'est pas un
numéro!
mieux vaut utiliser la deuxieme solution
cette fonction s'utilise de la même façon que GetDate

ps: je te laisse le soin de la complèter


"asta" a écrit dans le message de news:

alors dans ma requête pour récupérer le jour voici ce que j'ai fais :
jours:
GetDate([Start];" ";0) donc je récupère ven. si je désire utiliser ton cas
préféré ou dois-je mettre "format ("31" & " /" & "12" & "/"05","dddd") qui
te
donne samedi" ????? à quel endroit de ma requête ????
merci


"Thom Thom" wrote:

Deux solutions :
la premiere (que je préfère):
format ("31" & " /" & "12" & "/"05","mmmm") qui te donne décembre
format ("31" & " /" & "12" & "/"05","dddd") qui te donne samedi

Pour récupérer la date : remplace les diférentes partie de la date par la
fonction que je t'ai donné précédement

La seconde:

Public Function TraduireJourMois(MonJourMois) As String
Select Case MonJourMois
Case "Lun."
TraduireJourMois = "Lundi"
Case "Mar."
TraduireJourMois = "Mardi"
Case "Mer."
TraduireJourMois = "Mercredi"
[...]

Case "Jan."
TraduireJourMois = "Jeudi"
Case "Fev."

Case Else
TraduireJourMois = "Erreur!"
[...]


End Function




"asta" a écrit dans le message de news:

Bon la question c'est vite fait sentir, est t'il possible via une
function
établir toute une série de chose que je ferais traduire dans ma
requête,
j'ai
donc séparé comme je le désirais mes paramètres sur cette date qui me
cause
bien des tourments, donc un champs qui est "ven." un autre qui est "25
"un
autre qui est "avr." un autre qui est "05" et un autre qui "18:25" puis
je
donc lui dire que "lun." "mar." "mer." etc pour tous les jours de la
semaine
lui indiquer que c'est égal à "lundi"; mardi etc et idem pour les mois
"janv." ; "fev." ainsi je construis ma requête et je n'aurais plus à
m'inquiété de la façon dont ma date est arrivée elle sera traduite
champs
par
champs, ven. sera traduit par vendredi, avr. par avril etc ......
Est ce possible SVP MERCI
"asta" wrote:

Bonjour thom?
voici une de tes réponses dans ma question première sur les extraction
de
chaine de caractères "dim TabTaChaine()
Split(taChaine," ")

Ainsi tu récupère un table de chaine avec
TabTaChaine(0)="jeu."
TabTaChaine(2)="03"
TabTaChaine(2)="mars"
TabTaChaine(3)="05"
TabTaChaine(4)="18:31"

Comment et ou tu écris cela pour obtenir une table comme ci-dessus,
car
je
trouve ce cas de figure judicieux et je voudrais essayer de le faire,
mais je
ne sais ou et comment écrire cet evennement, peux tu m'expliquer s'il
faut
que l'écrire dans une requête ou un formulaire ..
Par avance merci
asta