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 :

Appliquer une formule de concaténation en VBA [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut Appliquer une formule de concaténation en VBA
    Bonjour le forum,

    Pouvez vous m'aider svp, je veux appliquer une formule de concaténation spécifique en VBA sur une plage de cellule.
    Ci-contre mon code :
    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
     
    Dim Somme As Variant
    Dim Concatener As Variant
    Dim Ligne As Integer
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Selection.Cells.CountLarge > 1 Then
     
        Else
            Ligne = ActiveCell.Row
     
            ' Application de la somme de Note_1 + Note_2 sur la colonne Somme
            If Not Intersect([J2:J10], Target) Is Nothing And Target.Count = 1 Then
                Somme = Cells(Ligne, 8).Value + Cells(Ligne, 9).Value
                Cells(Ligne, 10).Value = Somme
            End If
     
            'Appliquer la formule de concaténation de Note_1 + Note_2 + Somme
            'Adaptater la formule du style : TEXTE(Cells(ligne, 8);"0###")&""&TEXTE(Cells(ligne, 9);"0###")&""&TEXTE(Cells(ligne, 10);"0###")
            If Not Intersect([K2:K10], Target) Is Nothing And Target.Count = 1 Then
                Concatener = Cells(Ligne, 8) & "" & Cells(Ligne, 9) & "" & Cells(Ligne, 10)
                Cells(Ligne, 11).Value = Concatener
            End If
     
        End If
    End Sub
    Je veux appliquer une formule de concatenation du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TEXTE(Cells(ligne, 8);"0###")&""&TEXTE(Cells(ligne, 9);"0###")&""&TEXTE(Cells(ligne, 10);"0###")
    Je met en PJ mon fichier XLS.

    Merci d'avance
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 586
    Points : 34 255
    Points
    34 255
    Par défaut
    Bonjour,

    comme il s'agit de deux choses différentes, pourrais-tu nous dire ce que tu cherches a faire entre
    - mettre le résultat de la concaténation dans la cellule (en passant par .Value)
    - mettre la formule avec les fonctions dont tu as parlé dans la cellule (en passant par .Formula)

    Car selon ta réponse, les solutions proposées seront différentes

    Merci pour nous.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par Jean-Philippe André Voir le message
    Bonjour,

    comme il s'agit de deux choses différentes, pourrais-tu nous dire ce que tu cherches a faire entre
    - mettre le résultat de la concaténation dans la cellule (en passant par .Value)
    Salut,
    Si j'ai bien compris c'est ce que je voulais faire sauf ça ne m'a pas réussit [débutant je suis ]

    Citation Envoyé par Jean-Philippe André Voir le message
    - mettre la formule avec les fonctions dont tu as parlé dans la cellule (en passant par .Formula)
    S'il existe une méthode en passant par Formula qui me permettra de d'avoir mon résultat attendu aussi je serais preneur.

    Citation Envoyé par Jean-Philippe André Voir le message
    Car selon ta réponse, les solutions proposées seront différentes

    Merci pour nous.
    Merci encore de votre réaction.

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par JemaCodeur Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            If Not Intersect([K2:K10], Target) Is Nothing And Target.Count = 1 Then
                Concatener = Cells(Ligne, 8) & "" & Cells(Ligne, 9) & "" & Cells(Ligne, 10)
                Cells(Ligne, 11).Value = Concatener
            End If
    Je veux appliquer une formule de concatenation du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TEXTE(Cells(ligne, 8);"0###")&""&TEXTE(Cells(ligne, 9);"0###")&""&TEXTE(Cells(ligne, 10);"0###")
    Aussi bien dans VBA que dans la formule Excel, les & "" sont totalement inutiles.

    Si tu veux l'équivalent VBA de la fonction TEXTE(), c'est Format().
    Lire ceci : https://docs.microsoft.com/fr-fr/off...r-applications

    Mais je ne comprends pas l'intérêt du format "0###".
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Aussi bien dans VBA que dans la formule Excel, les & "" sont totalement inutiles.

    Si tu veux l'équivalent VBA de la fonction TEXTE(), c'est Format().
    Lire ceci : https://docs.microsoft.com/fr-fr/off...r-applications
    Salut Menhir;
    Merci pour le liens je vais le potasser pour avoir ma réponse.

    Citation Envoyé par Menhir Voir le message
    Mais je ne comprends pas l'intérêt du format "0###".
    Weah j'avoue que ce que je veux faire c'est un peut tordu, mais bon il me le faut puisse que la bonne concaténation de ces cellules me permettra de faire une récupération dans ma BD d'autres colonnes.

  6. #6
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Bonjour,

    Menhir, votre lien m'a permit d'avoir un début de solution.
    Par contre, je suis toujours bloqué sur le formatage de la première cellules quand j'applique la formule suivantes.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
            If Not Intersect([K2:K10], Target) Is Nothing And Target.Count = 1 Then
                ' Existe - t - il une methode plus simple de le faire.
                Resultat = Format(Cells(ligne, 8), "0#") & "" & Format(Cells(ligne, 9), "0##") & "" & Format(Cells(ligne, 10), "0#") 
                Cells(ligne, 11).Value = Resultat
            End If
    S'il y a une méthode plus simple de le faire j'en serais ravis.

    Merci.

  7. #7
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Il faudrait que tu commences par appliquer les mêmes formats que ceux se trouvant dans ta formule Excel.

    Et prend aussi le temps de relire ma réponse précédente en entier.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  8. #8
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Il faudrait que tu commences par appliquer les mêmes formats que ceux se trouvant dans ta formule Excel.
    Bonjour Menhir,
    j'applique ma formule comme ci-joint.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Format(Cells(Ligne, 8), "0##") & Format(Cells(Ligne, 9), "0##") & Format(Cells(Ligne, 10), "0##")
    Cependant, au lieu d'avoir par exemple :
    023045068
    J'ai une valeur ne prenant pas en compte le premier zero :
    23045068


    Citation Envoyé par Menhir Voir le message
    Et prend aussi le temps de relire ma réponse précédente en entier.
    Je crois savoir ce que vous voulez me faire savoir. les symboles &"" ?

  9. #9
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Décidément, j'ai l'impression que tu ne lis pas vraiment ce qu'on t'écrit.

    Je le répète, il faudrait que tu commences par appliquer les mêmes formats que ceux se trouvant dans ta formule Excel.

    Compare ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TEXTE(Cells(ligne, 8);"0###")&TEXTE(Cells(ligne, 9);"0###")&TEXTE(Cells(ligne, 10);"0###")
    Avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Format(Cells(Ligne, 8), "0##") & Format(Cells(Ligne, 9), "0##") & Format(Cells(Ligne, 10), "0##")
    Tu ne vois pas une différence dans les formats ???
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  10. #10
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Décidément, j'ai l'impression que tu ne lis pas vraiment ce qu'on t'écrit.

    Je le répète, il faudrait que tu commences par appliquer les mêmes formats que ceux se trouvant dans ta formule Excel.

    Compare ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TEXTE(Cells(ligne, 8);"0###")&TEXTE(Cells(ligne, 9);"0###")&TEXTE(Cells(ligne, 10);"0###")
    Avec ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Format(Cells(Ligne, 8), "0##") & Format(Cells(Ligne, 9), "0##") & Format(Cells(Ligne, 10), "0##")
    Tu ne vois pas une différence dans les formats ???
    D'accord, je ne vois absolument pas de ce que vous voulez me faire savoir. Je présume que vous parlez du Format pour que je l'écris de la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Format(Cells(Ligne, 8), "0###") & Format(Cells(Ligne, 9), "0###") & Format(Cells(Ligne, 10), "0###")
    Sauf que si c'est ça, je crois que c'est à peu prés la même chose avec un # de moins et je ne crois pas que ça change grand chose à ma formule.

    Après tout c'est vous l'expert si vous dites que j'ai raté une chose .

  11. #11
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    S'il y a 230 en colonne 8, Cells(ligne, 8);"0##") donnera "230" alors que Cells(ligne, 8);"0###") donnera "0230".
    C'est ce que tu sembles indiquer dans ta réponse #8 entre le code en vert et celui en rouge.

    Si tu ne mets pas le même nombre de # entre ta formule Excel et ta formule VBA, ça donnera forcément des résultats différents.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  12. #12
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par Menhir Voir le message
    S'il y a 230 en colonne 8, Cells(ligne, 8);"0##") donnera "230" alors que Cells(ligne, 8);"0###") donnera "0230".
    C'est ce que tu sembles indiquer dans ta réponse #8 entre le code en vert et celui en rouge.

    Si tu ne mets pas le même nombre de # entre ta formule Excel et ta formule VBA, ça donnera forcément des résultats différents.
    D'accord je vois ce vous voulez me dire mais sauf que même si j'applique Cells(ligne, 8);"0###") me donnera 230 au lieu de 0230 dans la première cellules de concaténation.

    Je vous mets en PJ le fichier XLS Actuelle.

    Merci Quand même de vous intéresser à mon problème.
    Fichiers attachés Fichiers attachés

  13. #13
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par JemaCodeur Voir le message
    D'accord je vois ce vous voulez me dire mais sauf que même si j'applique Cells(ligne, 8);"0###") me donnera 230 au lieu de 0230 dans la première cellules de concaténation.
    Je viens de tester, Format(230, "0###") renvoie 0230.

    Si tu obtiens 230, c'est sans doute parce que la cellule dans laquelle tu places cette valeur n'est pas au format Texte.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(Ligne, 11).NumberFormat = "@"
    Je vous mets en PJ le fichier XLS Actuelle.
    Je n'ouvre jamais les fichiers joints, surtout les XLSM.

    Merci Quand même de vous intéresser à mon problème.
    Je ne comprends pas trop le "quand même".
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  14. #14
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Je viens de tester, Format(230, "0###") renvoie 0230.

    Si tu obtiens 230, c'est sans doute parce que la cellule dans laquelle tu places cette valeur n'est pas au format Texte.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(Ligne, 11).NumberFormat = "@"

    Je n'ouvre jamais les fichiers joints, surtout les XLSM.
    Vous avez parfaitement raison c'était le format de mes cellules qui posait problème.


    Citation Envoyé par Menhir Voir le message
    Je ne comprends pas trop le "quand même".
    Rien de méchant, c'est juste que il n'y a que vous qui m'aidez et depuis hier vous ne m'avez pas laissé.
    Grace à vous, mon problème est résolu.

    J'ai juste une question svp.

    ET SI JE VOULAIS QUE LE RÉSULTAT DE LA CONCATÉNATION S'AFFICHE SANS QU'ON EST BESOIN DE CLIQUER DANS LA CELLULE COMMENT FAIRE ?

  15. #15
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 955
    Points
    55 955
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par Menhir Voir le message
    [...]
    Si tu obtiens 230, c'est sans doute parce que la cellule dans laquelle tu places cette valeur n'est pas au format Texte.[...]
    Ca devient n'importe quoi, les réponses sur ce forum...


    Nom : 2020-09-24_122645.png
