Supprimer retour chariot dans un champs Acces
Résolu
matrix2002
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
Chris -
Chris -
Salut,
J'ai un petit soucis.
Je cherche à supprimer les RETOUR CHARIOT dans un champs texte sous ACCESS windows 98 pour pouvoir exporter ce champs sour .CSV.
Ce fichier par la suite est envoyé à un serveur qui traite les lligne de champs pour intégrer les modifications dans une base.
Le traitement de ce fichier se faisant automatiquement, dès que j'ai un champ avec un retour chariot, il m'envoi une erreur et plante tout !!!
SVP à l'aide j'en perd mon latin et je ne trouve pas de solutions.
D'avance merci
J'ai un petit soucis.
Je cherche à supprimer les RETOUR CHARIOT dans un champs texte sous ACCESS windows 98 pour pouvoir exporter ce champs sour .CSV.
Ce fichier par la suite est envoyé à un serveur qui traite les lligne de champs pour intégrer les modifications dans une base.
Le traitement de ce fichier se faisant automatiquement, dès que j'ai un champ avec un retour chariot, il m'envoi une erreur et plante tout !!!
SVP à l'aide j'en perd mon latin et je ne trouve pas de solutions.
D'avance merci
A voir également:
- Supprimer retour chariot dans un champs Acces
- Supprimer rond bleu whatsapp - Guide
- Supprimer une page dans word - Guide
- Acces rapide - Guide
- Impossible de supprimer un fichier - Guide
- Supprimer pub youtube - Accueil - Streaming
4 réponses
J'ai chercher et trouver la solution que je publie ici :
On ouvre la base access 97 pour creer un nouveau module dans lequel on colle le code suivant :
Public Function ReplaceT(ByVal Expression As String, _
ByVal Find As String, _
ByVal Replace As String, _
Optional ByVal Start As Long = 1, _
Optional ByVal Count As Long = -1, _
Optional ByVal Compare As Integer = vbTextCompare) _
As String
Dim P As Long ' position 1er caractère à tester
Dim L As Long ' longueur de expression
Dim f As Long ' longueur de la chaîne à remplacer
Dim r As Long ' longueur chaîne de remplacement
' argument "Start" : élimination du début de chaîne
Let L = Len(Expression)
If Start > L Then
' parceque "Right$" n'accepte pas 1 taille négative
Let Expression = vbNullString
ElseIf Start > 1 Then
' troncature d'"Expression"
Let Expression = Right$(Expression, L - Start + 1)
End If
ReplaceT = Expression ' valeur retour par défaut
' argument "Find" : si chaîne vide, on retourne "Expression".
If Find = vbNullString Then Exit Function
Let f = Len(Find)
Let r = Len(Replace) ' Taille de la chaîne de remplacement
Let P = 1 ' on commence à la première position
If Count <> 0 Then
Do
' La taille d'"Expression" peut varier lors de chaque
' remplacement (si "Find" et "Replace" sont de longueurs
' différentes), c'est pourquoi l'instruction suivante
' est située DANS la boucle.
Let L = Len(Expression)
' position de la sous-chaîne à remplacer...
Let P = InStr(P, Expression, Find, Compare)
' ... si elle y figure bien
If P > 0 Then
Let Expression = Left$(Expression, P - 1) + _
Replace + _
Right$(Expression, (L - P - f + 1))
' décalage 1er caractère à comparer (position trouvée
' + taille de la chaîne de remplacement)
Let P = P + r
' Un remplacement de moins à effectuer (si "Count">0)
' on continue indéfiniment si "Count" < 0
Let Count = Count - 1
End If
' Si le compteur atteint zéro (cas où on voulait un nombre
' défini de substitutions), où s'il n'y a plus de
' remplacements possibles, on sort.
Loop Until (P <= 0) Or (Count = 0)
End If
ReplaceT = Expression ' retour..
End Function
Une fois ce code collé, il suffit d'utiliser RemplaceT dans une requete de mise à jour par exemple :
UPDATE Table SET Table.description = ReplaceT([description],Chr(10),"<br>");
Il est important de l e faire pour les caractères chr(10) et chr(13)
Voila à bientot
On ouvre la base access 97 pour creer un nouveau module dans lequel on colle le code suivant :
Public Function ReplaceT(ByVal Expression As String, _
ByVal Find As String, _
ByVal Replace As String, _
Optional ByVal Start As Long = 1, _
Optional ByVal Count As Long = -1, _
Optional ByVal Compare As Integer = vbTextCompare) _
As String
Dim P As Long ' position 1er caractère à tester
Dim L As Long ' longueur de expression
Dim f As Long ' longueur de la chaîne à remplacer
Dim r As Long ' longueur chaîne de remplacement
' argument "Start" : élimination du début de chaîne
Let L = Len(Expression)
If Start > L Then
' parceque "Right$" n'accepte pas 1 taille négative
Let Expression = vbNullString
ElseIf Start > 1 Then
' troncature d'"Expression"
Let Expression = Right$(Expression, L - Start + 1)
End If
ReplaceT = Expression ' valeur retour par défaut
' argument "Find" : si chaîne vide, on retourne "Expression".
If Find = vbNullString Then Exit Function
Let f = Len(Find)
Let r = Len(Replace) ' Taille de la chaîne de remplacement
Let P = 1 ' on commence à la première position
If Count <> 0 Then
Do
' La taille d'"Expression" peut varier lors de chaque
' remplacement (si "Find" et "Replace" sont de longueurs
' différentes), c'est pourquoi l'instruction suivante
' est située DANS la boucle.
Let L = Len(Expression)
' position de la sous-chaîne à remplacer...
Let P = InStr(P, Expression, Find, Compare)
' ... si elle y figure bien
If P > 0 Then
Let Expression = Left$(Expression, P - 1) + _
Replace + _
Right$(Expression, (L - P - f + 1))
' décalage 1er caractère à comparer (position trouvée
' + taille de la chaîne de remplacement)
Let P = P + r
' Un remplacement de moins à effectuer (si "Count">0)
' on continue indéfiniment si "Count" < 0
Let Count = Count - 1
End If
' Si le compteur atteint zéro (cas où on voulait un nombre
' défini de substitutions), où s'il n'y a plus de
' remplacements possibles, on sort.
Loop Until (P <= 0) Or (Count = 0)
End If
ReplaceT = Expression ' retour..
End Function
Une fois ce code collé, il suffit d'utiliser RemplaceT dans une requete de mise à jour par exemple :
UPDATE Table SET Table.description = ReplaceT([description],Chr(10),"<br>");
Il est important de l e faire pour les caractères chr(10) et chr(13)
Voila à bientot