- 締切済み
エクセルで
エクセルで保管場所図を作成中です。アドバイスお願いします。 シート1に、 A B C D E・・・・ 1 G1-1 12/30 材料A 無し 2 G1-5 12/29 材料C 有り 3 G2-9 1/10 材料F 無し 4 G3-5 5 G2-2 12/31 材料P 無し 6 Aは、保管場所 Bは、出庫予定日 Cは、品名 Dは、注意事項 Eは、備考とします シート2の図に反映する為、適当なセルに=シート1!B1 =シート1!C1・・・ シート3の図の一覧に反映する為、=シート2!$D$5$:$D$8としました 感じとして、長方形の中に表示します 12/30 12/29 材料A 材料C 無し 有り 保管場所の表示を忘れましたが・・・ G1-1の物をG3-9に簡単に移動出来ませんか また、出庫した物を簡単に削除出来ませんか 次の入庫の為にAの保管場所は残します ここから先はこれから作成しますが手順がわかりません Dの注意事項の有りだけの一覧シート作成 無しだけの一覧のシート作成 出庫日当日、2日前とか適当な日にちを入力すれば一覧を作成出来たらと・・・ お手数お掛けしますがお力お貸し下さい
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- showado
- ベストアンサー率22% (27/118)
私はこの質問に近い内容の「保管場所を表示するソフト」をエクセルVBAでつくりました。 ID番号、品名、場所、入力日時、備考の5項目でデータシートに入力します。別のマップシートに、セルをます目状に設定した列数と行数のマップをデータシートの場所データからつくります。 たとえばデータシートの場所項目に「C3」と入力されたデータが15件あれば、マップシートのC3セルに「15」という件数が表示されます。 ひとつのセルに1台だけ入力するなどのカスタマイズで、質問者の要望に応じられそうです。件数0なら空き表示になります。マップシートのC3セルをWクリックするとデータシートのデータ行が検索表示されます。 GI-1からG3-9の移動は、データシートのデータを書き換えるだけでよさそうです。 しかし、これをつくるにはかなり手間がかかりました。簡単ではありません。 VECTORや窓の杜のようなソフト公開サイトを当たってみてはどうですか?応用できるものがあるかも知れないですよ。ちなみに私の作品は未発表です。禁止事項になるので作品名もお教えできません。
#4です。 以下は文字通りの“アドバイス”ですので(蛇足とも言う)読み流していただいて結構です。 >確かに難しい説明でした #2さんがおっしゃっているのは、「説明が難しい」ということではなく、 ・説明が曖昧・不足・不備である ・エクセルというソフトで実現することは難しい ということだと思います。 もちろん、的確に過不足のない質問をするだけのスキルがあれば、大抵の場合質問する必要自体生じないというのも事実ですが、 せめて、 ・前提(確定していること、質問者の権限で変更できないこと) ・目的(やりたいこと、課題、要望) ・経緯(やってみたこと、場合によっては別のやり方でも良いこと) の基本的な内容と区別がはっきりしていないと、回答のしようがありません。 例えば、 ・“オートシェイプを使う”というのは上記のうちどれに当たるのでしょう? ・入庫・移動・削除は、シート1のリストで行うおつもりでしょうかシート3の“図”で行うおつもりでしょうか?
仕様のはっきりしない点が多いので、 「似たような状況で私がやるとすれば…」という観点から“参考例”を。 0. Sheet1のA列に“全ての保管場所コードが重複なく”記入されているものとします (仮にA1:A500まで500箇所あるとします) 以下、Sheet2で。 1. A2:A4セル範囲を選択(A2セルがアクティブな状態) 2. 1の状態で、A2セルに =TRANSPOSE(OFFSET(Sheet1!$A$1,MATCH(A1,Sheet1!$A$1:$A$500,0)-1,1,1,3)) と入力して配列数式として確定(Ctrl+Shift+Enter) (A2:A4セル範囲に同時に式が入り、#N/Aが返るはずです) 3. A2セル(日付欄)の表示形式を適切に設定 4. 必要に応じて罫線を引くなり、背景を塗りつぶすなりする 5. A1:A4セル範囲(以下“図”)を任意のシートの任意の場所に移動、コピーする 6. 5でコピーした“図”の最上欄に保管場所コードを直接記入する 7. “図”を表示するシートについて、 ツールメニュー>オプション>表示タブ>ウィンドウオプション>ゼロ値 のチェックをはずす 8. 入庫処理:Sheet1の該当する行のB,C,D,E列に記入する 出庫処理:Sheet1の該当する行のB,C,D,E列をDeleteする 移動処理:Sheet1の該当する行のB,C,D,E列を選択して、移動先の行までドラッグ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >Dの注意事項の有りだけの一覧シート作成 >無しだけの一覧のシート作成 >出庫日当日、2日前とか適当な日にちを入力すれば一覧を作成 については、 ☆素朴にオートフィルタを使う のが簡便かと思います。 状況によっては ☆フィルタオプションで別シートに吐く ☆クエリを使って別シートから読む ☆数式でフラグ立て&ナンバリングして、LookUpで引く ☆VBAを使う といった方法もあります。
- imogasi
- ベストアンサー率27% (4737/17069)
#2の補足ありがとうございました。 しかし質問には答えてなくて、自分流のの説明を繰り返しているように思える。 >オートシェイプで、長方形を沢山書きました エクセルのセル1つが、1台の駐車スペースですか。 オートシェイプの四角の中には何が表示されていますか。A-E列の データ項目全てですか。 セルの値と連動していますか。セルの値をとってきていますか。 どういう方法で、オートシェイプにセルの値を持ってきましたか。 これらはエクセルで不可能ではないですか。 FillListRangeのようなものはオートシェイプには なかったように思いますが。 >上記の内容を箇条書で表示させました 人手で書き込んだのですか。 =A1のようには、できないはず。 >簡単に情報の書き換え出来ませんか オートシェイプとセルの連動はできないとすれば、できないわけです。 >GG1-1の物をG3-9に簡単に移動出来ませんか G1とG2は同一シートにあるのでしょうか。 コピー以外に、ドラッグするようなイメージですか。 ワークシートに貼り付けるコントロールというのも、デザインモードを脱すると、位置を動かせないものが多い。 エクセルの発想というより、カードをマウスで自由に並べ替えるイメージで、ゲーム的な画面を作るような感覚であるように思う。エクセルではなく、プログラム言語やイベント(ドラッグや右クリックでの抹消など)など、エクセルと離れて一般的なVB(VBAではない)などでも一段高等な技(オブジェクト)を使わないと実現しないでしょう。エクセルを持ち出すようなものではないと思う。 それとG1という表現はGarage-Oneの意味で使われたのでしょうが セル番地G1と紛らわしいです。
- imogasi
- ベストアンサー率27% (4737/17069)
図示したほうがわかりやすいのは判るが、 >保管場所図を作成 >シート3の図 の「図」とはどんなものですか。図形オブジェクト?コントロール? セルを結合しているもの?単一セルの罫線囲み? >貼り付けたもの以外の削除はセルの場合はおかしくなると思うが >Aの保管場所は残します どんな意味? 結局自分の頭で考えたことを、文章で説明し切れてないと思いますが。 またエクセルは、表計算ソフトなので、その辺の限界を大雑把につかんでいないと、エクセルにとって難しい質問を連発することになりますよ。エクセルなんて、人間が考えることのごく一部しか処理できないソフトです。
補足
アドバイス有難う御座います。 確かに難しい説明でした、申し訳有りません では、内容を変更して説明します 大きな時間貸しの駐車場が3個有る事をイメージして頂き(区画線有り) Aの列に駐車位置を表示します。例えば、第一駐車場をG1とします、駐車位置を1番とします 表示はG1-1 Bの列に出庫予定日、Cの列に車種、Dの列にナンバーEの列に洗車の有無、とします 入庫時に上記を入力します ここで問題の図ですが、駐車場の路面に区画線が書いて有りますよね、そのままです オートシェイプで、長方形を沢山書きました この中に上記の内容を箇条書で表示させました 各駐車場ごとにシートを作成して配位置図を書きました ここからが問題です 1点目 G1-1に駐車した車をG2-10に移動しました 簡単に情報の書き換え出来ませんか コピー&ペースト以外で 2点目 G2-10から出庫しました、G2-10の表示を残したまま情報の削除出来ませんか 出庫後、直ぐには入庫しません もう少し問題点が有りますがこの辺で・・・ 大変お手数お掛けしますがアドバイスお願いします エクセルでは無理でしょうか
- asuka546
- ベストアンサー率21% (21/99)
普通にシート1にて保管場所以外を削除やコピーでうまくいかないんですか?(使ってない保管場所は欠番にしておく) 何が問題なのでしょうか? シート2の説明がないためよくわからないのですが、個々まで複雑なデータベースならアクセスを使ったほうが楽に出来ると思いますよ。ちなみにマクロとかVBAとか使わないと最終的にしたいことは出来ないのではないかと思います。
補足
deus_ex_machina様、回答有難う御座います。 参考書を片手に毎日悩んでいました、入庫処理と出庫処理はアドバイスのまま使うとして、移動処理が問題です。保管場所が500箇所有るとして、ドラッグで1から499に移動するとすれば距離が長い様な感じです。 VBAを使い簡単な方法有りますか? 一発で希望のセルに行ければ簡単ですが・・・ 手順がわからず