アプリ版:「スタンプのみでお礼する」機能のリリースについて

またしてもド素人の質問で恐縮ですが、
ある列に桁数の異なる数値が縦に並んで記載されているとき、
セルと同一列の別のセルに、数値を一文字ずつ分割して、下記の様に表示させたいのです。
(G列の数字はすべて右揃えのつもりです)
  A B C D E F G
1  5 4 3 2 1  54321
2      1 2 3    123
3        2 2     22
4      6 5 2    652
5          9     9
そこで、A1には、=LEFT(RIGHT($G1,5))、B1には=LEFT(RIGHT($G1,4))、というように、関数を入れておき、1列目はA1からE1まで無事表示できました。
しかし、2列目以降にA1からE1の各セルの式を転記しますと、
1  5 4 3 2 1    54321
2  1 1 1 2 3     123
3  2 2 2 2 2      22
4  6 6 6 5 2     652
5  9 9 9 9 9       9
と、なってしまいました。空白にしたいところに指定セルのトップの数字が入ってしまうんです。指定したセルの数字の桁数よりも大きな部分は空白にしたいのですが、
「もしも何かの条件に合わねば空欄に」というようなことができれば幸いなんですが、どのようにすればいいのかをお教えください。

A 回答 (6件)

>どのようにすればいいのかをお教えください。


余分な判断は必要りません。
G列の値は数値でも良いですが先頭に半角の空白を5桁連結すれば解決します。
LEFT関数の引数にRIGHT関数を使っているので左側に余分な空白文字を多く付加しても最大でも右から5文字が処理対象になります。
COLUMN(A1)=1を利用してRIGHT関数の第2引数の文字数を6-COLUMN()とするとA列で5文字、B列で4文字C列で3文字のように変化させることができますのでA1セルを右にオートフィルコピーすれば良いでしょう。

A1=LEFT(RIGHT(" "&$G1,6-COLUMN()))
    • good
    • 0
この回答へのお礼

早速ありがとうございます。
ご回答の意味がよく理解できました。

お礼日時:2014/03/08 17:46

一例です。


画像参照
A1に =IF(LEN($G1)>=6-COLUMN(A1),LEFT(RIGHT($G1,6-COLUMN(A1)),1),"")
右方・下方にオートフィル
6は、G列の最大桁数+1です
「エクセルのセル内数字の分割転記」の回答画像5
    • good
    • 0
この回答へのお礼

早速ありがとうございました。
お蔭でできました。

お礼日時:2014/03/08 17:43

No2の補足です。


数式をそのままコピー貼り付けしたら、連続スペースが1つになってしまったようです。

提示した数式の「" "&$G1」の部分のスペースの数を5にしてください。
    • good
    • 0
この回答へのお礼

補足有難うございます。

お礼日時:2014/03/08 17:45

せっかく


=LEFT(RIGHT($G1,5))
までできているのであれば
=LEFT(RIGHT(" "&$G1,5))
と G1の前に空白を5つほどつなげた文字にして
取り出せば如何でしょうか。
=LEFT(RIGHT(" "&$G1,6-COLUMN(A1)))
と入れて右へコピーしたら楽でしょう。
    • good
    • 0

現在の数式を活かすなら、以下のような数式にするのが簡単です。



=LEFT(RIGHT(" "&$G1,6-COLUMN(A1)))
    • good
    • 0
この回答へのお礼

早速ありがとうございます。
お蔭で期待通りできました。

お礼日時:2014/03/08 17:41

G列の文字列の文字数に応じて表示を行うか、空白にすればいいわけですね。


でしたら、文字列の文字数を計算するLEN()関数と、IF文を併用すれば出来ると思います。

例えばA2列目ですと
=IF(LEN(G2)<5,"",left(right($G2,5))
(上記は動作を確認していません。多分こんな感じの記述になると思います)
とすれば、G2セルの文字列の長さが5文字よりも短いときには""(空白)を、
5文字以上であれば、5文字目を取得して表記します。

LEN(**)<##の「**」と「##」を各列の位置のセル番号と文字数に調整すればよろしいかと思います。
    • good
    • 0
この回答へのお礼

早速ありがとうございました。
試行の仕方がおかしいのか、別のセルに入力しますとうまくいきません。お答えをヒントにもう少し研究いたします。

お礼日時:2014/03/08 17:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!