Si la largeur de la colonne est connue, et pas trop large, vous pouvez utiliser cette approche. Supposons que votre colonne de lettres et de nombres fractionnaires est appelé [Letters And Numbers]
:
Just The Numbers = IFERROR(VALUE(MID([Letters And Numbers], 1, 1)), IFERROR(VALUE(MID([Letters And Numbers], 2, 1)), BLANK()))
Bien sûr, cela devient plus compliqué si vous attendez plus d'un numéro dans la colonne.
Dans ce cas, il serait très incommode d'utiliser le langage DAX pour le faire; vous aurez besoin d'écrire quelque chose comme:
Just The Numbers = SUBSTITUTE(SUBSTITUTE([Letters And Numbers], "A", ""), "B", "")
sauf que vous auriez besoin 26 remplaçants, à moins que vous attendez plus ou moins de caractères non numériques.
Mieux vaut de loin utiliser M dans la section des requêtes d'édition. Ajouter une colonne personnalisée avec la définition suivante:
= Table.AddColumn(#"Previous Step", "Just The Numbers", each Text.Combine(List.RemoveItems(Text.ToList([Letters And Numbers]),{"A".."z"})))
Et si vous ne parvenez pas à utiliser M parce que vous utilisez requête directe à un modèle de tableau SSAS, la seule option est probablement modifier la requête SQL qui charge la table dans le modèle tabulaire pour ajouter une colonne supplémentaire.
Il y a probablement beaucoup d'exemples de certains T-SQL qui pourrait le faire, voici une:
USE AdventureWorksDW2012;
WITH split AS (
SELECT AddressLine1, v.number, character.c
FROM DimReseller AS r
JOIN master..spt_values AS v ON v.number BETWEEN 1 AND LEN(r.AddressLine1)
CROSS APPLY (VALUES(SUBSTRING(r.AddressLine1, v.number, 1))) AS character(c)
WHERE v.type = 'P'
AND character.c LIKE '[0-9]')
SELECT AddressLine1,
output = (SELECT c
FROM split
WHERE r.AddressLine1 = split.AddressLine1
ORDER BY number ASC
FOR XML PATH, TYPE).value(N'.[1]', N'bigint')
FROM dbo.DimReseller AS r
GROUP BY AddressLine1;
Je mis à jour ma question, vous m'a fait remarquer la question n'a pas été précisé assez pour une bonne réponse. – uzr
L'utilisation de M pour modifier la requête n'est pas une option. Dans ce cas, je suis en train d'utiliser un modèle SSAS tabulaire avec Direct Query comme source de données pour PowerBI. – uzr