• 締切済み

Excel VBA コピー行を新しいシートへ移行

こんばんわ。 取り急ぎ教えて下さい。 Excel2007を使用しています。 シートに得意先商品名一覧があります。 得意先毎にシートわけし、シート名には得意先名としたいのですが 得意先数が多い為VBAを使用したいと考えています。 ご教授願えないでしょうか? 得意先数は都度変わります。 例>シート名:得意先一覧 A列(得意先名)     B列(商品名)  C列(単価) 得意先A         商品A      10円 得意先A         商品B      10円 得意先A         商品C      10円 得意先A         商品D      10円 得意先B         商品A      10円 得意先B         商品B      10円 得意先B         商品C      10円 得意先B         商品D      10円 得意先B         商品E      10円 得意先B         商品F      10円 得意先C         商品A      10円 得意先C         商品B      10円 ↓ ↓ ↓ シート名:得意先A 得意先A         商品A      10円 得意先A         商品B      10円 得意先A         商品C      10円 得意先A         商品D      10円 シート名:得意先B 得意先B         商品A      10円 得意先B         商品B      10円 得意先B         商品C      10円 得意先B         商品D      10円 得意先B         商品E      10円 得意先B         商品F      10円 シート名:得意先C 得意先C         商品A      10円 得意先C         商品B      10円 よろしくお願いします。

みんなの回答

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

これも丸投げ質問だ。したいことだけ言っているが、何か自分でやってみたのかな。人に頼りすぎだろう。 ーー 色んな方法があるが、シートを作るVBAは フィルタオプションの設定で重複するレコードは無視するで、重複の無い会社名一覧が出る。 G列に出したとする。 例データ A列(得意先名) B列(商品名) C列(単価) 得意先A 商品A 10円 得意先A 商品B 10円 得意先A 商品C 10円 得意先A 商品D 10円 得意先B 商品A 10円 得意先B 商品B 10円 得意先B 商品C 10円 得意先B 商品D 10円 得意先B 商品E 10円 得意先B 商品F 11円 得意先C 商品F 12円 得意先D 商品F 13円 ーーー G列 A列(得意先名) 得意先A 得意先B 得意先C 得意先D ーーーー Sub test01() d = Worksheets("Sheet1").Range("G65536").End(xlUp).Row MsgBox d For i = 2 To d Sheets.Add.Activate ActiveSheet.Name = Worksheets("Sheet1").Cells(i, "G") Next i End Sub ーー この先は フィルタオプションの設定をマクロの記録でも採って考えること。 明細も要るなら、100社ぐらいなら、質問してるより、手作業でコピペした方が、結局速いはず。

関連するQ&A