excel
[HOME] [MAIL]

CEL351.データの桁数揃え

Q:(質問者:群馬akiaさん)
EXCELにて、コード表を作っておいたのですが、作業をしている人にセルの書式を文字から標準にされてしまい、00350、00070、11233だったら、350、70、11233というように先頭にあるゼロが消えてしまいました。
これを元の状態に戻すのに手っ取り早く出来るものを是非ご教授ください。
データ件数が三千件を超える量なので とほほ、と泣いております。
誰か助けてください。

???????????????????????


A:
兵庫yuhkiです。
コードは5桁と考えてよいのでしょうか?
であれば、データが入力されている列の隣に以下の式はいかがでしょうか?

=REPT("0",5-LEN(A1))&A1

(データがA1セルから入力されていると仮定しています)

桁数が一定でない場合は、作業列を用いて設定したい桁数を設定します。
C列を作業列とし、桁数を入力し、B列に以下の式を入力します。

=REPT("0",C1-LEN(A1))&A1

REPT関数−指定した文字列を指定した回数繰り返し表示します。
書式は、=REPT(文字列,繰り返し回数)です。

ご希望に合っているといいのですが。
ではでは。 [質問一覧][HOME]

CEL352.出席者名簿の作成

Q:(質問者:大分GYKさん)
Excel2000を使用しています。会員が100名程度の会ですが、登録NOを入力したら出席者名が表示できる方法があると出席者名簿の作成が簡単にできると思うのですが?
よろしくお願いします。

???????????????????????


A:
大分GYKさん、こんにちは。
この場合は、VLOOKUP関数が妥当だと思います。
関数の詳しい説明はエクセルのヘルプをご覧下さい。

まず、別シートに「会員リスト」を作成します。
どこでもいいですが、例えばA列に登録NO、B列に対応する名前を入力します。
そして他にも方法がありますが分かりやすくするため名前の定義をします。
このリスト範囲を選択して、数式バーの左にある「名前ボックス」をクリックして適当な名前、この場合、会員リスト、と入力してEnter を押して下さい。
この名前定義の意味は、任意のセルを選択した状態で「名前ボックス」右横の▼をクリックして、「会員リスト」をクリックしてみて下さい。
「会員リスト」の範囲が選択されたと思います。
この名前を数式に使います。
次に、出席者名簿を作るシートのどこでもいいですが、仮にA2以下に登録NOを入力したらB2以下に出席者名が表示されるとすると、B2に

=IF(ISNA(VLOOKUP(A2,会員リスト,2,0)),"",VLOOKUP(A2,会員リスト,2,0))

と入力して下に必要分オートフィルでコピーして下さい。
これで、登録NOを入力したら自動的に出席者名が表示されます。 [質問一覧][HOME]

CEL353.消費税の計算式

Q:(質問者:京都府kayamaさん)
WindowsXP
エクセルで見積書をつくる時、消費税の5%を掛けた時、小数点が切り上げになってしまいます。
本来の消費税のように、切捨ての計算をするにはどのようにすればいいのですか?

???????????????????????


A:
兵庫yuhkiです。
以下の方法はいかがでしょう?

=INT((金額)*1.05)

=TRUNC((金額)*1.05)

=FLOOR((金額)*1.05,1)

どの式でもご希望の形になると思います。
(金額)のところに見積金額を入れてください。
別セルに入力されているなら、セル番号を入れてください。

INT関数−最も近い整数を返します。
書式は、=INT(数値)です。

TRUNC関数−数値の小数部を切り捨て、整数または指定した桁数に変換します。
書式は、=TRUNC(数値,桁数)です。

FLOOR関数−指定された基準値の最も近い倍数を返します。
書式は、=FLOOR(数値,基準値)です。

ではでは。 [質問一覧][HOME]

CEL354.比較演算子がわかりません

