• ベストアンサー

5キロ単位で各セルに振り分ける方法は?

例えばエクセルのシートで    A    B    1  氏名 数量(キロ) 2 ******   5 3 ******   14 4 ******   2 5 ******   23 と、あるとします。その表示を下記のようにしたい場合、C2~E2にはどのような式がはいりますか?(あとは下方向にコピーしたらいいと思うので・・・) いろいろ試しましたが、うまくいきません。    A    B   C   D   E    1 氏名 数量(キロ)1K入 5K入10K入 2 *****  5         1      3 *****  14    4       1  4 *****  3     3            5 *****  23    3       2 

質問者が選んだベストアンサー

  • ベストアンサー
  • tizzy
  • ベストアンサー率51% (115/224)
回答No.7

0.5キロの単位がある場合にも 同様です。   A    B   C   D   E   F   1 氏名   数量  0.5K 1K  5K  10K ・ ・ という感じで C2=IF(B2="","",INT((B2-F2*10-E2*5-D2)/0.5)) D2=IF(B2="","",INT((B2-F2*10-E2*5)/1)) E2=IF(B2="","",INT((B2-F2*10)/5)) F2=IF(B2="","",INT(B2/10)) でいけると思います。 考え方としては、 数量を大きい単位から順に割って 答えの整数の部分のみを使い、 余りを次の単位に送って、 またそこで割り算をして余りを・・・ というように、希望の最小単位まで割り続ければ 良いということです。 上手くできるといいですね。 分からない点がありましたらまたお尋ねください。

その他の回答 (6)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.6

この質問をみて、現金支払い制の給料を用意する場合の金種計算とそっくりだと思いました。 VBAでやると Sub test01() a = Array(10000, 5000, 1000, 500, 100, 50, 10, 5, 1) j = 2 '数量データは2行めから始まる。1行目見出。 p01: k = Cells(j, "B") 'B列に数量(合計金額)があるとき If Cells(j, "B") = "" Then Exit Sub For i = 0 To UBound(a) Cells(j, i + 3) = Int(k / a(i)) 'C列より内訳セット k = k - a(i) * Int(k / a(i)) Next i j = j + 1 GoTo p01 End Sub Arrayの( )の中を、10kg、5,1と大きいもの順に 並べるとそのまま使えるのではないかと思いました。 (小さいもの順の場合は少し手直しが必要) ご参考まで。

  • tizzy
  • ベストアンサー率51% (115/224)
回答No.5

ootakuさん 計算方法は出ているようなので。 Bの列に数字が無い場合に0を表示させない方法として C2=IF(B2="","",B2-D2*5-E2*10) D2=IF(B2="","",INT((B2-E2*10)/5)) E2=IF(B2="","",INT(B2/10)) また、0をどこにも表示させたくない場合 CDE列の書式設定でユーザー定義を選択して G/標準;-G/標準;;[白]G/標準 としておくと、0が入る場合には 文字が白になって見えなくなるので 非表示の効果があります。 余談でしたが(笑)ご参考までに。

  • seiuchi4
  • ベストアンサー率37% (71/189)
回答No.4

B1 =A1-D1*10-C1*5 C1 =QUOTIENT(MOD(A1,10),5) D1 =QUOTIENT(A1,10) 大きいほうから計算して、余りを次に大きい値で求めます。

ootaku
質問者

補足

ありがとうございます。出来ました!いろいろな関数があるものですね。 ついでといっては何ですが、もし、1キロより小さい0.5キロ単位のネットがある場合の式は、どうなりますか?

回答No.3

これは金種計算に近いですね。 E2=Rounddown(B2/10,0) D2=Rounddown(B2-E2*10)/5,0) C2=B2-E2*10+D2*5 大きい方から計算してみました。

  • soma3
  • ベストアンサー率39% (16/41)
回答No.2

C2=B2-5*D2-10*E2 D2=(B2-10*E2-MOD(B2-10*E2,5))/5 E2=(B2-MOD(B2,10))/10 余りを元に計算してみました。

  • tksoft
  • ベストアンサー率36% (99/273)
回答No.1

とりあえず C2に =B2-E2*10-D2*5 D2に =INT((B2-E2*10)/5) E2に =INT(B3/10) で、どうでしょう。 ポイントはINT()関数です。

