OVH Cloud OVH Cloud

replace

6 réponses
Avatar
bernard065
Bonjour , je n'arrive pas à écrire la focntion replace pour modifier
[matable].[champ] = "06-AUG-06" sous la forme "06/08/06" mais je coince.
Qui pourrait m'aider, svp ?
Merci

J'ai essayé
Private sub1_ckick()
replace ([matable].[champ],"-AUG-", "/08/")
en sub

6 réponses

Avatar
Eric
Bonjour,

Pourquoi ne pas choisir directement, dans la table, pour le champ de
type Date, dans ses propriétés, le format 'Date, abrégé' plutôt que
'Date, réduit' ?

Bonjour , je n'arrive pas à écrire la focntion replace pour modifier
[matable].[champ] = "06-AUG-06" sous la forme "06/08/06" mais je coince.
Qui pourrait m'aider, svp ?
Merci

J'ai essayé
Private sub1_ckick()
replace ([matable].[champ],"-AUG-", "/08/")
en sub


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
3stone
Salut,

"bernard065"
| Bonjour , je n'arrive pas à écrire la focntion replace pour modifier
| [matable].[champ] = "06-AUG-06" sous la forme "06/08/06" mais je coince.


On ne remplace PAS le format d'un champ date !!!

Un champ Date n'est pas sauver comme il s'affiche, mais par dans un format
numérique dont tu ne devrais même pas te soucier.

Par contre, si tu souhaite *afficher* une date selon un certain format
regarde et apprends à utiliser le formatage des champs "date"


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Jessy Sempere [MVP]
Bonjour

S'agit-il réellement d'un problème de format... ;-))

Son champ est peut-être tout simplement un champ de type texte d'où
l'utilité de la fonction Replace ???
Si c'est le cas, il faut regarder du côté des requête de mise à jour, du
genre :

UPDATE taTable SET TonChamp = replace ([tonChamp],"-AUG-", "/08/");

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
en cours de migration vers : http://access.fr.free.fr/
Pour l'efficacité de tous :
http://www.mpfa.info/
------------------------------------

"3stone" a écrit dans le message de news:
%23k1JiOD$
Salut,

"bernard065"
| Bonjour , je n'arrive pas à écrire la focntion replace pour modifier
| [matable].[champ] = "06-AUG-06" sous la forme "06/08/06" mais je
coince.


On ne remplace PAS le format d'un champ date !!!

Un champ Date n'est pas sauver comme il s'affiche, mais par dans un format
numérique dont tu ne devrais même pas te soucier.

Par contre, si tu souhaite *afficher* une date selon un certain format
regarde et apprends à utiliser le formatage des champs "date"


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
Salut Jessy,

"Jessy Sempere [MVP]"
| S'agit-il réellement d'un problème de format... ;-))
|
| Son champ est peut-être tout simplement un champ de type texte d'où
| l'utilité de la fonction Replace ???


Pour mettre une emplâtre sur une jambe de bois ? ;-(

Une date n'a rien à foutre dans un champ texte.
Imagine que demain, il revienne demander comment calculer
l'écart entre 2 dates... tu ecris un routine ? ;-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
bernard065
Bonjour à Tous,

Merci à tous pour vos réponses.
En fait, le problème vient du fait que ce champ texte provient de
l'importation d'un fichier HTML mais c'est en réalité une date, donc ce choix
ne dépend pas de moi.
Par la suite, je dois effectuer un classement, d'où la nécessité de la
conversion.
Je vais essayer la solution de Jessy.


Bonjour , je n'arrive pas à écrire la focntion replace pour modifier
[matable].[champ] = "06-AUG-06" sous la forme "06/08/06" mais je coince.
Qui pourrait m'aider, svp ?
Merci

J'ai essayé
Private sub1_ckick()
replace ([matable].[champ],"-AUG-", "/08/")
en sub


Avatar
bernard065
Bonjour à tous,

Merci Jessy, grâce à tes conseils, je suis arrivé à ceci en passant par une
macro (exécuter sql et dans le champ commande, il suffit de taper UPDATE
MOBISTARidentity SET Champ2 = replace([Champ2],""-JAN-"",""/01/")
1 ligne par mois.
Une fois ma macro complète nommée "Replace_dates", enregistrer sous "module"
et j'ai obtenu la function "Replace_dates" que voici.
Si je prends la peine de donner la solution, ce n'est pas pour toi le [MVP],
je ne me permetrais pas , mais bien pour tout les novices comme moi qui ont
souvent besoin d'un p'tit coup de pouce pour évoluer.





Function Replace_dates()
On Error GoTo Replace_dates_Err

DoCmd.RunSQL "UPDATE matable SET monchamp =
replace([monchamp],""-JAN-"",""/01/"");", -1
DoCmd.RunSQL "UPDATE matable SET monchamp =
replace([monchamp],""-FEB-"",""/02/"");", -1
'etc
Replace_dates_Exit:
Exit Function

Replace_dates_Err:
MsgBox Error$
Resume Replace_dates_Exit

End Function


Bonjour , je n'arrive pas à écrire la focntion replace pour modifier
[matable].[champ] = "06-AUG-06" sous la forme "06/08/06" mais je coince.
Qui pourrait m'aider, svp ?
Merci

J'ai essayé
Private sub1_ckick()
replace ([matable].[champ],"-AUG-", "/08/")
en sub