Excelで複数の支店名を別シートに自動入力する方法

このQ&Aのポイント
  • Excelのシート1に複数の支店名が入力されていますが、同じ支店名が複数あります。この質問では、以下の2つの要件を満たす方法を探しています。1. 同じ支店名ごとに個別のシートを自動的に作成する。例:[東京支店]シート、[名古屋支店]シートなど。2. シート1のD列にある同じ支店名の行をそれぞれのシートに自動的に書き込む。
  • マクロ初心者であり、自力では解決できませんでした。Excelの操作に詳しい方からのご教授をお願いします。
  • 毎月作成されるデータをExcel初心者が簡単に処理できるようにするため、マクロを使って自動化したいです。ボタンを押すだけで処理が実行されるようにする方法を教えてください。
回答を見る
  • ベストアンサー

Excel エクセル

Excel エクセル [シート1]の、D列に複数の支店名(東京支店、名古屋支店・・・)が入力されています。 同一の支店名も複数あります。 1.支店名のシートを自動的に作成 ex.[東京支店]シート、[名古屋支店]シート ・・・ 2.[シート1]D列の同一支店名の行を該当のシートに書き込み と言う様な事は可能でしょうか?。 マクロ初心者で調べられる限りでトライはしてみましたが、どうしても出来ません。 ご教授のほど よろしくお願いいたします。 ex. [シート1] 列  A  B   C   D   ああ  い   う   東京支店   か   きき  くく  名古屋支店   ささ  し   すす  名古屋支店   た   ちち  つつ  東京支店      ↓ [東京支店]シート ああ い う 東京支店 た ちち つつ 東京支店 [名古屋支店]シート か きき くく 名古屋支店 ささ し すす 名古屋支店 毎月作成されるデータをエクセルを知らない初心者が対応するため、 どうしてもマクロで作成したボタンを押すだけで自動的に処理できるようにしたいのです。

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

  • ベストアンサー
  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.1

1行目が項目行だという前提で作りました。 Sub test() Dim Sh As Worksheet Dim r As Long With ActiveSheet For r = 2 To .Cells(.Rows.Count, "D").End(xlUp).Row For Each Sh In Worksheets If Sh.Name = .Cells(r, "D").Value Then Exit For Next Sh If Sh Is Nothing Then Set Sh = Worksheets.Add(after:=Worksheets(Worksheets.Count)) Sh.Name = .Cells(r, "D").Value .Rows(1).Copy Sh.Rows(1) End If .Rows(r).Copy Sh.Cells(Sh.Rows.Count, "D").End(xlUp).Offset(1).EntireRow Next r End With End Sub

ogaki_3ok
質問者

お礼

ありがとうございました。 やりたい事が「完璧」にできました。

