• ベストアンサー

エクセルマクロについて

各支店データの入って売上データにおきまして(約300支店)、支店名から記載日の売上データを抜き取り、別シートへ移行させるマクロを作成したいと考えております。 右記データ 20101101 大宮支店 A商品 5 箱 1,000 5,000 のようなものが300支店分あり、このデータを各支店別に300シートに分散させたい状況です。1ヶ月あたり、1点~10点程度の購入記録がある為、支店別に記載数量はバラバラです。※0の場合もあります。 各シート名はデータと同じ、支店名といたします。 以上、宜しくお願いします。

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

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

まだ開いているようですし、そのままでは、こちらも後味が悪いので、もう少しアドバイスをします。 >とりあえず、マクロに触れてもう少し的確な判断ができる 私個人としては、質問者様が、明確なアイデアさえ持っていればよいだけで、私がダメ出ししたのは、物理的な問題だけです。 現在のデータ表から、明確なイメージを持って、これはどうかとか、あれはどうかとか、いくつかの選択肢の中で、VBAプログラマ(あえてこういう言い方をします)で、現実的なものをつくらせればよいのであって、ご自身が、マクロをあまり詳しく知らなくても、設定方法とか簡単な修正方法とかさえ分かれば、後は、おおよその全体を把握していれば十分だと思います。 しょせん、VBAプログラマは、毎日毎日、必ず1個以上はコードを書き、それが何千個もVBAのマクロを書いて蓄積しているわけですから、そのような人に敵うわけがありません。だから、業務で使うようなものは、そのような人にお任せでよいのです。 また、基本的に、手作業で出来るものは、概ね、マクロで可能だと思います。今回の物理的限界とかだけの問題です。作成に100万円というのは、チームA(モーグ)にお頼みすることになりますが、一般のフリー掲示板で出来るレベルものは、どんなに頑張っても、数万円程度のものしか出来上がりません。まして、OkWaveの掲示板では、掲示板スペースから、さらにレベルが下がるのはやむを得ません。一応、今回の内容を聞く限りにおいては、お金をいただくレベルの内容ではなくて、単に方法や方針の選択だけのものです。 こちらのイメージとしては、表計算とは云えども、Accessや他のデータベースと同じような作りで、プリントアウトする以外は、データからの切り出しにしかなりません。そうすると、更新させ、保持させるデータ・スペースと切り出した表示画面(シート)だけの二つで済みます。フィルタオプションを使えば、仮に、10,000~50,000件(Excel2003)でも、ストレスなく切り出しし、表示されるはずです。 それと、ちょっと、下世話な話をさせていただきますが、Access では、こうしたものは有償になってしまうようです。Excelでは、こういうものは、よほど凝ったものを作らないとお金が取れないと思います。経費的にもExcelのほうが安上がりです。 後、別件ですが、最近は、「Office系」のほうが、VBAでは、回答者の反応が良いようです。

qbtokyo
質問者

お礼

ご対応いただきありがとうございます! アドバイスも含め、参考にさせていただきました。

その他の回答 (2)

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

>状況が変わり根本から考え直す状況となってしまいました。 一応、アドバイスとしては、大型コンピュータとかと同じように、必要なデータをプリントアウトだけの方式が良いのではないかと思います。もちろん、ファイルのみという方法もありますが、300ファイルですと、テキスト出力して、それを検索するか、ハイパーリンクで探すような方法になるかと思います。 どのぐらいマクロがおできになるのかは分かりませんが、フィルタオプションで、簡易データベースをつくってやることになります。店名の一覧とかは、データからも取り出すことが可能ですが、予め別表でつくってあると、出力が楽です。 なお、レイアウトとデータの位置関係がないと、実用度の低いサンプルしか、こちらもつくって差し上げられません。

qbtokyo
質問者

お礼

Wendy02様 アドバイスありがとうございます。 当方マクロは全くの初心者ですが今回求められている事を根本から考え直し、最善の方法で処理する事にしました。とりあえず、マクロに触れてもう少し的確な判断ができるようにしようと思います。 具体的な作業で悩んだ時は、また投稿させていただきます。

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

前回のご質問そのものも、そのままになっていますが、残念ながら、その内容については、不可能だと思います。 その最大の原因は、 プリントアウトしたり、表示させることは可能であっても、 >各支店別に300シートに分散させたい ということです。Excelのバージョンが出ていませんが、一般的には、シート数は、50程度までです。それ以上で可能だとしても、非常に不安定になるのではないかと思います。シートを300シートに分散するということを改めたほうがよいです。CSV、それぞれに分けるとかなら可能です。 なお、出力する方法は、フィルタオプションを利用します。 それから、前回の質問は、締めたほうがよいのではないかと思います。常連の人は、ご質問者さんの対応をチェックしています。そのままにしても、解決の目処はありません。

qbtokyo
質問者

お礼

ありがとうございます。 基礎知識のない質問となってしまい、申し訳ございません。 根本的な部分で考え直してみます。 前回質問もクローズします。 ご対応感謝します。

qbtokyo
質問者

補足

状況が変わり根本から考え直す状況となってしまいました。 ご対応いただきありがとうございました。

関連するQ&A