Extraire des nombres dans une cellule

Bonjour le forum

J’ai besoin de votre aide pour une formule afin d’extraire des nombres dans une cellule,

Dans la cellule A1 J’ai : 8 - 13 - 6 - 4 - 10

Je souhaiterai les résultats suivants :

A2 = 8

A3 = 13

A4 = 6

A5 = 4

A6 = 10

J’y arrive avec la fonction Donnée Convertir, mais je dois refaire toujours la même manipulation à chaque fois.

Merci

Bonne journée

Bonjour starwaso, le forum,

Un essai:

Sub test()
 x = Split(Range("A1"), "-")
 Range("A2").Resize(UBound(x) + 1) = Application.Transpose(x)
End Sub
4classeur1.xlsm (36.97 Ko)

Cordialement,

Merci xorsankukai pour votre réponse, mais je me suis trompé dans ma question

Dans la cellule A1 J’ai : 8 - 13 - 6 - 4 - 10

Je souhaiterai les résultats suivants :

B1 = 8

C1 = 13

D1 = 6

E1= 4

F1 = 10

Désolé

Et plusieurs cellules à extraire, ci-joint le tableau

4arrivee-test.xlsx (10.10 Ko)

Re,

Nouvelle tentative,

Sub test()
 Dim i As Integer, dl As Integer

       Application.ScreenUpdating = False

  With Sheets("Feuil1")
   dl = .Range("A" & Rows.Count).End(xlUp).Row
        .Range("B1:F" & dl).ClearContents

    For i = 1 To dl
     If .Range("A" & i) <> "" Then
        .Range("B" & i) = Replace(Range("A" & i), "-", "")
     End If
       Application.DisplayAlerts = False
        .Range("B" & i).TextToColumns Destination:=Range("B" & i)
       Application.DisplayAlerts = True
    Next i
  End With
End Sub
4arrivee-test.xlsm (18.03 Ko)

Cordialement,

Merci xorsankukai pour la macro elle fonctionne très bien,

J’ai omis une situation qui peut se produire, c’est quand dans les arrivées il y a des ex æquo de ce type :

1 - 2 - 3/4 - 5 ou bien 1/2 - 3 - 4 - 5

Pouvez-vous si c’est possible de prendre en compte ce genre d’arrivée dans la macro

J’ai mis deux exemples dans le tableau ci-joint

Merci

Re,

Peut-être ainsi....

Sub test()
 Dim i As Integer, dl As Integer

       Application.ScreenUpdating = False

  With Sheets("Feuil1")
   dl = .Range("A" & Rows.Count).End(xlUp).Row
        .Range("B1:F" & dl).ClearContents

    For i = 1 To dl
     If .Range("A" & i) <> "" Then
        .Range("B" & i) = Replace(Replace(Range("A" & i), "-", ""), "/", " ")
     End If
       Application.DisplayAlerts = False
        .Range("B" & i).TextToColumns Destination:=Range("B" & i)
       Application.DisplayAlerts = True
    Next i
  End With
End Sub

Cordialement,

Un grand MERCI xorsankukai

Bon week-end

Cordialement

Rechercher des sujets similaires à "extraire nombres"