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

Excel Discussion :

Format cellule SEPA


Sujet :

Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Décembre 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Directeur commercial
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Format cellule SEPA
    Hello

    Je cherche comment formater aune cellule pour qu'elle apparaisse au format "SEPA"
    Par exemple :
    FR76 3000 7000 4001 0191 6874 973

    Or en utilisant reforment de cellule personnalisé suivant :
    "FR"#### #### #### #### #### #### ###
    et en tapan 7630007000400101916874 973

    j'obtiens comme résultat :
    FR76 3000 7000 4001 0000 0000 000

    tous les derniers chiffres sont tronqués par des "0"
    Quelqu'un aurait il une solution ?
    Merci
    Guy

  2. #2
    Membre averti
    Homme Profil pro
    retraité enseignement
    Inscrit en
    Mars 2013
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : retraité enseignement
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 213
    Points : 442
    Points
    442
    Par défaut Format Code SEPA ...
    Les nombres sont trop grands donc impossible d'utiliser un format nombre.

    Il faut une saisie en texte donc commencer la saisie par la "cote" (') mais je n'ai pas trouvé de format prédéfini.

    Je ne sais pas si VBA de windows est compatible avec mac mais j'ai essayé de faire une routine qui formate à la saisie un texte de 25 chiffres.

    Je l'ai mise dans la procédure événementielle "Private Sub Worksheet_Change(ByVal Target As Range)" qui se déclenche au moment de la saisie ou en correction. Il faudrait définir une zone j'ai choisi la colonne C.

    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
    31
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    Dim cell As Range
    Dim texte As String
    Dim col As Range
     
     
    Set col = Range("C:C")
    Set cell = Target
    'sortie...
    If Left(cell.Text, 2) = "FR" Or _
       cell.Column <> col.Column Or _
       cell.Text = "" _
              Then Exit Sub 'pour eviter le bouclage
     
    'format...
    If Len(cell.Text) = 25 Then
        texte = Left(cell.Text, 25)
        texte = "FR" + texte
        i = 4
        Do
            texte = Left(texte, i) + " " + Right(texte, Len(texte) - i)
            i = i + 5
        Loop Until i >= 30
     
        Target.Value = texte
    Else
        'erreur de saisie ... (25 chiffres!)
        Target.Value = "FR erreur de saisie"
    End If
    End Sub
    Je joins le fichier essai de windows...
    sepa.xlsm
    A vous...

    Geogeo

  3. #3
    Membre émérite
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Points : 2 657
    Points
    2 657
    Par défaut
    Bonjour vava34570,

    Une fonction toute simple te permettant d'accéder à ce que tu demandes :
    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
    Function sepa(var As String)
    Dim final As String
     
    var = "FR" & Trim(var)
    Do While Len(var) > 0
        final = final & Left(var, 4) & " "
        If Len(var) >= 4 Then
            var = Right(var, Len(var) - 4)
        Else
            var = ""
        End If
        var = Trim(var)
    Loop
    sepa = final
     
    End Function
    N'hésite pas à revenir vers moi pour tout complément !

    Cordialement,
    Kimy
    La logique :
    • Plus ya de gruyère, moins ya de gruyère.
    • Plus tu pédales moins vite, moins tu avances plus vite.
    Plusoyer les réponses pertinentes et n'oublier pas de résolver en fin de post !

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Directeur commercial
    Inscrit en
    Décembre 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Directeur commercial
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    @Kimy_Ire : Hello
    Merci pour ta réponse
    j'ai un souci quand je teste la function "sepa"

    exemple si je veux entrer le code sepa suivant :
    FR7618306000300602289800025 pour avoir au final FR76 1830 6000 3006 0228 9800 025

    Le résultat, avec la function est le suivant si j'entre le chiffre sans mettre FR devant
    FRFR 7618 4060 0030 0602 2898 0002 5
    (si je retire ensuite le FR de trop l'affichage est parfait : FR76 1830 6000 3006 0228 9800 025)

    et celui-ci si je ne met pas FR devant
    FR7, 6184 0600 0300 6e+2 4

    quel est le bug ?
    Merci

    @geogeo70 :

    Merci mais je ne sais pas faire cela.
    Merci pour ta contribution

    Guy

  5. #5
    Membre émérite
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Points : 2 657
    Points
    2 657
    Par défaut
    Bonjour vava34570,

    Alors, voici ce que tu as écris :
    Citation Envoyé par vava34570 Voir le message
    et en tapan 7630007000400101916874 973
    d'où le fait que je te propose de rajouter le "FR".
    Ainsi, si tu veux conserver le "FR" dans ce que tu inscrits, tu as juste à remplacer cette ligne var = "FR" & Trim(var) par var = Trim(var).

    Si tu ne conserves pas le "FR" dans ce que tu tapes, tu doit simplement forcer la colonne en question au format "Texte".
    Ainsi Excel interprétera pas tes valeurs comme des nombres.

    N'hésite pas à revenir vers moi !

    Cordialement,
    Kimy
    La logique :
    • Plus ya de gruyère, moins ya de gruyère.
    • Plus tu pédales moins vite, moins tu avances plus vite.
    Plusoyer les réponses pertinentes et n'oublier pas de résolver en fin de post !

Discussions similaires

  1. Caractère obligatoire dans format cellule
    Par LEIRIA dans le forum Excel
    Réponses: 8
    Dernier message: 06/06/2007, 10h21
  2. format cellule (text) rapatrier par base access
    Par makroute dans le forum Excel
    Réponses: 2
    Dernier message: 23/05/2007, 11h21
  3. [VBA-E]automatiser "clic droit, format cellule, texte"
    Par jmlcea dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/04/2006, 16h21
  4. [VBA-E] Format cellule
    Par peon3 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/02/2006, 18h35
  5. [Delphi 2005] Format cellules Excel
    Par Vulcanos dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 24/05/2005, 22h21

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