• ベストアンサー

EXCELの関数またはマクロ教えてください。

Wendy02の回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.6

#5 です。 二つのミスを見つけましたので、飴とガムを集計するマクロの修正します。 Sub 集計2() Dim Rng As Range, c As Range 'シートを選択(念のため) Worksheets("Sheet2").Select Set Rng = Range("A1", Range("A65536").End(xlUp)).Offset(, 1) Application.ScreenUpdating = False '重複実行防止 If Rng.Cells(1, 1).Value = "お菓子" Then Exit Sub  Rng.Cells(1, 1).Value = "お菓子" For Each c In Rng   If VarType(c) <> vbString Then   c.Value = c.Value + c.Offset(, 1).Value   End If Next c Rng.Offset(, 1).EntireColumn.Delete Set Rng = Nothing Application.ScreenUpdating = True End Sub

noname#37281
質問者

お礼

重ね重ね大変恐縮です。 勉強させていただいております。

関連するQ&A

  • エクセルでの集計関数

    素人です。本当に! ある行(列)に”鈴木 佐藤 田中..鈴木...”と入力されていた場合、最も数の多い値を返す。この場合は ’鈴木’を求める関数はありますか?よろしくお願いします。

  • EXCELマクロVBAについて

    Excel2007、XPを使用しています。 AからE列に下記のような情報が入力されています。 A / B / C / D / E ID / 名前 / 住所 / 電話 / 注文日 11111 / 田中 / 東京都 / 00000000000 / 2012/08/10 11111 / 田中 / 東京都 / 00000000000 / 2012/08/09 11111 / 田中 / 東京都 / 00000000000 / 2012/08/18 11112 / 佐藤 / 京都府 / 00000000000 / 2012/08/10 11113 / 鈴木 / 北海道 / 00000000000 / 2012/08/11 11113 / 鈴木 / 北海道 / 00000000000 / 2012/08/15 A列のIDでくくったとして、 E列の注文日が最大のみの行を表示させたいです。 A / B / C / D / E ID / 名前 / 住所 / 電話 / 注文日 11111 / 田中 / 東京都 / 00000000000 / 2012/08/18 11112 / 佐藤 / 京都府 / 00000000000 / 2012/08/10 11113 / 鈴木 / 北海道 / 00000000000 / 2012/08/15 このようなことはマクロで可能なのでしょうか? 恐れ入りますがご教授お願い致します。

  • エクセルのセルに入力した名前を数値化

    どなたかご教授頂ければ幸いです。 エクセルの文字列(一覧表)に 田中 田中 鈴木 鈴木 佐藤 田中 田中 佐藤 佐藤 鈴木 佐藤 佐藤 と入力されているものを 集計表に 田中・・・4 鈴木・・・3 佐藤・・・5 とし、集計したいのですが、 名前を数値に読み替える方法がわかりません。 良い方法があればお教えください。 部下の月次訪問件数を容易に集計する方法を模索中です。 余計な入力を部下にさせたくないので、プルダウンで自身の 名前を選ぶだけで入力を完了とし、別の場所に作った 集計表に数値(件数)となって落ちていくものを作りたいと考えています。 よろしくお願いします。

  • excel 重複したデータのコピー

    例えばこんなデータがあるとします。 名前  値 鈴木  1 佐藤  2 佐藤  5 小林  2 田中  3 田中  1 田中  2 斉藤  0 山田  4 山田  2 というデータから 佐藤  2 佐藤  5 田中  3 田中  1 田中  2 山田  4 山田  2 という感じで名前が2つ以上あるデータだけ抽出・コピーをしたいのですが、 どういう風にすれば出来るでしょうか。

  • エクセルVBAの質問です

    sample.xlsがあり内容は下記のように A列に名前、B列に数字が入り、行数は一定でありません 田中一郎 3 鈴木健一 5 佐藤太郎 8 田中一郎 5 田中一郎 2 佐藤太郎 7 鈴木健一 3 佐藤太郎 9 鈴木健一 54 佐藤太郎 8 田中一郎 9 このエクセルシートにコマンドボタンを付け、VBAでコマンドボタンを押した場合 指定したエクセルファイル”kekka.xls”に 田中一郎 19 鈴木健一 62 佐藤太郎 32 と言うように、名前別でその氏名の横の数字の合計を表示させたいと考えています。 何卒お知恵をお貸しください、お願いします。

  • エクセル97です。かなり難しい足し算教えてください

    エクセル97を使っています。これは無理かと思いますが質問させてください 50名ほどの名簿があるとします。田中、佐藤、渡辺という感じです C2から下に名前、D2から下に金額のデータがあると仮定します 実際には300ほどのデータで、毎日のように増えます 同じ名前が何度も出てきます    C   D 2 田中 3000 3 佐藤 2000 4 渡辺 1500 5 鈴木 2000 6 田中 5000 一方で次のような名前ごとの合計を求める表があります 田中 3000 佐藤 2000 渡辺 1500 鈴木 2000 ここからが難しいのです。難しいですがGooの皆さんの中には優秀な人が たくさんいるのでもしかしてできるかも知れないと思い質問させて頂きました 6行目に田中さん5000という新しいデータが入ったら 田中さんの合計が8000になって欲しいのです 自分が今やっている方法は名前でソートしてその合計を求めています 名前をソートしないで自動的にというのでしょうか田中さんの合計が8000になるような方法があれば教えて欲しいと思います ちょっと長くなりましたがよろしくお願いします  

  • Excelの関数が分かりません。Vlookupで出来ると思ったのですが、出来ませんでした。

    すいません。自分が馬鹿なもので・・・さっぱりです。 A  B  C  D   E 1  梨 柿 苺 山下 2 芋 米 栗 鈴木 3 鳥 馬 羊 松本 4 魚 犬 猫 田中 というシートがあって。 別シートで A  B  C 1  猫 田中 2 芋 鈴木 3 梨 山下 4 犬 田中 というように、B列を検索してC列に人の名前を返す 例えば「猫」を前のシートから検索して一致する 「田中」の名前を返したいとき、どのような関数を使えばいいですか? vlookupだと検索範囲が1列しか検索できないから、どうしても複数列を検索したいもので・・・

  • エクセル 関数について教えてください

    エクセル2003です。初心者です。   番号  名前     提出状況  1    鈴木        ○ 2    田中 3    佐藤        ○ 4    小林    合計人数40人 未提出  5人 提出済み 35人 こんな感じの名簿を作成したいです。 (1)合計人数のところには、名前の欄に名前が入ってる数を入れたいのですが、 そういった関数はありますか? (2)名簿では未提出者は空欄になります。×とかは特に入力しません。 未提出者の合計欄には、空欄の数をいれたいのですが、そういった関数はありますか? (3)提出済みの部分には○がついてる人数を入れたいのですが、 そういった関数はありますか? この3つのことえを教えていただきたいです。 もし他によい方法があれば教えていただけると助かります。 よろしくお願いします。

  • エクセルで、次のような自動入力をしたい

      A    B    C    D   E  ・・ AA 1 田中 鈴木 佐藤          山田 2 鈴木 山田              海岡 3 田中 佐藤              佐藤 というような表があり、AAの列に名前を入力したとき、 D1に「山田」、C2「海岡」と、その行に関してAA列に新規の名前が入力されたときにD1,C2に自動入力することは、VBAで簡単にできますか? 3列目には「佐藤」さんがすでいるので入力不要です。 よろしくお願いします。(マクロ初心者です)

  • エクセルでの集計・・・再度です

    お世話になります。 エクセルでの集計につきまして 思っていたよりも複雑でわからないため、 再度質問させていただきました。 内容 名前 教科名 順位  田中 国語  8 佐藤 算数  5 鈴木 理科  1 山田 国語  2 田中 算数  3 佐藤 算数  4 田中 国語  1 佐藤 理科  2 鈴木 算数  8 田中 理科  11 という感じで、名前・教科・順位の羅列が並んでいます。 同じ生徒がどの教科で、順位がどうであったかを集計したいのです。 ちなみに、もし可能ならば集計時に 1番、2番、3番、4番以下 という風にできればいいなと思っています。 ピポットテーブルを使用すると良いと お伺いしたのですが、この場合でも可能でしょうか? どうぞよろしくお願いします。