[[20051009170858]] 『1マスに1文字抜き出す』(Choco) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『1マスに1文字抜き出す』(Choco)

こんにちは☆再びお世話になります。ご協力お願い致します♪

  
   A    B   C    D    E   F        G

 1
 2     5  6  8  4  2     56842
 3           9  1  5      915
 4           −  7  3      -73

上の様に、G列に数字を入力すると、各マスに1文字ずつ
出てくる様に関数を入力したいのですが…。

 ただし @G列に入力する数字は最大6桁。
      AG列はマイナス表示の場合もある。
     BG列に数字が入らない時には、A〜F列に0は表示されない。
     CG列には数字を入力するが、A〜F列には文字として表示させたい。
    

 マクロが全然分からないので、関数でどうにかしたいのですが。
 で、悩んだ挙句に自分で考えたのが、
    【D2】 If(G2="","",JIS(ROUNDDOWN(RIGHT(G2,3)/100,0)))
 という、なんだか不安だなぁというような関数です…。
 それに「ただし A」が満たされませんし…。
 どなたかお助け下さい!!よろしくお願いします☆


 A2=MID(REPT(" ",6-LEN($G2))&$G2,COLUMN(),1)

 ★右・下の対象範囲にコピー

 ◆いかがでしょうか!

 (Maron)


 Maron様、ご回答ありがとうございました☆
 出来ました!!が、文字ではなかったので、JIS使って何とかしてみます♪
 で、ずうずうしくて申し訳ありませんが、
 今後、この関数を使うために、出来れば解説をお願いしたいのですが…。
 MIDは分かるのですが、それ以外が初めての関数で、エクセルで見ても
 固すぎて分かりにくいので…。
 (Choco)

 横から失礼します。				
 回答者ではありませんが、私もこの質問について考えてたもので、つい・・・・。				
 MID関数は MID(文字列、開始位置、文字数) ですよね。			
 REPT(" ",6-LEN($G2))&$G2は上記の文字列にあたります。			
 この部分は、G列の文字数が6文字以下の場合には頭に空白を付け足して		
 常に文字数を6文字に修正しています。				
 COLUMN()は列番号を返す関数ですので、素直にそのままMID関数の		  
 開始位置を表しています。				
     				(SS)


 SS様、ご回答ありがとうございました☆

 なるほど☆私もA〜F列に関数を入れるか、G列を常に6桁にするか、
 迷っていたのですが、結局後者の方法も思いつかず…でした(泣)。

 ずっと、会社で専用用紙の請求書をドットプリンタで印刷
 したくて、金額のところの関数を悩んでいたのですが、
 解決いたしました♪皆様ご協力ありがとうございました☆★☆

 終わってますが、もう一案!

 A2 =MID(RIGHT("      "&$G2,6),COLUMN(),1)
               ~~~~~~~
               ↑スペース5こ

 (キリキ)(〃⌒o⌒)b


 こちらに統合しました。
(kazu) 2005/10/1422:30

『再・1マスに1文字抜き出す』(Choco)
 度々お世話になっております☆
またまた行き詰ってしまったのでお助け下さい!!

  
   A    B   C    D    E   F        G

 1
 2     5  6  8  4  2     56842
 3           9  1  5      915
 4           −  7  3      -73

上の様に、G列に数字を入力すると、各マスに1文字ずつ
出てくる様に関数を入力したいのですが…。

 ただし @G列に入力する数字は最大6桁。
      AG列はマイナス表示の場合もある。
     BG列に数字が入らない時には、A〜F列に0は表示されない。
     CG列には数字を入力するが、A〜F列には文字として表示させたい。

で、前回Maron様に
A2=MID(REPT(" ",6-LEN($G2))&$G2,COLUMN(),1)

 と教えていただき、文字にしたかったので、MIDの前にJISを入れて
使用しようとしました。…が、コレだと
『G列の数字を「¥#####」としてもA〜F列に¥が表示されません』でした。
もちろんG列を書式設定で文字列にし、「¥#####」と入力すれば良いのですが…。
それ以外の方法で、G列に数字のみを入力し、A〜F列の先頭に「¥」を
表示することは可能でしょうか?

 Maronさんの式をそのまま使って
 >G列を書式設定で文字列にし、
 その↑考え方を組み合わせて
 =MID(REPT(" ",6-LEN("\"&$G2))&"\"&$G2,COLUMN(),1)
 でどうでしょう。 (Hatch)

Maron様、ご回答ありがとうございました☆
 使用してみたところ、希望通り「¥」付きました♪
 スピーディな回答、ありがとうございました!!

 kazu様、お世話様です☆
 1度に質問すれば良かったですね…。お手数おかけしました。
 (Choco)


 (キリキ)さんの回答を利用すると

 A2 =MID(RIGHT("      \"&$G2,6),COLUMN(),1)
               ~~~~~~~
               ↑スペース5こ

 (Maron)さんの回答を利用すると

 =MID(REPT(" ",5-LEN($G2))&"\"&$G2,COLUMN(),1)

 因みにマイナスの場合どの様にするのでしょう

 あの〜、数式が微妙に違っていますが・・・
 =MID(REPT(" ",6-LEN("\"&$G2))&"\"&$G2,COLUMN(),1)
 と書いています。マイナスの場合「\-73」のようになりませんか?
 あっ、6→5にしてあるから問題ないですね。失礼しました。
   (Hatch)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.