Syntaxe

Résolu
Bonjour,

comment on écrit: "de la forme Mbps" en vba, je veut tester si la valeur de la cellule est en Mbps ou en Kbps
Merci !

7 réponses

  1. Contributeur
    Bonsoir,

    Vu le peu d'éléments que tu fournis on va supposer que tu as mis un format personnalisé dans la cellule...
    If InStr([A1].NumberFormat, "Mbps") > 0 Then 
        MsgBox "format Mbps" 
    ElseIf InStr([A1].NumberFormat, "Kbps ") > 0 Then 
        MsgBox "format Kbps" 
    Else 
        MsgBox "format inconnu" 
    End If

    eric

    Jamais tu ne répondras à un mp non sollicité...
    Bon, ça c'est fait.
    0
    1. Merci beaucoup, est-ce que tu peu m'aider pour tester si la valeur dans la cellule est en Kbps, alors on la convertie en divisant par mille cette valeur et par 1000000 si la valeur est en bps!
      Cordialement
      0
      1. Pour mieux t'expliquer mon problème, voici le tableau que j'utilise, et je veux crée un macro pour convertir toutes les valeurs en Kbps et bps en Mbps
        formule:
        Kbps: /1000
        bps: /1000000
        et je multiplierais les valeurs obtenues par la colonne D
        International link Numero Interface Receive Valeurs allouéés Pourcentage
        Level3 London utilization 95th Percentile 404 Mbps 700
        TH2 utilization 95th Percentile 65 Kbps 144
        BICS1 utilization 95th Percentile 120 Mbps 150
        BICS2 utilization 95th Percentile 128 Mbps 150
        BICS3 utilization 95th Percentile 127 Mbps 150
        MX Paris - Tulear utilization 95th Percentile 109 Mbps 144
        MX London - Tulear utilization 95th Percentile 516 Mbps 560
        FranceIX utilization 95th Percentile 33,8 Kbps 1000
        LINX utilization 95th Percentile 471 Mbps 1000
        désolé pour le desordre
        Merci
        0
        1. Contributeur
          Bonjour,

          Incompréhensible et rien à voir avec la question de départ.
          Déposer le fichier xls (réduit au nécessaire et anonymisé, avec les explications et le résultat attendu) sur cjoint.com et coller ici le lien fourni.

          eric

          0
          1. Voici le lien du fichier .xls https://www.cjoint.com/?3CAjMXWrVGR
            Je veu obtenir dans un colonne vide toues les valeurs en Mbps.
            les Kbps et bps sont convertis en Mbps.
            je ne sais pas si c'est assez claire?? Merci
            0
            1. Contributeur
              Re,

              avec une fonction personnalisée à mettre dans un module standard :
              Function Mbps(cel As Range) As Double
                  Mbps = Split(IIf(Application.International(xlDecimalSeparator) = ".", Replace(cel, ",", "."), cel), " ")(0)
                  If LCase(Right(cel, 4)) = "kbps" Then
                      Mbps = Mbps / 1000
                  ElseIf LCase(Right(cel, 4)) = " bps" Then
                      Mbps = Mbps / 1000000
                  End If
              End Function

              Syntaxe :
              =mbps(C2)
              https://www.cjoint.com/c/CCAl1VIwKwL

              eric
              0
              1. Merci beaucoup Eric
                0
                1. Contributeur
                  ok, je met en résolu pour toi (en haut vers ton titre, pour la prochaine fois)
                  eric
                  0