les données de format avec les formats numériques personnalisés à l’aide VBA dans Microsoft Excel
Dans cet article, nous allons créer une macro pour formater les données données dans le format numérique personnalisé souhaité à l’aide de VBA.
Les données brutes de cet exemple se composent des données de l’équipe commerciale. Les données brutes contiennent le nom, l’identifiant du produit, le prix du produit, la quantité vendue et les ventes totales.
Avant d’exécuter la macro, il faut spécifier le format de nombre personnalisé dans la colonne P et le numéro de colonne dans lequel on veut appliquer le format de nombre personnalisé dans la colonne Q.
Cliquez sur le bouton «Format» pour exécuter la macro «Formatage».
La macro modifiera le formatage des données données en fonction du format numérique personnalisé spécifié.
Explication logique
Cette macro sélectionne la mise en forme des nombres dans la colonne P et affecte la mise en forme des nombres aux colonnes spécifiées par les numéros des colonnes dans la colonne Q.
Dans cette macro, nous avons utilisé deux boucles DO UNTIL pour la boucle. La première boucle DO UNTIL est utilisée pour boucler jusqu’à ce que tous les formats de nombres soient appliqués aux colonnes. La deuxième boucle DO UNTIL est utilisée pour trouver tous les différents numéros de colonne spécifiés et séparés par des virgules (,).
Explication du code
strCol = Gauche (txt, InStr (txt, « , ») – 1)
Le code ci-dessus est utilisé pour séparer le numéro de colonne de la chaîne qui contient tous les numéros de colonne séparés par des virgules (,).
Colonnes (CInt (strCol)). NumberFormat = wks.Cells (intRow, 16) .Value Le code ci-dessus est utilisé pour appliquer le format numérique personnalisé à la colonne spécifiée.
txt = Droite (txt, Len (txt) – InStr (txt, « , »))
Le code ci-dessus est utilisé pour séparer la chaîne laissée de côté après la suppression du numéro de colonne de la chaîne définie.
Veuillez suivre ci-dessous pour le code
Option Explicit Sub Formatting() 'Declaring variables Dim wks As Worksheet Dim intRow As Long Dim strCol As String Dim txt As String 'Initializing the variables Set wks = Worksheets("Format") intRow = 4 'Looping in 16th column until empty value is found Do Until IsEmpty(wks.Cells(intRow, 16)) 'Assigning the value of custom number format txt = wks.Cells(intRow, 17) 'Looping and finding all the column number separated by comma(,) Do Until InStr(txt, ",") = 0 'Getting the column number strCol = Left(txt, InStr(txt, ",") - 1) 'Assigning the number format Columns(CInt(strCol)).NumberFormat = wks.Cells(intRow, 16).Value 'Truncating the string for finding the next column number after the comma(,) txt = Right(txt, Len(txt) - InStr(txt, ",")) Loop 'Assigning the number format Columns(CInt(txt)).NumberFormat = wks.Cells(intRow, 16).Value intRow = intRow + 1 Loop End Sub
Si vous avez aimé ce blog, partagez-le avec vos amis sur Facebook et Facebook.
[_GoBack] # Nous serions ravis de vous entendre. Faites-nous savoir comment nous pouvons améliorer notre travail et l’améliorer pour vous. Écrivez-nous à [email protected]