Remplacer point par virgule sur access2003

Messages postés
5
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008
- - Dernière réponse : cs_chapata
Messages postés
215
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
9 avril 2010
- 27 juin 2008 à 17:27
Bonjour,

J'ai un problème avec access, ce logiciel dont j'ignore beaucoup de choses ! (et le mot est faible).
Alors, je dois importer un fichier excel sur access.
Le problème est que mes montants sont avec un point au lieu d'une virgule.
Y a t il une requête pour tous les remplacer?

Merci de votre aide
Afficher la suite 

6 réponses

Messages postés
111
Date d'inscription
dimanche 19 février 2006
Statut
Membre
Dernière intervention
2 avril 2010
1
0
Merci
Salut, tu peut faire un Control + H sur le champ à modifier si l'opération est exeptionelle.
Si tu dois le refaire plus souvent, il faudra passer par une requete.
Commenter la réponse de sebtralalaetph
Messages postés
5
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008
0
Merci
Justement l'opération n'est pas du tout exceptionelle.
Je dois faire une requête, mais je ne sais pas comment faire
Commenter la réponse de tprs
Messages postés
111
Date d'inscription
dimanche 19 février 2006
Statut
Membre
Dernière intervention
2 avril 2010
1
0
Merci
Il te faut créer un module.
Dans ce module, tu colles ça:

Public Function Remplacer(ByVal Texte As String) As String
   Remplacer = Replace(Texte, ".", ",")
End Function

Ensuite tu crée une requete de mise à jour:

UPDATE  Ta_Table SET [Ta_Table].[Ton_Champ] = Remplacer([Ta_Table].[Ton_Champ]);

Voilà.
Commenter la réponse de sebtralalaetph
Messages postés
5
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008
0
Merci
Ca ne marche pas :(
Commenter la réponse de tprs
Messages postés
5
Date d'inscription
mercredi 25 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008
0
Merci
Je ne dois pas savoir faire la requete correctement
Commenter la réponse de tprs
Messages postés
215
Date d'inscription
mercredi 2 février 2005
Statut
Membre
Dernière intervention
9 avril 2010
3
0
Merci
Hello ,

ton importation est automatique (code VBA) ou manuelle depuis la barre de menu (fichier -> données externes)

Si manuelle : tu peux définir les options avancées et modifier les point par des virgules et vice et versa

Si auto :
passe la fonction suivante apres ton importation :

function hohoho()
dim sChaine as string
dim rs as recordset
dim n as interger
dim newValeur as variant
sChaine = "SELECT [ton champ a montant] FROM [ma table de données];"
  Set rs = CurrentDb.OpenRecordset(sChaine, dbOpenDynaset)
  With rs
    If .EOF Then msgbox "Pas de recordset dans ma table" : exit function
    Do Until .EOF
      .Edit
        For n = 1 To Len(![ton champ montant])
          If Mid(![ton champ montant], n, 1) = "." Then
            ![ton champ montant] = Left(![ton champ montant], n - 1) & "," & Right(strValeur, Len(![ton champ montant]) - n)
          End If
        Next
      .Update
      .MoveNext
    Loop

  End With
  Set rs = Nothing

end function

Bon courage pour la suite

***********  Si cette réponse vous convient, merci de valider ce post  ***********

ChaPaTa
Commenter la réponse de cs_chapata