[[20040201221730]] 『エクセルで入金伝票をつくりたい』(そううつせん) ページの最後に飛ぶ

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

 

『エクセルで入金伝票をつくりたい』(そううつせん)

友人に頼まれて入金伝票、出金伝票をつくっています。
7桁の金額を入れたいのですが、
1つのセルに1桁ずつ数字を入れて、
7桁の金額になるようにしたいと思っています。

横並びの7つのセルに7桁の数字をいれたいのですが、
7桁の数字を続けて入れるには、どうしたらいいのでしょうか?
また、7つのセルで、1つの金額にするにはどうしたらいいのでしょうか?

ぜひ教えてください。


 こんばんは。
 まず最初に提案で申し訳ないのですが、
 >1つのセルに1桁ずつ数字を入れて
 は、データ量が増えると入力作業が大変なので、作業順序を逆にして
 [1つのセルに7桁数字を入れて、7つのセルに1桁ずつ] 表示させては如何でしょうか?

 例えば:
 A1 に 1234567  を入力して
 B1 に
 =IF($A1="","",MID($A1,COLUMN()-1,1)*1)
 として、H1 までコピー。データが下に続くのでしたら下にコピー。
 これで一桁づつ数字が表示されます。

 なお
 >7つのセルで、1つの金額にするにはどうしたらいいのでしょうか?
 は、
 I1 に
 =IF(H1="","",CONCATENATE(B1,C1,D1,E1,F1,G1,H1)*1)
 で、[7つのセル数字を、1つの金額に] 出来ます。

 上記の式の組み合わせを変えたり
 参照セルを変えてみれば、いろいろと応用出来ると思いますし、
 どのセルに入力して、どこに出力させたいのかを具体的に書き込んでくれれば
 違った回答が付くと思いますよ。   (jun53)

 もう解決済みかもしれませんし、余計なお世話とは思いますが、
 >1つのセルに1桁ずつ数字を入れて
 の『目的』は何でしょう?
 見た目の問題で桁を揃えたいのかな? 7桁以外の数値は入力できないようにしたいのかな?
 もしそうなら、別の解決方法が考えられます。
 (YS)


桁を揃えたいというのが、目的なんです。
金額は7桁ではない場合もあります。
4桁とか5桁とか・・・。
jun53さんの「1つのセルに7桁数字を入れて、7つのセルに1桁ずつ」
をやってみたのですが、どうもうまくいきません。
(そううつせん)

 普通、数字を入力したら自動的に、半角右寄せで桁が揃って表示されますが、そうなりませんか?
 セルの表示形式が文字列なっていると、左寄せになってしまいます。

 それとも、単純に半角右寄せにするのではなく、数字の間隔を空けたいとか、
 手書きの伝票風に、1桁ごとにマス目に入れるようにしたい、ってことなのかな?
 (YS)

 こんにちは。もしかしたら7桁以下も有りかなと思い、昨夜作っていました。
 でも、ご希望通りかはチョット不明です。

 =IF($A1="","",IF(ISERROR(MID($A1,COLUMN()-(7-LEN($A1))-1,1)*1),"",MID($A1,COLUMN()-(7-LEN($A1))-1,1)*1))

 式も長くなってしまいましたし、検証不足かもしれませんです、スミマセン。

 どなたか、この式が短くなりませんでしょうか?   (jun53)

 junさんへ、
 =IF(LEN($A1)<(8-COLUMN(A1)),"",LEFT(RIGHT($A1,(8-COLUMN(A1))),1)*1)
