Tengo todas mis etiquetas Dell en Excel. Quiero convertir el corto al largo. Necesito convertir el código pequeño a BigDecimal, ¿se puede hacer esto en Excel?
Por ejemplo:
So Simple
Typical Service Tag 5RFDP01
Its Express Service Code
125-423-316-01
The dashes are the only thing that might throw you.
The Service Tag is just a big base-36 number (composed of digits [0-9A-Z]) so,
Convert it to a big decimal number (12,542,331,601), then
Add dashes every third digit starting from the left-most (MSD) digit
(This step is not necessary, but really does make the number a little easier to use.)
Respuesta1
Es un poco complicado, pero esto es posible en una fórmula incluso si no tienes la DECIMAL
función disponible para usar. La siguiente fórmula logrará esto:
= (IFERROR(MID(A1,1,1) + 55, CODE(MID(A1,1,1))) - 55) * 36^6
+ (IFERROR(MID(A1,2,1) + 55, CODE(MID(A1,2,1))) - 55) * 36^5
+ (IFERROR(MID(A1,3,1) + 55, CODE(MID(A1,3,1))) - 55) * 36^4
+ (IFERROR(MID(A1,4,1) + 55, CODE(MID(A1,4,1))) - 55) * 36^3
+ (IFERROR(MID(A1,5,1) + 55, CODE(MID(A1,5,1))) - 55) * 36^2
+ (IFERROR(MID(A1,6,1) + 55, CODE(MID(A1,6,1))) - 55) * 36^1
+ (IFERROR(MID(A1,7,1) + 55, CODE(MID(A1,7,1))) - 55) * 36^0
La IFERROR
función requiere Excel 2007 o superior. Además, esta fórmula supone que su etiqueta de servicio está en la celda A1.
Para obtener el formato adecuado, puede utilizar un formato personalizado como el que CharlieRB indica en otra respuesta:###-###-###-##
Respuesta2
Excel 2013 tiene la capacidad de realizar esto usando elDECIMAL
función.
Este ejemplo supone que los valores de su Etiqueta de servicio están en la columna A. Coloque esta fórmula donde indique cuál será el Código de servicio exprés.
=DECIMAL(A1, 36)
Esta fórmula le dice a Excel 2013 que el número A1
es unbase 36y convertirlo al valor decimal equivalente.
Tendrá que dar un formato personalizado a las celdas de la columna para###-###-###-##