Convertir le résultat d'une formule

Bonsoir tout le monde,

une petite question comme ca,

est-il possible de convertir (données/convertir) le résultat d'une formule?

car j'ai essayé et ca convertie la formule.

et ce bien sur en laissant les formules (c'est a dire sans rusé en copiant /collant les valeurs)

Cordialement

Salut le forum

Maguetlolo, je verrais une solution par macro.

Un exemple de quelles lignes avec les résultats désirés.

A te relire

Mytå

Re:

Voici un petit exemple, ca ne veut rien dire mais le principe du fichier originale est le meme.(sauf que ce ne sont pas des chiffre mais du texte, mais si ca pause un probleme j'en fait un autre)

https://www.excel-pratique.com/~files/doc/convertir_resultat.xls

Cordialement

Re le forum

Maguetlolo, ton code pour extraire (Je traite le séparateur point-virgule)

Sub Données_Convertir()
'
' Macro Données/Convertir
' Macro par Mytå pour Maguetlolo
' Forum Excel-Pratique le 07/02/2009
' Touche de raccourci du clavier: Ctrl+Maj+T
'
    Dim Tableau() As String
    Dim i As Integer
    Dim PlageSource As Range
    Dim Cellule As Range

'Permet de sélectionner une plage avec la souris (Méthode InputBox)
    Set PlageSource = Application.InputBox _
        ("Sélectionnez la ou les cellule(s) à traiter !", "Plage source", Type:=8)

'On boucle sur la plage source
For Each Cellule In PlageSource
    Tableau = Split(Cellule, ";")
    For i = 0 To UBound(Tableau)
        'Le résultat s'affiche à coté de la Cellule
        Cellule.Offset(0, i + 1) = Tableau(i)
    Next i
Next Cellule

    Set PlageSource = Nothing

End Sub

Tu lances la macro, tu sélectionnes la Plage de cellules à traiter.

Si cela te convient on peux ajouter le séparateur et vérifier si pas

des colonnes multiples de sélectionnées.

Mytå

Re le forum

Avec le test d'une colonne unique

Sub Données_Convertir()
'
' Macro Données/Convertir
' Macro Mytå pour Maguetlolo
' Forum Excel-Pratique le 07/02/2009
' Touche de raccourci du clavier: Ctrl+Maj+T
'
    Dim Tableau() As String
    Dim i As Integer
    Dim PlageSource As Range
    Dim Cellule As Range

'Permet de sélectionner une plage avec la souris (Méthode InputBox)
    Set PlageSource = Application.InputBox _
        ("Sélectionnez la ou les cellule(s) à traiter !", "Plage à Convertir", Type:=8)

'On vérifie le nombre de colonnes
  If PlageSource.Columns.Count > 1 Then
    MsgBox ("Vous ne pouvez sélectionner qu'une colonne")
    Exit Sub
  End If

'On boucle sur la Plage à Convertir
  For Each Cellule In PlageSource
    Tableau = Split(Cellule, ";") 'On peut ici modifier le séparateur
    For i = 0 To UBound(Tableau)
        'Le résultat s'affiche à coté de la Cellule
        Cellule.Offset(0, i + 1) = Tableau(i)
    Next i
  Next Cellule

    Set PlageSource = Nothing

End Sub

Mytå

Bonjour le forum

Myta c'est parfait. merci

parcontre, j'ai un autre fichier un peu différent

dans le principe, c'est pareil mais dans le résultat il y a des vides et il faudrais convertir sans tenir compte des "vides", l'exemple ci-joint illustre cela.

autre différence, c'est noyé dans une série de macro et la colonne est toujours la même il faudrais donc la désigner directement (sans inputbox)

sans vouloir abuser (ce n'est pas dans l'exemple mais ca n'aurais pas été clair) c'est que la colonne de formule soit remplacer pas la conversion c'est a dire de commencer la conversion sur la colonne formule.

j'espers que je suis assez clair

https://www.excel-pratique.com/~files/doc/convertir_resultat2.xls

edit: le nombre de ligne a convertir varie tout le temps

cordialement

Bonjour,

Pour le plaisir, une solution formule :

en E4 :

=SI(ESTNUM(CHERCHE(" ";SUPPRESPACE(SUBSTITUE($D4;";";" "))));GAUCHE(SUPPRESPACE(SUBSTITUE($D4;";";" "));TROUVE(" ";SUPPRESPACE(SUBSTITUE($D4;";";" ")))-1);SUPPRESPACE(SUBSTITUE($D4;";";" ")))

en F4 :

=SI(ESTNUM(CHERCHE(" ";SUPPRESPACE(SUBSTITUE($D4;";";" "))));STXT(SUPPRESPACE(SUBSTITUE($D4;";";" "));TROUVE(" ";SUPPRESPACE(SUBSTITUE($D4;";";" ")))+1;99);"")

à recopier vers le bas

Suppose qu'il n'y a que deux couleurs.

Mais gérable quand même avec plus de deux couleurs avec formule un peu plus ... costaud.

Bon dimanche

@+

Re

Merci thibo, ca fonctionne tres bien mais ce n'est pas ce que je cherche.

Pour ce coup ci il me faut une macro.

Cependant je garde ta formule sous le coude car elle va me servir dans un autre dossier. merci de l'avoir soumis.

Cordialement

re,

ok, je te donne quand même le principe que j'ai utilisé pour que tu puisses essayer de l'adapter et l'utiliser dans une macro :

J'ai remplacé les ; par des espaces

Puis avec la fonction SUPPRESPACE, j'ai supprimé les espaces "inutiles", c'est-à-dire les espaces de début et fin de chaine ainsi que les espaces en doublon.

On obtient ainsi une chaine dont le séparateur est l'espace.

Je ne peux aller plus loin, car question VBA, je suis en dessous du niveau débutant.

@+

re,

ok merci

mais arette de dire que tu es en dessous du debutant en vba car cela voudrais dire que je suis encore plus bas que je le croyais.....tu viens de me sapper mon dimanche ....................................................

cordialement

Re le forum

Maguetlolo, ta macro comme demandé

Sub Données_Convertir()
'
' Macro Données/Convertir sans vide ni espace
' Macro Mytå pour Maguetlolo
' Forum Excel-Pratique le 08/02/2009
'
    Dim Tableau() As String
    Dim i As Integer, j As Byte
    Dim Cellule As Range

'On boucle sur la Plage à Convertir
  For Each Cellule In Range("D4:D10")
    j = 1 'Remplacer par zéro pour écrire sur la formule
    Tableau = Split(Cellule, ";") 'On peut ici modifier le séparateur
    For i = 0 To UBound(Tableau)
      If Len(Trim(Tableau(i))) > 0 Then
        'Le résultat s'affiche si non vide
        Cellule.Offset(0, j) = Trim(Tableau(i))
        j = j + 1
      End If
    Next i
  Next Cellule

End Sub

Pour écrire sur la formule remplace j=1 par j=0

Mytå

Bonsoir tt le monde

C'est exactement cela, un grand merci Myta

Cordialement

Re le forum

Maguetlolo, tu n'oublies pas une petite formalité ...

  • Dès que votre problème est résolu, merci de le marquer en tant que [Résolu]
    grâce à l'utilitaire se trouvant en bas de page, aperçu :
Mytå

Bonjour tout le monde

Oups!......

Voila c'est fait, a force de ne pas voir grand monde le faire, les bonne habitudes se perdent.

merci de me l'avoir rappelé.

Cordialement

Rechercher des sujets similaires à "convertir resultat formule"