これでどうでしょう?(Yosh!)

 なんとまぁ〜 こんなにも短くなってしまったのですか? ガックシッ!
 Yosh!さん、ありがとうです。

 [そううつせん]さん、これでどうでしょうか? って
 ご希望通りでしょうかね?   (jun53)

 もう少し伝票風に。
 Yosh!さんの式を パクリっと頂いて、
 =IF(LEN($A1)=(8-COLUMN(A1)-1),"¥",IF(LEN($A1)<(8-COLUMN(A1)),"",LEFT(RIGHT($A1,(8-COLUMN(A1))),1)*1))
 等は如何でしょうか?

 書き込みを修正しました。   (jun53)

 =MID(RIGHT("       \"&$A1,8),COLUMN(A1),1)でもよいかも? (LOOKUP)

 私もやってみたかったことと似ているので質問に便乗させてください。
 納品書をエクセルで作ってプリントをする為にアレコレしているのですが
 数量×単価をした結果を1つのセルに1桁ずつ数字を入れることも出来ますか?
 今はプリント範囲外に数式をいれてそれを移す形なので・・ (izumi)

 izumiさんこんにちは。
 私に数式作りが出来るかどうかは、わかりませんが、
 上記の数式は、
 >数量×単価をした結果
  は、どの列、行にどの位の範囲でしょう?

 >1つのセルに1桁ずつ数字を入れる
  は、どの列、行にどの位の範囲でしょう?

 表示させたい桁数は、何桁でしょう?
 プリントアウトの為、表に制限が有ると思いますが、
 2,3桁余分に表示させた方が、後々便利なような気がします。

 1列、違っても、少しややこしい式の修正をしなければ
 正しい答えが返ってこない数式ですので。
 これをハッキリと書いて頂ければ、しっかりとした回答が出てくると思います。   (jun53)

 追記です:
 Yosh!さんや、LOOKUPさんの数式を試してみましたか?
 どちらの数式も $A1 に
 [数量×単価をした結果] のセル番地を参照させて、結果が出たでしょうか?   (jun53)

 プリント位置の調整の為にセルの結合をあちこちしてるのですが・・
 数量(G7とG8の結合)×単価(H7とH8の結合)
 =金額(J7とJ8の結合〜P7とP8の結合まで7桁)です。
 それが9と10、11と12、13と14、15と16、17と18の結合した6行あり、
 その下に小計、その下に消費税5%、その下に合計となっております。
 結合している理由は前の列には品番やコードを2行に分けて書くためこうしました。
 エクセルは独学で使っているのでおかしな表かもしれません。
 作った表見ていただける方法があるのならお見せしたいのですが・・・
 会社では私以外パソコンを出来ないので親切にしてくださってとても嬉しいです。
 よろしくお願いします。
   (izumi)

 Yosh!さんや、LOOKUPさんの数式、試してみました。
 A2×B2の答えをA1にしてB1以降に数式をコピーする方法でできました。
 ただ答えが2回表示されないほうがいいです。   (izumi)

 2回とは、一度A1に表示して、それをB1以降に一桁ずつ表示するという
 2段階にならないほうが良いと言う事ですよね。それなら、私の式でも
 LOOKUPさんの式でも、$A1 になっている所を $A2*$B2 に変更すれば良いと
 思います。(Yosh!)

 Yosh!さんの方法試しましたが上手くいきません・・・
 100×100=11100になってしまいます・・  (izumi)

 izumiさんへ。このようなことでしょうか?

    G   H    I J K L M N O P   
  7 150  1100     1 6 5 0 0 0						
  8 			 	
  9 250  2200     5 5 0 0 0 0						
 10 			 	
 11 350  3300    1 1 5 5 0 0 0							
 12 			
 13 450  4400   1 9 8 0 0 0 0							
 14 			
 15 550  5500   3 0 2 5 0 0 0							
 16 			
 17 650  6650   4 3 2 2 5 0 0							
 18 			
 19   小 計  1 1 1 9 7 5 0 0
 20 									
 21   消費税     5 5 9 8 7 5
 22	

 J7とJ8に=MID(TEXT($G7*$H7,"[>9999999]""OVERFLOW"";???????"),COLUMN(A1),1)
 これをP列まで、フィルドラッグ、J7:P8をコピーし、J9:P18に貼り付け。

 I19とI20に=MID(TEXT(SUMPRODUCT($G7:$G17,$H7:$H17),
 "[>99999999]""OVERFLOW"";????????"),COLUMN(A1),1)
 として、これをP列まで、フィルドラッグ。

 J21とJ22に=MID(TEXT(ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*0.05,),
 "???????"),COLUMN(A1),1)
 として、これをP列まで、フィルドラッグ。  (LOOKUP)

 すみません。合計が、抜けてしまいました。
 D23とD24に
 =MID(TEXT(ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*1.05,),
 "[>99999999]""OVERFLOW"";????????"),COLUMN(A5),1)
 として、これをP列までフィルドラッグです。     (LOOKUP)

