2016-10-18 7 views
0

私は001,011,01,03,013のようなセルに数値を持っています(私は00または000をフォーマットしたカスタムセルを使用しました)私はこれを次のようにします:01 00 31 02 00 007.004の代わりに1 0 31 2 0 7 4。私は何をすべきか。正確な数をexcels公式計算に表示

スクリーンショット:D1にA1の値を仮定し

https://s4.postimg.org/61q9ybj31/image.jpg

+0

あなたは私たちが支援する可能性が使用している数式を共有する必要があります。 – nbayly

+0

先頭のゼロがFormattingで行われている場合、単純な加算式 "= AE2&" "&AF2&" "&AG2&" AH2& ""&AI2& ""&AJ2& "。"&AK2 " – Marko

+0

はフォーマットを破棄してそのまま保存しますその価値。記載されている形式のテキストに値を変換してから、それらを連結する私の答えを見てください。 – nbayly

答えて

0

、式は次のようになります。

=TEXT(A1,"00#")&" "&TEXT(B1,"00#")&" "&TEXT(C1,"00#")&" "&TEXT(D1,"00#") 

形式は、ご利用のために働く必要があり、それぞれに式で指定する必要がありますそれぞれの数字は異なるフォーマットになっているようです。次に、値を特定の書式のテキストとして書式設定し、スペースや区切り文字を間に使用して連結します。

EDIT:コメント溶液中のOPの明確化は、式(あなたがREPT()内部に変更することができる)の数の4列の数字の2,1,3,2長を仮定することができたあたりであろう:

=TEXT(A1,REPT("0",2-LEN(A1))&REPT("#",LEN(A1)))&" "&TEXT(B1,REPT("0",1-LEN(B1))&REPT("#",LEN(B1)))&" "&TEXT(C1,REPT("0",3-LEN(C1))&REPT("#",LEN(C1)))&" "&TEXT(D1,REPT("0",2-LEN(D1))&REPT("#",LEN(D1))) 

よろしくお願いします。

+0

ご協力いただきありがとうございます。これは私の問題の90%を解決し、問題はいくつかのセルが1つの数字を持っている、そしていくつかは11の数字を持っているので、0#または00#スクリーンショットのマークされたセルを確認してください。何とかこれを避けることができますか? – Marko

+0

https://s9.postimg.org/flxhq605r/image.jpg画像がありません – Marko

+0

各列のフォーマットが一貫していることを確認できますか?私は数値の桁数に応じて 'TEXT()'の書式を変更する方法を考え出しました。しかし、各列が式にハードコーディングされなければならないため、各列に含めるべき文字の総数を知る必要があります。数式の編集が続きます。 – nbayly

0

ここには、書式設定を含めて、元の列に表示されているとおりに結果を返すUDFがあります。あらかじめフォーマットを知る必要はありません。

Option Explicit 
Function ConcatWithFormat(rg As Range) As String 
    Dim V As Variant 
    Dim I As Long 

ReDim V(1 To rg.Count - 1) 
For I = 1 To rg.Count - 1 
    V(I) = rg(I).Text 
Next I 

V(I - 1) = V(I - 1) & "." & rg(I).Text 

ConcatWithFormat = Join(V) 

End Function 

enter image description here

関連する問題