Détection d'un format et application de formules conditionnelle

Bonjour à tous,

Débutante en VBA, j'aurais besoin de votre aide pour un problème qui me dépasse.

Tout dépend à quel moment de la journée je télécharge depuis le web mes données, le format des nombres importés (qui n'en sont pas - ça importe des chaines de caractères en fait) n'est pas la même (voir les colonnes A et C ci-dessous) avec des nombres à 1,2,3 ou 4 chiffres et des chiffres variables après la virgule.

Du coup, j'ai 2 fichiers avec 2 macros différentes: l'une que j'utilise en journée pour l'importation de mes données selon le modèle de la colonne A que je transforme en nombres avec une formule X, et ensuite, et une autre macro dans un autre fichier pour le travail le soir quand j'ai besoin d'importer des valeurs (importées selon le le modèle de la colonne C que je transforme en nombres avec une formule Y).

Je voudrais réunir le tout dans un seul fichier et que cette macro améliorée puisse détecter le format importé dans ma base de données avec un IF ... ELSE puis appliquer la bonne formule de transformation des données derrière X ou Y.

Est-ce que quelqu'un aurait une idée là-dessus?

Merci pour votre aide.

Cordialement

Fraise

9,9079.967(z)
33,6533.750(z)
17,10218.980(z)
11,95512.000(z)
200198.700(z)
636,1675.400(z)
132,28132.740(z)
1 336.0001 298.500(z)

Bonjour,

A tester et à mettre dans un module standard :

Function ValeurCellule(ByVal Valeur As Variant) As Variant

Dim I As Integer
Dim ValeurModifiee As Variant

    If Valeur = "" Then Exit Function
    For I = 1 To Len(Valeur)
      Select Case Mid(Valeur, I, 1)
           Case "."
                ValeurModifiee = ValeurModifiee & ","
           Case 0 To 9, ","
                ValeurModifiee = ValeurModifiee & Mid(Valeur, I, 1)
      End Select
    Next I
    If UBound(Split(ValeurModifiee, ",")) <= 1 Then
       ValeurCellule = CDbl(ValeurModifiee)
    Else
       ValeurCellule = "Invalide"
    End If

End Function

Bonjour Eric Kergresse,

Merci pour ta réponse et pour ton aide.

Je ne sais pas encore me servir des fonctions ... du coup, je ne peux pas vérifier si ça fonctionne dans mon programme.

Mais je ne doute pas que ça puisse m'aider d'ici quelques semaines lorsque je maitriserai un peu plus les fonctions.

C'est un fichier qui est amené à évoluer.

Je te dirais ça.

Bonne journée

Fraise

Regarde le module standard Module1 dans ce fichier.

Rechercher des sujets similaires à "detection format application formules conditionnelle"