すみません。
ちょっと話題が前に戻ってしまうのですが、いいですか?
jun53さんとYosh!さんの式を試してみたのですが、
私が応用がきかないもので、どうにもこうにもなりません。
S5のセルに入力した数値をK5〜Q5のセルに1桁ずつうつしたいのですが、
どうしたらいいのでしょうか?
もう一度教えていただけませんでしょうか?
よろしくお願いします。     (そううつせん)

 [そううつせん]さんへ
 そうでしたね、なかなか再質問がないので、解決したのかと思っていました(笑)

 K5 に
 =IF(LEN($S5)<(8-COLUMN(A5)),"",LEFT(RIGHT($S5,(8-COLUMN(A5))),1)*1))
 か
 =IF(LEN($S5)=(8-COLUMN(A5)-1),"\",IF(LEN($S5)<(8-COLUMN(A5)),"",LEFT(RIGHT($S5,(8-COLUMN(A5))),1)*1))
 を入力して、
 Q5 までコピー、です。多分これで行けると思いますよ。
 もし解決出来ましたら、お返事をいただけると嬉しいですね。   (jun53)

 蛇足ですが。 =MID(RIGHT("       \"&$A1,8),COLUMN(A1),1)は、
 $A1のところを当該セルに変更するだけです。

 S5に=MID(RIGHT("       \"&$S5,8),COLUMN(A1),1)として、右にフィルドラッグ。

 \をつけないものは、S5に=MID(TEXT($S5,REPT("?",7)),COLUMN(A1),1)などです。
   (LOOKUP)

 そううつせんさん
 なんか割り込みで話を変えてしまってすみませんでした

 LOOKUPさん。その通りです!
 でも消費税だけなぜか1桁左へずれて表示されてしまうのですが。。
 エクセルでここまで出きるなんて感動しました。
 改めてアドバイスお願いします。 
  (izumi)

 消費税は、
 J21とJ22に=MID(TEXT(ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*0.05,),
 "???????"),COLUMN(A1),1)
 として、これをP列まで、フィルドラッグ。です。

 開始セルをI21とI22としたり、 
 "???????"の数を1個減らしますと、左に1桁ずれます。  (LOOKUP)

あ〜!!
できましたぁ!!

なんかいつも返事が遅くてすみませんでした。
解決しましたぁぁぁ!!
いろいろありがとうございました!   (そううつせん)


 あらまぁまぁ〜
 よくみたら、[そううつせん]さんを、思いっきり呼び捨てにしてましたー、ごめんなさいです。
 上の書き込みを訂正しました。
 解決出来たようで良かったですね。   (jun53)

 あの・・最後の合計にだけ¥マークをつけたいのですが・・・
 よろしくおねがいします
  (izumi)

 =MID(RIGHT("       \"&ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*1.05,),8),
 COLUMN(A1),1)
 ですが、レイアウトの関係で、7桁を超える場合には、お望みの表示は、できません。
 ご自分で、調整してください。  (LOOKUP)

 こんばんは。izumiさんはもう解決しましたか?
 もしも未だでしたら(桁数を増やしたいのでしたら)、下記の方法も試してみませんか?

 LOOKUPさんの数式で
 [数量×単価]、[小計]、[消費税5%] 共に
 =MID(TEXT($G7*$H7,"[>9999999]""OVERFLOW"";???????"),COLUMN(A1),1)
 =MID(TEXT(SUMPRODUCT($G7:$G17,$H7:$H17),"[>99999999]""OVERFLOW"";???????"),COLUMN(A1),1)
 =MID(TEXT(ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*0.05,),"???????"),COLUMN(A1),1)
 の数式中、 ? の数は7桁対応ですから [7つ] です。
 この ? を 自分の希望する桁数分にしてやれば8桁でも10桁でも対応出来ますよ。
 希望桁数= ? の数です。(10桁表示させたいなら ;??????????")

 合計は、
 =MID(RIGHT("       \"&ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*1.05,),7),COLUMN(A1),1)
                                                                  ↑この 7 の数字
 引数の 7 を希望桁数と同じにすれば出来ます(10桁表示させたいなら 10)

 希望桁数(列数)と ? と引数は同数にしないと結果が出ません。
 列を挿入の時はなるべく L,M,N列あたりの中央でしたほうが楽です。

 疑問がありましたら、書き込みして下さいね、詳しい方が答えてくれますよ。
 出来ましたーー の書き込みを、皆さんが見たいと思ってるはずですよ。

 もしも解決済みでしたらごめんなさい。   (jun53)

 いつも親切に教えてくださって助かります。
 ちょっと仕事でばたついて返事がおくれてスミマセン・・・
 合計ですが、
 =MID(RIGHT("       \"&ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*1.05,),7),COLUMN(A1),1)
 の数式をK23.24にコピーして入れると¥0となって合計が表示されませんでした。
 できれば、小計+消費税=の数値を¥マーク付で表示したいのですが出来ますでしょうか?

  (izumi)

 合計は、D23とD24に
 =MID(TEXT(ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*1.05,),
 "[>99999999]""OVERFLOW"";????????"),COLUMN(A5),1)

 この数式の替わりに、
 =MID(RIGHT("       \"&ROUND(SUMPRODUCT($G7:$G17,$H7:$H17)*1.05,),8),
 COLUMN(A1),1) 
 として、これをP列までフィルドラッグですよ。 (LOOKUP)

 できました〜!!!!!
 すっごく嬉しいです。これで少しは仕事が楽になります♪
 原始的な会社なものでPCができるの私だけ・・
 パソコンのリース会社に分からないこと聞いてもいつも返答なし・・

 こんなにすばやく親切にしてくださって感動です。
 これからイロイロと改良したいのでまた質問するかもしれませんが
 よろしくお願いします。
 このサイトに出会えて本当によかった。。
 (izumi)

 izumiさん、解決して良かったですね〜♪
 問題解決したところでこんな話も恐縮ですが...(もう1度ここを覗いてくれることを祈って)
 気になっていたのですが、、表中でセル結合を何カ所かでされてるようなので、

 以前私が偉そうに投稿した
[[20031111200700]]『結合したセルへの貼り付け』(もも)
 や、最近の「セル結合の質問」でも
 結合セルは [コピペ] や [並べ替え] 等でいろいろと不都合が出てくるようですし、
 結合解除以外これといった解決策が無いようです。

 今のうちに、表レイアウトの見直しなども、お考えしたほうがいいと思いますよ。
 将来、データ加工の時、苦労しなくて済むはずです。
 余計なお世話、ごめんなさい。   (jun53)

 jun53さん、アドバイスありがとうございます。
 解決してからも、いろいろなアドバイスが聞けて
 本当に勉強になります。
 今回の件でエクセルに興味がでました。
 またいろいろ試していきたいと思うので、分からないことがあれば
 よろしくお願いします。 (izumi)


コメント返信:

[ 一覧(最新更新順) ]


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