関連するQ&A

  • エクセルの各シートのデータを自動的に複写する方法

    現在、エクセルでデータの管理を行なっていますが、複数のシートから必要なデータのみ(「郵便」と入れた列)を、特定のシートに複写する方法の計算式をご教示ください。 エクセルデータのシート例示状況は次のとおりです。 (1) sheet1      A        B    C     D     E   F 1 (株)東京 1000  500 200  100 郵便 (2) sheet2      A        B     C    D     E 1 神奈川県庁 50   20  100  郵便 (3) sheet3(このシートに各シートのデータに「郵便」と入れた業者名だけを順次下のセルに自動複写していく)    A        B     C    D    E 1 (株)東京 2 神奈川県庁 このように何とかならないか考えています。誠に申し訳ありませんが、一連の「計算式と手法」をご教示ください。お願いします。 やっぱり「マクロ」しかないですよね。(マクロはかなりの初心者です) なお、エクセルは2003です。 重ね重ねお願いします。

  • エクセルで試合結果を入力し、各シート(チーム毎)にまとめ、データベースを自動作成する方法教えてください。

    例えば、Jリーグの全試合結果をシート1に入力します。 A列に日付、B列にホームチーム名、C列にアウェイチーム名、D列に得点(ホーム)E列に失点(ホーム)、F列に得点(アウェイ)、G列に失点(アウェイ)とします。 A    B    C   D  E  F  G 3月2日 東京  名古屋  2  1  1  2 3月2日 大阪  福岡   1  0  0  1 3月9日 福岡  東京   3  1  1  3 3月9日 名古屋 大阪 シート2には、チーム毎の結果、例えば東京とすると、東京との対戦相手の結果のみが抽出される。 A    B    C   D  E  F  G 3月2日 東京  名古屋  2  1  1  2 3月9日 福岡  東京   3  1  1  3 そして、シート3を大阪とすると、大阪との対戦相手の結果のみが抽出され表示される。 このような、シート1に試合結果を入力すると各シートに表(チーム毎の表)が自動作成される関数を教えてください。 さらに、欲を言えば、シート2を東京と限定するので、B列に対戦相手、C列に場所、D列に得点、E列に失点というように一挙にまとめた表ができる関数があるとよいのですが・・・ A    B    C    D  E  3月2日 名古屋  ホーム  2  1   3月9日 福岡   アウェイ 1   3   上記のようなデータベース作成は、エクセルで無理なのでしょうか? またエクセルのマクロだと出来るのでしょうか? よろしくお願いいたします。

  • エクセル初心者ですが、下記内容の作業をしたくマクロを組もうとしています

    エクセル初心者ですが、下記内容の作業をしたくマクロを組もうとしています。どなたかやり方を教えていただけますと助かります。 [やりたい事] ブック(シート1)の中に(支店名)と(各支店別コード/4~8ケタ)2列の表があります。 同じブック(シート2)には、各支店別の発注データ(月単位/毎月新シート)があります。 この発注データには、支店名はあるのですがコードが入ってない為、毎月各支店名の横へ 新しい列を作り、支店コードをアナログで貼付しています。 この(シート1)から(シート2)へコードをマクロのボタン1回で反映させたい事が質問となります。 尚、支店別発注データは毎月発注回数や支店(有無)が異なる為、命令文としては、仮に (シート1)で東京支店・コード0001している場合、(シート2)の東京支店の横にある列全てに 0001が記入されるようにしたいです。同様に300近い支店があります。(発注件数はバラバラ) お手数ですが、宜しくお願いいたします。

  • エクセルシートの並べ替えについて

    ひとつのエクセルブックに複数のワークシートがあって、それぞれのシートの見出し(デフォルトでsheet1とか2とか入っているところです)に名前をつけています。(例)東京支店、名古屋支店、大阪支店...等 今、シートの順番が作成順なのですが、これをシートの見出しの文字から、一発で昇順や降順に並べ替える方法はありますか? 参考書によると手作業では1枚ずつシートの順番の並べ替えができるようですが、シート枚数が多いためお尋ねしています。 よろしくお願いしします。

  • エクセルのマクロの登録について

    エクセルのマクロ登録についてご質問です。 エクセルでマクロを登録したいのですが、 D7~D49まで自動で数式が反映するようにしてあります。 マクロのボタンを作成し、そのボタンを押すとコピーを選択した状態になるようにしてあります。 これが、すぐよこのE列~AH列まで日付が並んでおり、D7~D49に反映させたデータを 対応する日付の下に毎日値貼り付けをしている常態です。     D      E     F     G   自動反映   9/1   9/2   9/3 7   ~ 49 ボタンひとつでコピーした状態ではなく、その対応した日付の下に値貼り付けすることはできますでしょうか。 これがシート1、シート2、シート3、シート4まで あるのですが、ボタンひとつで登録するようにできますでしょうか。 どなたかご回答よろしくお願い致します。

  • Excel 2007 マクロ 表の集計について

    Excel 2007 マクロ 表の集計について 2つのシート(Sheet1とSheet2)の情報を集計して Sheet3に反映するマクロを考えています。 (1)Sheet1のC列、D列、E列とSheet2のC列が空欄の場合は  Sheet3に反映しません。 (2)Sheet1のC列、D列、E列とSheet2のC列のいずれかに数値が  入っている場合にはSheet3に行を反映します。  ※Sheet3に反映する際に、Sheet1とSheet2のキー(A列)は  反映しません。  各Sheetの表は画像を添付します。  どのようなマクロを作成すればよろしいでしょうか。  マクロの超初心者です。  マクロのサンプルをご紹介頂けますでしょうか。

  • エクセル 1つのシートを日付で複数シートに分けたい

    エクセル2007を使用してます。初心者です。 1行名に列ごとのタイトルが入ってます。 A列~S列まで色々とデータが入っており、M列に日付(20140618のように)が入ってます。 このシートを日付ごとに別シートに分けたいのですが、何か計算式かもしくはマクロでできますか? できれば、R列に入っている数字を日付のあとにつけて自動で保存できると大変助かるのですが・・・。(20140618-2 というような感じ) マクロの扱い方も良く分からないので教えていただけると助かります。

  • エクセルで集計

    エクセルで集計 シート1に1つの列に各支店名、2つ目の列に各商品名、3つ目の列に商品個数がランダム入力されているデータをシート2に自動で整理し集計したいのですが、2つの列の集計は関数SUMIFできるのですが、例えば、「各支店の商品個数の集計」など、「各支店の各商品の個数の集計」などの3つの列の集計方法を分かる方、いましたら教えてください。宜しくお願いします。

  • excelのグラフ作成をマクロで

    excelのデータが多くてマクロで手っ取り早く処理したいのですが、どうすればよいのでしょうか? 初心者なもので。。。 A列をx軸にしてB列~P列をy軸にします。 1枚目がAとBでグラフを作成し、続いて2枚目としてAとCでグラフ作成し、同様にD・E・F・・・って作成したいです。 グラフは新しいシートを作成していきたいです。(計15枚だと思います。) で、そのシートの名前もつけたいです。 で、書式設定もマクロ上できたらうれしいです。 できないでしょうか? よろしくお願いします。

  • エクセル・マクロ・・・シート名の取得等

    エクセル・マクロ・・・シート名の取得等 エクセルのマクロで質問です。 ほぼ初心者です。 社内データの処理をしたいと考えています。 マクロを組みたいエクセルブックの構成としては・・・ シート名一覧 集計シート 操作 という3つのシートがあり、 その後ろに各社員のデータシートがあります。 山田太郎 田中花子 ・ ・ ・ 部署により社員数が異なるためシートの4枚目以降は そのエクセルファイルによりシート数が異なります。 やりたいことは以下の2点です。 (1)シート名(社員名)の取得 シート名一覧に各シート名を一行ずつ入れて 一覧を作りたいです。 シート名取得&リスト化のマクロは大体わかりますが、 「シート名一覧」、「集計シート」、「操作」の3つのシート名は 一覧から外したく、どうしたらいいのかわかりません。 また、各シート名を取得した列の横の列に 各社員のシートにあるデータの一部(セルC5:C8)を 貼り付けたいです。 (2)集計シートに各社員のシートのD列の情報(D6:D43)を順に貼り付けていく。 シート名や数が固定されたものであれば何とかできそうなのですが、 不特定になるとどうしたらよいかさっぱりわかりません。 どなたかご教授お願いいたします。

専門家に質問してみよう