Réponses:
Vous pouvez soit diviser cette colonne en deux, en utilisant la fonction "Texte en colonnes" de l' onglet Données du menu du ruban. Il vous suffira de sélectionner #
comme séparateur.
Ou, si votre exemple signifiait déjà deux colonnes distinctes et #
constituait un espace réservé pour un nombre, comme ceci:
2 | 12Vendor
3 | 145Vendor
Ensuite, vous pourriez obtenir le fournisseur, en utilisant une formule VBA, qui devrait analyser l’entrée.
Sauf bien sûr, si le fournisseur ou le numéro précédent, le fournisseur respecte certaines règles spécifiques que vous pouvez utiliser - comme une taille fixe. Si vous avez toujours un format comme 001Vendor, vous pouvez utiliser cette formule:
=RIGHT(A1,LENGTH(A1)-3)
Modifier:
Voici une solution intéressante, que vous pourriez utiliser comme une fonction de feuille de calcul:
Public Function demo(ByRef rng As Range) As String
Dim objRegEx As Object
Set objRegEx = CreateObject("VBscript.regexp")
objRegEx.IgnoreCase = True
objRegEx.Global = True
objRegEx.MultiLine = True
objRegEx.Pattern = "\d" 'Match any digit. Equivalent to [0-9].
demo = objRegEx.Replace(rng.Value, "")
'The Replace method takes 2 strings as its arguments.
'If it is able to successfully match the regular expression
'in the search-string, then it replaces that match with the
'replace-string, and the new string is returned.
'If no matches were found, then the original search-string is returned.
Set objRegEx = Nothing
End Function
Il utilise une expression régulière, que vous pouvez utiliser à de nombreuses reprises, simplement en rendant le motif dynamique.
Voici une documentation à ce sujet: http://msdn.microsoft.com/en-us/library/ms974570.aspx
Et pour être juste - je viens d'adapter un exemple, que j'ai trouvé ici: