Excel を使用して Dell サービス タグをエクスプレス サービス コードに変換する方法

Excel を使用して Dell サービス タグをエクスプレス サービス コードに変換する方法

すべての Dell タグが Excel にあります。短いタグを長いタグに変換したいです。小さなコードを BigDecimal に変換する必要がありますが、これは Excel で実行できますか。

例えば:

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.)

答え1

少し複雑ですが、関数がDECIMAL利用できない場合でも、数式でこれを実現できます。次の数式でこれを実現できます。

= (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

このIFERROR関数には Excel 2007 以降が必要です。また、この数式では、サービス タグがセル A1 にあることを前提としています。

適切な書式設定を取得するには、CharlieRB が別の回答で述べたようなカスタム書式を使用できます。###-###-###-##

答え2

Excel 2013では、DECIMAL関数。

この例では、サービス タグの値が列 A にあることを前提としています。エクスプレス サービス コードを入力する場所にこの数式を配置します。

=DECIMAL(A1, 36)

この数式はExcel 2013にA1基数36それを同等の 10 進数値に変換します。

列内のセルをカスタムフォーマットする必要があります。###-###-###-##

関連情報