Q:(質問者:大阪府rossさん)
Windows98SE
比較演算子の使い方を教えてください。よろしくお願いします。
使用ソフトはExcel2000です。
A〜C列までには25番までの数字がランダムに入ります。
A〜C列のどこかに1桁代(1〜9)の数字があれば、D列に○
A〜C列のどこかに10番代(10〜19)の数字があれば、E列に○
A〜C列のどこかに20番代(20〜29)の数字があれば、F列に○
を入れたいと思っています。
A列 B列 C列 D列 E列 F列
11 17 19      ○
 3 10 15  ○   ○
 8 22 25  ○      ○
と上記のようにしたいのですが、
10番代、20番代の"○"を出す式がうまくいきません。
E1のセルに下記の式を入れたのですが、
=IF(OR(9<A1<20,9<B1<20,9<C1<20),"○","")
FALSEとなり、○が表示されません。
比較演算子の使い方が悪いのか、 何がいけないのかわかりません。
説明が長くなりましたが、よろしくお願いします。

???????????????????????


A:
大阪府rossさん、こんにちは。次のような形にしてみてはどうですか。

=IF(OR(AND(A1>9,A1<20),AND(B1>9,B1<20),AND(C1>9,C1<20)),"○","")

また、次のような式でも求められます。
=IF(SUMPRODUCT((A1:C1>=10)*(A1:C1<20)),"○","")
=IF(COUNTIF(A1:C1,">=10")-COUNTIF(A1:C1,">=20"),"○","")

または、

=IF(SUM((A1:C1>=10)*(A1:C1<20)),"○","")

と入力して、Ctrl + Shift + Enter を押して配列数式とする。
20番代のときは数値を置き換えて下さい。 [質問一覧][HOME]

CEL355.顧客のランク分け

Q:(質問者:kawagutiさん)
顧客の1回、2回、3回、来た人でA.B.Cランクに分けたいのです。

1回の人の買った枚数、金額。2回買った人、枚数、金額、を出したい。
3回も同じです。
1月〜6月の半年分です。
買ったお客さんのレシートの控えは毎日取っては有ります。
パソコンでのやり方教えていただけないでしょうか

???????????????????????

A:
kawagutiさん今日は。兵庫のhhirochannです。
一部誤解しているかも判りませんが、以下の方法では如何でしょうか?

1.まずレシートのデータを全て入力します。
フォーマット例(適宜修正ください)
NO  日付  顧客NO  顧客名  購入枚数  購入金額  ランク
ランクは後で入力する事にし、入力時はブランクのままとします。
顧客NOは省略できますが、顧客名の入力が一般に日本語で顧客NOより入力に時間を取りますので、顧客名が限られるような場合入力を楽にする方法がありますので、追加しました。

2.入力が終了しましたら、全体を選択し、「データ」→「並べ替え」と進み、顧客NO 又は顧客名 を第一のキーにして並べ替えを実行します。

3.次に これも全体を範囲指定し、「データ」→「集計」とし、グループの基準に 顧客名 を選定し、集計方法に 合計  集計フィールドで 購入枚数 購入金額にチェックを入れます。
これで顧客毎の 購入枚数 金額 が求められました。

4.次にランクをつけましょう。ランクは回数のみで決定されるのですか?
そうであれば、2終了後に付けられますね。
金額も考慮されるのであれば、3終了後になります。

5.このままで見難いと感じられるようでしたら、左側に表示されている − をクリックしますと合計欄だけになります。

1回だけ購入した人の合計枚数 金額
2回購入した人の合計枚数 金額
と個々の人の合計が不要な場合は 2終了時点でランク(A,B,C)を付けます。

次にこのランクで並べ替えを実行し、次に集計をこのランクをグループの基準にして実行します。

別途 ピボットテーブルを利用する方法も考えられますが、上記がより簡単と考えました。
小生の理解が間違っていたらごめんなさい。 [質問一覧][HOME]


[HOME] [MAIL]