Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

séparer des nombres d'une chaîne

eastwick

XLDnaute Accro
Bonjour à toutes et tous, une bonne et heureuse année (il n'est pas trop tard !)
J'aimerais détacher tous les nombres de la colonne B vers les colonnes suivantes, il peut y avoir 2 à 5 nombres.
J'ai mis un exemple en ligne 2.

Merci beaucoup !
 

Pièces jointes

  • Classeur1.xlsx
    23.2 KB · Affichages: 37
  • Classeur1.xlsx
    23.2 KB · Affichages: 39

job75

XLDnaute Barbatruc
Re : séparer des nombres d'une chaîne

Bonjour eastwick,

Merci, et meilleurs voeux à vous aussi.

Il est impossible d'obtenir le résultat de votre exemple car l'espace (de code 32) sert à la fois de séparateur de nombres et de séparateur de milliers.

Edit : ah oui mais on peut se servir des décimales, je regarde ça

A+
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : séparer des nombres d'une chaîne

Re, bonjour Philippe,

Une fonction VBA à placer dans un module standard :

Code:
Function Ventile$(t$, sep$, ordre%)
Dim L%, i%, j%
L = Len(t)
For i = 1 To L
  If Mid(t, i, 1) = sep Then
    For j = i + 1 To L
      If Not IsNumeric(Mid(t, j, 1)) Then
      'If Mid(t, j, 1) = " " Then 'variante possible
        t = Left(t, j - 1) & Chr(1) & Mid(t, j + 1)
        i = j
        Exit For
      End If
    Next j
  End If
Next i
On Error Resume Next
Ventile = Split(t, Chr(1))(ordre - 1)
End Function
Formule en C2 à tirer vers le bas puis à droite autant que nécessaire :

Code:
=Ventile($B2;",";COLONNES($C2:C2))
Fichier joint.

A+
 

Pièces jointes

  • Ventile(1).xlsm
    62.5 KB · Affichages: 32

job75

XLDnaute Barbatruc
Re : séparer des nombres d'une chaîne

Re,

Je pensais qu'une fonction VBA matricielle permettrait de diminuer la durée des calculs.

J'ai testé et ce n'est pas le cas

Bonne soirée.
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…