Bonjour,
Visiblement Libre Office peut interpréter des macros VBA si vous cochez les options dans options Outils - Options - Chargement/enregistrement - Propriétés VBA
Macros VBA
J'ai donc ouvert le fichier et sauvegardé en .xlsm pour réaliser une macro. Ce sont les caractères Chr(160) et Chr(32) qui encadrent les nombres qui posent problème.
J'ai réouvert le fichier dans Libre Office et exécuté la macro présente dans le fichier et cela fonctionne.
Rem Attribute VBA_ModuleType=VBAModuledans
Option VBASupport 1
Option Explicit
Sub MajColonneB()
Dim I As Long, DerniereLigne As Long
Dim J As Integer, K As Integer
Dim LaValeur As Variant
With ActiveSheet
DerniereLigne = .Cells(.Rows.Count, 2).End(xlUp).Row
For I = DerniereLigne To 1 Step -1
If .Cells(I, 2) <> "" Then
LaValeur = ""
For K = 1 To Len(.Cells(I, 2))
For J = 0 To 255
If LCase(Mid(.Cells(I, 2), K, 1)) = Chr(J) Then
Select Case Mid(.Cells(I, 2), K, 1)
Case Chr(32), Chr(160)
Case Else
LaValeur = LaValeur & Mid(.Cells(I, 2), K, 1)
End Select
Exit For
End If
Next J
Next K
.Cells(I, 2) = LaValeur
End If
Next I
End With
End Sub
Pour utiliser cette macro, aller dans l'éditeur de macro de Libre office et importer le fichier .bas contenu dans le .zip ci-dessous.