Affichages : 1336
Taille : 19,3 Ko

    Nom : 2020-09-24_122728.png
Affichages : 1314
Taille : 13,5 Ko

    Nom : 2020-09-24_122752.png
Affichages : 1304
Taille : 14,1 Ko


    Qu'est-ce que le format de la cellule a à voir avec la fonction VBA Format()? Je me le demande...


    Cela étant dit, peut-être le demandeur pourrait-il expliquer en français (sans jargon Excel et VBA) d'où il part et ce qu'il souhaite obtenir. On gagnerait du temps.

    Pour info, on peut récupérer la valeur d'une cellule selon trois propriétés de celle-ci (en notant que, par défaut, et sauf instruction set qui affecte un objet, Cell équivaut à Cell.Value):
    • Cell ou Cell.Value renvoie la valeur selon le type défini par Excel (nombre, date, texte,...)
    • Cell.Value2 renvoie la valeur telle que manipulée par Excel et par VBA, et donc par Format(...) (<> que .Value uniquement pour les dates, dans les faits)
    • Cell.Text renvoie du texte correspondant à la valeur affichée.




    Nom : 2020-09-24_123002.png
Affichages : 1305
Taille : 11,9 Ko

    Nom : 2020-09-24_124050.png
Affichages : 1301
Taille : 10,2 Ko

    Donc, Format(...) n'a rien à voir avec le format de la cellule, si on utilise format(Cell.Value, "...").
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  16. #16
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    Ca devient n'importe quoi, les réponses sur ce forum...
    Qu'est-ce que le format de la cellule a à voir avec la fonction VBA Format()? Je me le demande...
    Je laisse le demandeur répondre :
    Citation Envoyé par JemaCodeur Voir le message
    Vous avez parfaitement raison c'était le format de mes cellules qui posait problème.
    Ca devient vraiment n'importe quoi la modération sur ce forum.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  17. #17
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 955
    Points
    55 955
    Billets dans le blog
    131
    Par défaut
    Il n'est pas question ici de modération, puisque rien n'a été modéré. Evidemment, si tu imagines que chaque réponse de ma part sur le forum est un acte de modération, on n'est pas rendus. Ne pas confondre acte de modération et réponse technique, stp.

    Je dis simplement que tu dis n'importe quoi en parlant de format texte:
    Si tu obtiens 230, c'est sans doute parce que la cellule dans laquelle tu places cette valeur n'est pas au format Texte.[...]
    J'ai prouvé, copies d'écran à l'appui, que le format de la cellule n'avait rien à voir avec le fait d'obtenir 230 ou 0230. Que le demandeur ait trouvé son compte dans le reste de ta réponse ne change rien au fait que le format de la cellule n'altère en rien ce que renvoie Cell.Value (ou Cell, utilisation de la propriété par défaut).
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  18. #18
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    J'ai prouvé, copies d'écran à l'appui, que le format de la cellule n'avait rien à voir avec le fait d'obtenir 230 ou 0230. Que le demandeur ait trouvé son compte dans le reste de ta réponse ne change rien au fait que le format de la cellule n'altère en rien ce que renvoie Cell.Value (ou Cell, utilisation de la propriété par défaut).
    Le problème n'est pas le format de la cellule source mais celui de la cellule destination qui reçoit la valeur.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  19. #19
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 955
    Points
    55 955
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par Menhir Voir le message
    [...]
    Essaie de relire et de comprendre ma réponse précédente et tu verras que le problème n'est pas lié au format de la cellule, le format n'étant lié en rien à cell.value

    J'ai dit!
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  20. #20
    Nouveau membre du Club Avatar de JemaCodeur
    Homme Profil pro
    Amateur
    Inscrit en
    Avril 2019
    Messages
    60
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Amateur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2019
    Messages : 60
    Points : 38
    Points
    38
    Par défaut
    Re...
    Je crois que vous voulez tous la même chose messieurs, c'est d'aider un débutant à avancer et je salut votre sollicitude.

    Après tout j'ai une question comme quoi :
    Si je veux que ma formule de concaténation génère les valeurs sans que j’éprouve le besoin de cliquer sur la cellule comment faire ?

    Ps : je pense que j'ai demandé dans le jargon français

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 4
    Dernier message: 12/01/2017, 20h51
  2. [Toutes versions] VBA - Appliquer une formule à une colonne puis additionner
    Par korben8 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 05/11/2015, 10h59
  3. [VBA-E] Appliquer une formule si cellule non vide.
    Par zeralium dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/03/2007, 20h58
  4. Transformé une formule Excel en script VBA ?
    Par SFLEY dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 06/01/2007, 12h48
  5. appliquer une formule à +sieurs cellules excel
    Par ramsesthebest dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 27/09/2005, 21h36

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