Microsoft 365 Concaténation et mise en forme de données

  • Initiateur de la discussion Initiateur de la discussion Fab117
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Fab117

XLDnaute Impliqué
Bonjour,

J'ai plusieurs colonnes avec un grand nombre de données (des chiffres décimaux pour la plupart).

Pour chaque colonne, je souhaite concaténer le contenu de plusieurs lignes et les mettre en forme.

Avec le code ci-dessous, j'arrive à faire la concaténation :

VB:
Sub FormatageDonneesQuiFonctionnePartiellement()
    
    Dim Source As Worksheet
    Dim Cible As Worksheet
    
    Set Source = ThisWorkbook.Sheets("Source") ' Remplacez "Source" par le nom de votre onglet source
    Set Cible = ThisWorkbook.Sheets("Cible") ' Remplacez "Cible" par le nom de votre onglet cible


    ' Formatage des données
    For col = 2 To 22 ' Boucle sur les colonnes B à V
        Cible.Cells(1, col) = Source.Cells(1, col) ' Copie de l'en-tête de colonne

        Cible.Cells(2, col) = "   " & Source.Cells(16, col) & " € | (" & (Source.Cells(16, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
            "   " & Source.Cells(17, col) & " € | (" & (Source.Cells(17, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
            "   " & Source.Cells(18, col) & " € | (" & (Source.Cells(18, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
            "   " & Source.Cells(19, col) & " € | (" & (Source.Cells(19, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
            "   " & Source.Cells(20, col) & " € | (" & (Source.Cells(120, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
            "   " & Source.Cells(21, col) & " € | (" & (Source.Cells(21, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
            "   " & Source.Cells(22, col) & " € | (" & (Source.Cells(22, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
            (Source.Cells(23, col)) & vbNewLine

    Next col

End Sub



Mais je ne sais pas comment faire la mise en forme.

Par exemple, pour la ligne :

Code:
" " & Source.Cells(17, col) & " € | (" & (Source.Cells(17, col) / Source.Cells(23, col)) & ")" & vbNewLine & _
Pour l'instant, il m'affiche

" 9.485 € | (0.27865412358952545)"

Ce que j'attends, c'est

" 9.49 € | (27.9 %)"

=> 2 décimales pour "Source.Cells(17, col)"

=> pourcentage a une décimale pour le calcul "(Source.Cells(17, col) / Source.Cells(23, col)"



Quelqu'un saurtait-il comment adapter mon code ?



Bonne soirée.



Fab



qu'il affiche le chiffre "Source.Cells(17, col)" avec 2 décimales
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
9
Affichages
369
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
482
Réponses
4
Affichages
946
Retour