関連するQ&A

  • Excelで2箇所のデータを1箇所にまとめる方法は

    2箇所にあるデータを1つにまとめるにはExcelの機能で簡単にする方法はありますか? 例えば シート1 A B C D 1 氏名 12月 2 申告 未申 ク 3 A 0 1 1 4 B 0 1 0 5 D 1 0 0 シート2 A B C D E F G 1 氏名 1月 2月 2 申告 未申 ク 申告 未申 ク 3 A 0 1 0 2 0 0 4 C 0 1 0 0 1 0 5 D 0 0 0 0 2 0 これの合計をシート3にまとめるには、Excelのどのような機能でプログラムで簡単にまとめられますか? シート3 A B C D 1 氏名 2 申告 未申告 ク 3 A 4 B 5 C 6 D B列の申告、C列の未申告、D列のクにExcelの機能を使って簡単に合計をまとめるのを作成したいです。シート1と2にはシート1と2に同じ人もいればシート1にしかいない人、シート2にしかいない人がいます。ただ、データは同じです。シート1は12月のデータ、シート2には1月、2月のデータがあります。シート1にはA1は氏名、A3はA,A4はC,A5はD,、B2は申告、B3は0,B4は0,C1は12月、C2は未申告、C3は1,C4は1です。他のシートも同じように見てください。ズレテ表示されてしまっているかもしれません。実際にはシート2には6月までのデータもまとめたいです。宜しくお願いします。Excelの検索機能等を使ってシート3にシート1と2のデータをまとめる事が出来ますか?回答宜しくお願いします。 シート3に計算式を入れます。例えばB3にSUM=(sheet1!,B3)(sheet2!,B3,E3) シート3のB4にSUM=(sheet1!,B4)(sheet2!,B4,E4) B5にSUM=(sheet1!,B5)(sheet2!,B4,E5)を入れる方法だとシート1とシート2に違った人がいる為に下に向かって同じ式をコピーしていくのが出来なくて困っています。上記の式だとコピーしただけだから職場の人にも駄目だと言われています。他のやり方が分からないので誰か教えて下さい。宜しくお願いします。

  • こんな関数お願いします

    こんな関数お願いします ドングリを拾った数の合計 Excel2003です、A列 月日 B列 氏名 C列 数量 行は2~60 氏名はA君B君C君D君です、 シート2のA列に氏名 B列に合計数量です。 B列の合計数量セルの関数式をお願いします、 シート1に記入するとシート2のB列に合計数量が出る方法A君でお願いします。

  • エクセル関数でグループ単位に集計を行う

    エクセル初心者です。 入力伝票データを元に、集計シートに自動的に品名コード順の合計を作成したいのですが、うまくできません。 データシートのデータをソートせずに関数だけで出来る方法をお教えください。 ※エクセルはExcel2003を使用しています。 《データシート》例 [見出し] A1:年月日,B1:伝票番号,C1:品名コード,D1:数量,E1:単価,F1:金額 [データ] A2:2008/10/1,B2:Z-001,C2:S0001,D2:3,E2:1,000,F2:3,000 A3:2008/10/1,B3:Z-002,C3:S0002,D2:1,E3:2,000,F3:2,000 A4:2008/10/1,B4:Z-003,C4:S0003,D4:2,E4:3,000,F4:6,000 A5:2008/10/2,B5:Z-004,C5:S0002,D5:1,E5:2,000,F5:2,000 A6:2008/10/2,B6:Z-005,C6:S0001,D6:3,E6:1,000,F6:3,000 A7:2008/10/3,B7:Z-006,C7:S0003,D7:2,E7:3,000,F7:6,000 《集計シート》例 [見出し] A1:品名コード,B1:伝票数,C1:数量計,D1:合計金額 [集計値] A2:S0001,B2:2,C2:6,D2: 6,000 A3:S0002,B3:2,C3:2,D3: 4,000 A4:S0003,B4:2,C4:4,D4:12,000 ※品名コードは固定せず、データシートに入力されたものだけを集計したい

  • 2003Excel 別シートからのセル代入保存繰り返し方法について

    エクセル初心者です。 仕事の資料作成でとても困っています。 分かる方教えてください。 エクセルシート1と2があるとします。 シート1   A B C D 1   2   3 4 ・ ・ ・ シート2   E  F  G  H 5 ○  ×  △   6 ▲  ☆  ★   7 □  ▽  ● 8   ・ 9   ・ 10  ・ 11  ・ ・   ・ ・   ・ 【シート1のA1、A2、A3にシート2の5E、5F、5Gを入れて名前を付けて保存】 シート1   A B C D 1 ○ 2 ×  3 △ 4 【シート1のA1、A2、A3にシート2の6E、6F、6Gを入れて名前を付けて保存】 シート1   A B C D 1 ▲ 2 ☆  3 ★ 4 【シート1のA1、A2、A3にシート2の7E、7F、7Gを入れて名前を付けて保存】                  ・                  ・                  ・ と言うのを繰り返したいのですが分かる方教えて頂けませんか? 宜しくお願いします。   

  • Excel  希望者へ在庫商品検索後、抽出について

    下記のように、Sheet1にAさんから希望順位が決まっている商品コードに基づき、Sheet2の商品及び在庫商品に基づき、購入者名を記入したいのですが、どうしたらいいのでしょうか。 エクセルから記入例をコピーしたら、ずれてしまい少し見づらいと思いますがご容赦ください。 sheet1 列/行  A B C D E 1 順位 氏名 第一希望 第二希望 第三希望 2 1 Aさん K05 F05 F02 3 2 Bさん F02 K05 F01 4 3 Cさん K05 F01 F02 5 4 Dさん F01 F02 J02 6 5 Eさん F02 J02 K05 sheet2 列/行 A B C D E 1 品番 商品名 個数 第一購入者 第二購入者 2 F01 第1商品 2 3 F02 第2商品 1 4 J02 第3商品 1 5 K05 第4商品 1 6 F05 第5商品 2

  • エクセルAとエクセルBで同じ項目があった場合Bの内容をAにコピーする。

    始めまして、マクロ初心者ですが、何とぞ宜しくお願いします。 エクセルAのシートA A* 学校名 B* クラス数 C*生徒数 D*男子 E*女子 A?    B?     C?    D?   E? A* の 「*」には行番号が入りますが、可変行数が入る感じです。 エクセルBシートB A1 学校名 B1 クラス数 C1 男子 D1 女子 E1 生徒数 A2 A中学 B2 4クラス C2 60人 D2 60人 E2 120人 A3 B中学 B3 5クラス C3 70人 D3 80人 E3 150人 A4 C中学 B4 1クラス C4 10人 D4 20人 E4 30人 現状A1、B1、C1 がタイトルとしていますが、この部分の行数も可変となってます。 エクセルのシートAで実行した場合、エクセルシートAとエクセルシートBで同じ項目がある場合、 エクセルシートBの内容をエクセルシートAにコピーします。 コピー例: エクセルシートBとAで同じ「学校名」という項目があった場合、 エクセルシートBの「学校名」の下「A2」からしたの文字列全部を エクセルシートAの「学校名」の下「A?」にコピーします。 またエクセルシートAの検索内容をエクセルシートCで指定できれば 幸いです。 エクセルシートCの指定例: エクセルシートAが下記の場合 A6 学校名 B6 クラス数 C6生徒数 D6男子 E6女子 エクセルシートBが下記の場合 A1 学校名 B1 クラス数 C1 男子 D1 女子 E1 生徒数 エクセルシートCに下記の内容を指定したら其の範囲をコピー A1 A6 ←シートAの検索開始箇所 A2 E6 ←シートAの検索終了箇所 A3 A1 ←シートBの検索開始箇所 A4 E1 ←シートBの検索終了箇所 説明が判り難い箇所が有りますが、何とぞ宜しくお願い致します。

  • エクセルで住所録を分類する方法は

    いつもお世話になっています。(エクセルは2002です)   A     B       C   D   E 1 郵便番号  住所      氏名  地区  備考 2 100   A県B市C町  C氏  E   G 3 100   A県B市D町  C氏  E   G 4 200   B県      D氏  F   H 上記のような表(シート1)があります。 シート2にA県、シート3にA県以外を郵便番号・住所・氏名・地区・備考を分けて、シート2の表をシート4にB市、シート5にB市以外に郵便番号・住所・氏名・地区・備考を分けて、シート4の表をシート6にC町、シート7にC町以外に郵便番号・住所・氏名・地区・備考を分ける方法を教えてください。 うまく説明できませんがよろしくお願いします

  • エクセルのコピー方法について教えて下さい

    エクセルについて教えて下さい。 例えばエクセルのシート名が1,2,3,4とあり、各シートのA1は氏名、B1は住所、C1からK1までは支払金額、L1にその合計があるとします。一覧表という名のシートを作り、A1に1のシートの名前、B1に1の住所、C1に1の合計金額、A2に2のシートの名前、B2に2の住所、C2に2の合計金額と順次各シートから移したいのですが、簡単にコピーする方法を教えて下さい。

  • 簡単なセルのコピー方法を教えて下さい。

    お世話になります。Office2003を使用しております。 エクセルで甲のシートのA列に、乙のシートのA行のセルの データを7列おきにコピーしたいのですが、簡単な方法があれば 教えて頂けないでしょうか。           A1 B1 C1 D1 1  →    1  8 15 22 2 3 4 5 6 7 ・ ・ 100

  • エクセルxpで1つ飛びのsum

    Winです。 エクセル上で A1 数量 B1 時間 C1 数量 D1 時間 ・ ・ ・ (以下繰り返し) というシートがあり A1、C1、E1・・・の合計 B1、D1、F1・・・の合計って出せるのでしょうか? どうぞ、宜しくお願い致します。

専門家に質問してみよう