IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Extraction chaine dans String [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 78
    Par défaut Extraction chaine dans String
    Bonjour,

    En VBA j'ai un string qui ressemble à la photo ci-dessous, je cherche à extraire certains paramètres contenu dans le string strResp avec leurs valeurs.

    Nom : extract.png
Affichages : 154
Taille : 12,3 Ko

    par exemple j'aimerais extraire :
    MaxAllocSpace:0 et CouldTrim:65800

    si quelqu'un peut m'aider ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Essaie cet exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     Dim strResp As String
     Dim vec, c
     Dim Vals As New Collection
     strResp = "aaa:111 bbb:222 ccc:333"
     For Each c In Split(Trim(strResp), " ")
       vec = Split(c, ":")
       Vals.Add vec(1), CStr(vec(0))
     Next
     
     Debug.Print Vals("aaa")
     Debug.Print Vals("ccc")

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 78
    Par défaut
    Cela ne fonctionne pas mais je vois que le VEC est "mal" agencé
    Nom : extract2.png
Affichages : 122
Taille : 26,0 Ko

  4. #4
    Membre émérite Avatar de Valtrase
    Homme Profil pro
    Jeune retraité...
    Inscrit en
    Janvier 2016
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Jeune retraité...
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2016
    Messages : 518
    Par défaut
    Bonjours à tous,
    Je détourne une fonction que j'utilise souvent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    '@Description "Retrieves a value from a control's tag based on a key."
    Private Function GetTheValue(TagValue As String, _
                                 Value As String _
                                 ) As String
     
        On Error Resume Next
     
        Dim dict As Object
        Set dict = CreateObject("Scripting.Dictionary")
     
        Dim TempTab() As String
        TempTab = Split(TagValue, " ")
     
        Dim Counter As Integer
        For Counter = LBound(TempTab) To UBound(TempTab)
            Dim Items() As String
            Items = Split(TempTab(Counter), ":")
            If UBound(Items) = 1 Then
                dict(Items(0)) = Items(1)
            End If
        Next
     
        If dict.Exists(Value) Then
            GetTheValue = dict(Value)
        Else
            GetTheValue = vbNullString
        End If
     
        If Not dict Is Nothing Then Set dict = Nothing
    End Function
    Vous pouvez faire un test comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub test()
    Const Chaine As String = "TotalAllocated:524880 NbFreeChunck:12"
    MsgBox GetTheValue(Chaine, "NbFreeChunck")
    End Sub
    Vous pourriez faire plus simple d'utilisation avec une déclaration d'un type puis vous assignez les valeurs recherchée...
    Pouvez vous nous faire parvenir la chaine. Et pas sous forme de photo. Merci

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 78
    Par défaut
    ça me fait pareil, on dirait que les tables sont "mal" rangées

    Nom : extract2.png
Affichages : 115
Taille : 170,5 Ko

  6. #6
    Membre émérite Avatar de Valtrase
    Homme Profil pro
    Jeune retraité...
    Inscrit en
    Janvier 2016
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Jeune retraité...
    Secteur : Boutique - Magasin

    Informations forums :
    Inscription : Janvier 2016
    Messages : 518
    Par défaut
    Re,
    Pouvez-vous envoyer votre code car là nous ne somme pas sur la même longueur d'onde. Je teste la fonction est c'est ok d’après vos informations. Attention à la Casse.
    Poster :
    • Le code incriminé
    • La ligne qui contient les donnée à traitées

    ET SI POSSIBLE PAS SOUS FORME DE PHOTOS.
    Utilisez le bouton # dans le menu pour l'insertion de code avec un copier/coller.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Extraction de chaine dans un fichier
    Par Sakapatate dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 31/05/2007, 21h13
  2. Conseil sur l'extraction d'une string dans une string
    Par Mickey.jet dans le forum Delphi
    Réponses: 3
    Dernier message: 02/06/2006, 14h54
  3. [String] Extraction chaine de caractères
    Par beZor dans le forum Langage
    Réponses: 9
    Dernier message: 27/02/2006, 14h46
  4. Réponses: 28
    Dernier message: 22/09/2005, 11h57
  5. Extraction de sous-chaine dans une chaine
    Par ma2th dans le forum C
    Réponses: 7
    Dernier message: 07/05/2004, 12h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo