Multiplier uniquement un chiffre dans une cellule Excel contenant du texte

Salutation chers membres du forum, j'espère sincèrement ne dupliquer une question qui a déjà trouvé solution ici.

Mon problème est le suivant je voudrais multiplier toutes les chiffres de la cellule de prix par 02 il y a a peu peu près 1000 colonnes je ne peux pas les faire ligne par ligne.

la cellule se présente ainsi: AED 33,00

Il y a 6 espaces entre AED et 33,00 et je voudrais uniquement multiplier 33,00 par 02

Pouvez vous m'aider svp?

J'ai besoin de votre aide

Photo illustration disponible

img 20241029 092454

Bonjour Amass et bienvenue

Je pense que vous devriez commencer par lire ou relire la charte du forum,
comme il vous l'a été indiqué à votre inscription

https://forum.excel-pratique.com/excel/a-lire-avant-de-poster-charte-du-forum-et-informations-utiles...

Il y est indiqué

4. Joignez (si possible) un fichier pour augmenter vos chances d'obtenir de l'aide en cliquant sur le bouton Fichier de l'éditeur. Si votre fichier est trop lourd ou contient des données personnelles, créez une version allégée de votre fichier avec juste assez d'informations pour permettre de comprendre votre problème. Dans tous les cas, ne postez JAMAIS de fichiers avec des informations personnelles ou confidentielles (cet utilitaire peut vous aider à les retirer).

A+

Cher admin j'ai pensé qu'une photo pouvait aider les contributeurs et résoudre mon problème. J'ajoute de ce pas le fichier Excel. Franche collaboration

Bonjour,

Vous pouvez récupérer la partie gauche ou droite d’un texte avec les fonctions éponymes :

Fonction Excel : GAUCHE

Fonction Excel : DROITE

Ensuite si vous écrivez, Pour reprendre votre exemple :

=DROITE(cellule; NBCAR(cellule)-NBCAR(“AED123456“)) * 2

Vous deviez obtenir le résultat voulu. Excel convertira automatiquement le texte en nombre si c’est possible.

Bonjour à tous !

Une proposition pour une valeur "Wholesale" en C2 :

=VALEURNOMBRE(DROITE(C2;5);".")*2
réponse de chatgpt

Sub MultiplierPrixParDeux()
    Dim ws As Worksheet
    Dim cell As Range
    Dim prixTexte As String
    Dim montant As Double
    Dim nouvelleValeur As String
    Dim lastRow As Long
    Dim lastCol As Long
    Dim i As Long, j As Long

    ' Définissez la feuille de calcul active ou remplacez par le nom de votre feuille
    Set ws = ThisWorkbook.Sheets("NomDeVotreFeuille")

    ' Trouvez la dernière ligne et la dernière colonne de votre plage de données
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    lastCol = ws.Cells(1, ws.Columns.Count).End(xlToLeft).Column

    ' Boucle à travers chaque cellule dans la plage de données
    For i = 1 To lastRow
        For j = 1 To lastCol
            Set cell = ws.Cells(i, j)

            ' Vérifiez que la cellule n'est pas vide
            If cell.Value <> "" Then
                prixTexte = cell.Value

                ' Vérifiez que le texte commence par "AED" et contient une virgule
                If Left(prixTexte, 3) = "AED" And InStr(prixTexte, ",") > 0 Then
                    ' Extrayez le montant après "AED" (en ignorant les espaces supplémentaires)
                    montant = Val(Trim(Mid(prixTexte, 7)))

                    ' Multipliez par 2
                    montant = montant * 2

                    ' Formatez le résultat avec "AED      " et le montant
                    nouvelleValeur = "AED      " & Format(montant, "0.00")

                    ' Insérez la nouvelle valeur dans la cellule
                    cell.Value = nouvelleValeur
                End If
            End If
        Next j
    Next i

    MsgBox "La multiplication est terminée."
End Sub
Rechercher des sujets similaires à "multiplier uniquement chiffre contenant texte"