Mise a jour de champs dans une table sous une condition

Signaler
Messages postés
5
Date d'inscription
mardi 23 mars 2004
Statut
Membre
Dernière intervention
6 décembre 2011
-
Messages postés
95
Date d'inscription
vendredi 7 février 2003
Statut
Membre
Dernière intervention
28 novembre 2017
-
Bonjour,
j'ai une table des données qui se présentent de la manière suivante :
$DF4.9945
10699.179792.6.0111.H23
10700.179791.7.0101.H22
$FF4.9945
$DF3.9945
10678.179766.8.0100.H21
10709.179786.8.0100.H13
10710.179777.4.0010.B12
10705.179778.1.0000.B17
10672.179772.3.0011.B3
10673.179771.2.0001.B2
10670.179782.8.0100.H5
10671.179773.4.0010.B4
$FF3.9945
si la ligne commance par $D
J'aimerais recupérer les deux informations délimités par le point dans deux variables a et b
et remplacer le contenu apres le point (delimiteur)de la ligne suivante.
si la ligne commance par $f vider le contenu des variables a et b

ex pour les 2 premières lignes
10699.DF4.9945
10700.DF4.9945

Merci de votre aide je cherche depuis une semaine sans grand résultats

1 réponse

Messages postés
95
Date d'inscription
vendredi 7 février 2003
Statut
Membre
Dernière intervention
28 novembre 2017

salut,

voici le code qui devrait répondre à tes attentes. Maintenant, tu as plusieurs façons de l'utiliser : dans ton code VB en module, possible aussi dans un module access si tu l'utilise toujours dans un module, appelé par une requete.

Dim sKey As String


Public Function Analyze(That As String) As String

    ' Définit la donnée retournée
    Analyze = That
    
    
    ' Traitement de la donnée passée en paramètre
    Select Case UCase(Left(That, 2))
        
        Case "$D"
            ' Définit la clé en supprimant le $
            sKey = Replace(That, "$", "")
            
        Case "$F"
            ' Réinitialise la clé
            sKey = ""
            
        Case Else
            ' Récupère la 1ere partie et la concatène à la clé
            Analyze = Split(That, ".")(0) & "." & sKey
            
    End Select

End Function



bonne continuation



@+, AlKatou