Bonjour tout le monde,
Le code VBA ci-dessous permet de séparer le nom du prénom en les copiant dans deux collones différentes.
Le problème est que les nom sont concaténés, idem pour les prénoms.
Est-ce que vous pourriez svp regarder ce qu'il se passe ?
C'est un travail très important pour moi.
Merci d'avance pour votre aide.
beegees
Sub montest()
Dim st As String
Dim tb() As String
Dim i As Integer
Dim stNom As String
While ActiveCell.Value <> ""
st = ActiveCell.Value
tb = Split(st, " ")
LeNom = tb(0)
For i = 1 To UBound(tb)
LeReste = LeReste & " " & tb(i)
Next
LeReste = Trim(LeReste)
Tb2 = Split(LeReste, " ")
For n = 0 To UBound(Tb2)
For i = 2 To Len(Tb2(n))
LeCar = Asc(Mid(Tb2(n), i, 1))
pr = LeCar > 96 And LeCar < 123 Or LeCar > 223 'c'est un prénom
If pr Then Exit For
Next
If pr Then
Prénom = Prénom & " " & Tb2(n)
ElseIf Not pr Then
LeNom = LeNom & " " & Tb2(n)
End If
Next
LeNom = Trim(LeNom)
Prénom = Trim(Prénom)
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Prénom
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = LeNom
ActiveCell.Offset(1, 0).Select
ActiveCell.Offset(0, -1).Select
ActiveCell.Offset(0, -1).Select
Wend
'MsgBox LeNom
'MsgBox Prénom
End Sub
Le code VBA ci-dessous permet de séparer le nom du prénom en les copiant dans deux collones différentes.
Le problème est que les nom sont concaténés, idem pour les prénoms.
Est-ce que vous pourriez svp regarder ce qu'il se passe ?
C'est un travail très important pour moi.
Merci d'avance pour votre aide.
beegees
Sub montest()
Dim st As String
Dim tb() As String
Dim i As Integer
Dim stNom As String
While ActiveCell.Value <> ""
st = ActiveCell.Value
tb = Split(st, " ")
LeNom = tb(0)
For i = 1 To UBound(tb)
LeReste = LeReste & " " & tb(i)
Next
LeReste = Trim(LeReste)
Tb2 = Split(LeReste, " ")
For n = 0 To UBound(Tb2)
For i = 2 To Len(Tb2(n))
LeCar = Asc(Mid(Tb2(n), i, 1))
pr = LeCar > 96 And LeCar < 123 Or LeCar > 223 'c'est un prénom
If pr Then Exit For
Next
If pr Then
Prénom = Prénom & " " & Tb2(n)
ElseIf Not pr Then
LeNom = LeNom & " " & Tb2(n)
End If
Next
LeNom = Trim(LeNom)
Prénom = Trim(Prénom)
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Prénom
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = LeNom
ActiveCell.Offset(1, 0).Select
ActiveCell.Offset(0, -1).Select
ActiveCell.Offset(0, -1).Select
Wend
'MsgBox LeNom
'MsgBox Prénom
End Sub