- 締切済み
業務分担表について作成について
エクセルで縦枠に(時間30分ごと)、横軸に(各ポジションのとスタッフ名)を配列し、 それぞれのポジションによって、ある程度業務内容が決まっているので 例えば、ポジション枠にA、Bなどを入れると、Aの場合、前もって決められた時間別の業務内容が瞬時に出るようにしたいのですが可能でしょうか、今は、自作でリスト機能を使ってやっているのですが可能でしょうか?よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- keithin
- ベストアンサー率66% (5278/7941)
どんなエクセルを作成しているのか何も情報が無いので、とりあえずまっさらのエクセルを用意して添付図の通りに作成します。 基本構成: シート1に時間別業務分担の記入表を用意 1行目にスタッフ名 2行目にポジション A列に時刻 シート2にポジションごとに記入させたい内容を、シート1と「同じレイアウトで」用意 手順: シート1を開き、シート名タブを右クリックしてコードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub Worksheet_Change(byval Target as excel.range) dim h as range dim c as long application.enableevents = false on error resume next for each h in application.intersect(target, range("2:2")) c = application.match(h, worksheets("Sheet2").range("2:2"), 0) worksheets("Sheet2").columns(c).copy columns(h.column).pastespecial skipblanks:=true h.select next application.enableevents = true end sub ファイルメニューから終了してエクセルに戻る 2行目にポジションを記入すると、転記する 他のセルに適宜記入する。 添付図のサンプルの通りに動くように作成出来たら、改めてあなたの本番シートに自力で応用して作成してください。 #補足 通常は関数とか使って表示させたいとこですが、標準業務内容以外の内容を各セルに記入する邪魔になるので、ご相談の用途では使えません。 「何もないセル」に「何かを表示させる」には、たとえば回答のようにマクロを使って記入させるしか、方法はありません。
お礼
さっそく返答くださりありがとうございました。 一度、やってみます。