• 締切済み

エクセルマクロで参照して表示方法

エクセルマクロを作成しているのですが、以下のようなものが作りたいです。 (1)1シート(メインシート)A1セルに「媒体1」「媒体2」が選択があります。 (2)1シートB1セルには管理番号「100-000-000」とあります。 (3)2シートには、管理シートがあり、以下のようになっています。  この管理シートには、A1セルに「管理番号」記載。B1には媒体名が記載されています。 ■質問 ・メインシートで、媒体1を選択した場合、管理シートを参照して、  管理番号を自動で呼び出すにはどうすればいいのでしょうか。  (既に100-000-001が登録してあった場合は、メインシートのB1セルには100-000-002にしたいです。) ・媒体2を選択した場合、管理シートを同じように参照します。  (既に200-000-005が登録してあった場合、メインシートのB1セルには200-000-006にしたいです。) ※いずれも該当する媒体の数字が大きいものに+1になります。 ※200-000-999だった場合、数字を繰り上げて、200-001-000にしたいです。 ご教授お願いします。

みんなの回答

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

> この管理シートには、A1セルに「管理番号」記載。B1には媒体名が記載されています。 管理シートの  A列      B列  管理番号    媒体名 100-000-001  媒体1 ・・・ とデータが上から順に入力されているということですよね。 私であれば  管理シートのA列は、表示形式を 000-000-000 と設定して、入力時は すべて数値を入れておき、表示だけが 3ケタごとに - が入るようにしておきます。 メインシートの次の管理番号を表示したいセルに =MAX(IF(管理シート!B:B=A1,管理シート!A:A,0)) と式を入れて Ctrl+Shift+Enter で決定させて配列関数にします。 管理シートのB列が A1で指定した媒体名の最大値に 1をプラスします。

関連するQ&A

専門家に質問してみよう