• ベストアンサー

Excelのプルダウンについて

プルダウンに条件を付けたいのですがやり方を教えていただければと思います。 具体的には添付の写真を参照お願いします。 勤務表の中で備考の列にプルダウンリストとして有給・特休・欠勤があります。 プルダウンの条件としては下記になります。 ①有給を選択すると有給を選択した行のC~Iの列が消去 ②欠勤を選択すると有給を選択した行のC~Iの列が消去 ③特休を選択すると特休を選択した行のIの項目が”食事:無”になる このような条件を付けることは可能でしょうか。わかる方、回答をお願いします。 ※マクロはNGです

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率65% (1618/2457)
回答No.4

Excelで別シートにデータを自動反映(連動)させる5つの方法 https://suisui-office.com/excel-refer-another-sheet/ こちらの一番最初の方法が簡単だと思います。 エクセルの使い方はご自身で検索してください。 エクセル やりたいこと で検索です。

poporom_
質問者

お礼

ありがとうございます! 本当に助かりました!

その他の回答 (4)

  • kkkkkm
  • ベストアンサー率65% (1618/2457)
回答No.5

その後 =IF($J1="有給","",L1) L1のところを先の操作でセルに入ったシート名セル番地に置き換えてください。

  • kkkkkm
  • ベストアンサー率65% (1618/2457)
回答No.3

> L1以降の右列にC1〜I1の内容を同様に入力しそれを参照してC1〜I1の文字列を消す事ができるという事でしょうか? 実際にL1に入力してC1に式を入れてやってみたらわかると思いますよ。 それでよければ他のセルも同じようにすればいいだけです。 入力用の別の表は別のシートに作成してもどこでもいいです。

poporom_
質問者

補足

返信ありがとうございます。 別シートの場合、式はどうなりますか? 本当にお手数をおかけしてすみません。

  • kkkkkm
  • ベストアンサー率65% (1618/2457)
回答No.2

> 例えば消去ではなくC1〜L1のセル内が空白にすることは可能でしょうか。 消去も空白にするのもデータを書き替えることですのでできないと思います。 たとえばL1にC1に表示するデータががあるとした場合には C1に =IF($J1="有給","",L1) でできます。 というのは L1に 9:00 と入力していて C1に =IF($J1="有給","",L1) という意味です。 現在の表は表示専用にし、別に入力専用の表を作成してそこからデータを参照する形です。 他の手段として条件付き書式でデータはあるが背景色と文字色を同じにして見えなくすることはできます。 その場合、他で現在の表を参照した時にデータない(見えないので無いと思う)けど結果がでるよぉという事になります。 B1からIのデータがある最終行まで選択した状態で条件付き書式の「数式を利用して・・・」で =$J1="有給" で書式のフォントを「白」 としたら有給のBからIまでは見えなくなります。

poporom_
質問者

補足

返信ありがとうございます。 >たとえばL1にC1に表示するデータががあるとした場合には C1に =IF($J1="有給","",L1) でできます。 というのは L1に 9:00 と入力していて C1に =IF($J1="有給","",L1) という意味です。 →上記の件について入力専用の表との事なのでL1以降の右列にC1〜I1の内容を同様に入力しそれを参照してC1〜I1の文字列を消す事ができるという事でしょうか?すみません理解が乏しくて。。。

  • kkkkkm
  • ベストアンサー率65% (1618/2457)
回答No.1

> ①有給を選択すると有給を選択した行のC~Iの列が消去 データを直接入力しているとしたら関数には既に入っているデータを書き替える機能は無いと思いますのでマクロじゃないと無理だと思います。 たとえばL1にC1に表示するデータががあるとした場合には C1に =IF($J1="有給","",L1) でできます。 > ②欠勤を選択すると有給を選択した行のC~Iの列が消去 有休を選択している時点で列は非表示になっているのですから意味が無いと思います。 > ③特休を選択すると特休を選択した行のIの項目が”食事:無”になる これは関数でできると思います。 =IF($J1="有給","",IF($J1="特休","食事:なし","食事:有"))

poporom_
質問者

補足

回答ありがとうございます。 とても助かります。 消去の件についてです。 例えば消去ではなくC1〜L1のセル内が空白にすることは可能でしょうか。

関連するQ&A

  • プルダウンなどから列をコピーしたい

    画像のような動作は可能でしょうか。 プルダウンリストなどを表示して、その列の内容を表示させることは可能でしょうか? (例えば備考のことろにプルダウンが表示され、75を選択すれば75の列が備考のところに表示される) 各列はROUND関数でE列を参照しています。(例えばI5は=ROUND(E5*0.75,-2)となっています) わかりにくい質問内容で申し訳ありませんが、よろしくお願いします。

  • エクセルのプルダウン機能の件について

    初めて質問します。 3つのセルにそれぞれプルダウンリストを作成し、1つを選択するとほかのセルのプルダウンリストも連動できるようにしたいのですが・・・。 例えば、(1)の列には商品名 (2)の列には商品番号 (3)の列には商品金額が1つの商品の情報が1行3列に入れます。それで(1)のある商品を選べば(2)と(3)の列にそれぞれその商品の商品番号と金額が入るといった感じにしたいのですが・・・。 こういう事が出来るのかどうかすらも分かりません。どなたか教えて頂けますでしょうか。宜しくお願い致します。

  • エクセル:マクロの起動条件

    お世話になります。 以下の条件でのマクロを起動する方法、及びそのマクロを教えてください。 《条件》 ブックを開いた時、あるシートのC列でデータが入っている最下行の行番号とA列のデータが入って最下行の行番号の差が100以下だった場合、マクロを実行する。 (なおC列の行番号の方が必ず大きいです) ちなみに実行したいマクロは1~6の手順です。 1.ブックを開いたとき 2.「入力用」という名前のシートのC列でデータが入っている最下行の行番号とA列のデータが入っている最下行の行番号の差が100以下だった場合 3.「入力用」というシートにかかっているシートの保護をはずし 4.データが入っているC列の最下行のA~Z列を選択して、50行分 下にコピーする。  (例えば、C列の最下行が350行の場合、A350~Z350まで を選択したあと400行まで下にコピーする。) 5.再度シートの保護をかけ 6.A列でデータが入っている最下行の1つ下のセルを選択する ちなみに、2の条件に当てはまらないときはマクロを実行しません。 またC列の最下行よりA列の最下行が大きい数字になることはないはずですが、もし同じかA列の方が大きい場合、「エラー:C列よりA列が大きくなっています」と画面に表示させたい。 なお、行番号の差:100、選択するA~Z行、50行分下にコピー は変わる可能性があるので、修正する場合どの部分を修正すればよいかも教えてください。 よろしくお願いします。

  • (マクロ)プルダウンの選択と抽出について

    31歳の男です。 会社でマクロの作成を依頼されましたが、素人なのでチンプンカンプンです。 分かりづらい説明ですが、下記のようなマクロ文が出来れば ありがたいと思っています。 お知恵を貸してください。 よろしくお願いします。 「概要」 ・条件に「好きな果物」・「どこで手に入れたか」・「どうしたか」を入力すると、  実行結果として、「自分はどう思ったか」・「他人はどう思ったか」を実行結果として  表示させるマクロを作る。 (シート1について)  ・条件を指定して実行結果をマクロで表示させるシート セルD4→任意の果物の名前を入力する(例 メロン) セルD5→任意の果物をどこで手に入れるかプルダウンより選択する(例 冷蔵庫) セルD6→任意の果物をどうするかプルダウンより選択する(例 自分で食べる) 以上が条件指定 以下が実行結果 セルD8→自分はどう思ったか(例 うれしい) セルD9→他人はどう思ったか(例 うらやましい) (シート2について) ・シート1のプルダウンで選択するもの(シート1のセルD4~D6)と実行結果は  全てシート2に記載済みです。 A列→メロン・スイカ・バナナ・リンゴ.etc(=シート1のセルD4に該当)→50種類 B列→冷蔵庫・冷凍庫・棚(=シート1のセルD5に該当)→3種類 C列→自分で食べる・人にあげる・棄てる(=シート1のセルD6に該当)→3種類 D列→うれしい・かなしい・うらやましい(=シート1のセルD8に該当)→3種類 E列→うれしい・かなしい・うらやましい(=シート1のセルD9に該当)→3種類 このように果物毎にデータが1行づつあります。 (メロンの例) メロン・冷蔵庫・自分で食べる・うれしい・うらやましい といった具合にデフォルトで固定されています。 以上です。

  • エクセルでの集計について

    初心者です。 エクセルでの集計について教えてください。 sheet1にプルダウンやフォームで入力し、sheet2へ集計させたいのですがやり方がわかりません。 例えばプルダウンの場合、sheet1のA1で都道府県を選ぶとB1には対応する市町村が選択できるようにします。C1には任意で数字を入力していくとします。それを何行か入力します。はsheet2に、A列には都道府県別、B列にはAに対応する市町村、C列には任意の数字が合計されるようなことをしたいのですが・・・。こんな説明でご理解いただけるか心配ですが、なんとかやさしくお教えください。(フォームでの入力がスマートで格好がよさそう・・・。)マクロ等々もぜひともやさしくお教えください。

  • エクセル アクティブ行の範囲選択

    表題についてお尋ねします。 選択されているセルのある行で、なおかつC列からJ列までのみをマクロでコピーしたいと思っております。 行全体ですと下記で可能だったのですが、列を指定することができません。 Range(ActiveCell, ActiveCell).EntireRow.Copy C・D・E列には全ての列に必ずデータが入ってます。 F・G・H・I・J列には どれか一つの列のみにデータが必ず入っています。 複数行を選択することはなく、つねに一行のみです。 エクセル2003です。よろしくお願いいたします。

  • 上限設定をした場合に条件不一致で0を返さない方法

    昨日 「全ての行のうち、C列にNote_on_cを含んでおり、かつI列が整数の行のみを選択し、それぞれの行のF列の数値を一括で加算/原産する方法はありますか?」 という質問をしたところ =f1+5*(c1="Note_on_c")*(mod(i1,1)=0) という数式を教えて頂きました。 http://okwave.jp/qa/q8214355.html このご解答を踏まえた上で、条件一致の場合の上限を125に設定したいと思い =MIN(125,F1+5)*(C1=" Note_on_c")*(MOD(I1,1)=0)*(I1>0) という数式を入れたところ、条件を満たさない場合にf列の数字がそのまま返らずに、0が返ってきました。 条件一致の場合は、f+5か125の小さい方を、条件不一致の場合は0ではなく、f列の数字をそのまま返させるのはどうすればよいでしょうか? ※マクロではなく数式ですとありがたいです。マクロだと以前の状態に戻せなくなってしまうので。

  • 独立した複数のプルダウンを連動させたい

    エクセルで、1つのプルダウンを選択すると、別のプルダウンを連動させたいのですが、それが複数・独立してある場合です。 例えば、次のようなプルダウンを考えています。 商品     規格1         規格2 テレビ    液晶       40インチ テレビ     プラズマ      50インチ テレビ              60インチ ノートPC    パナソニック     12インチ ノートPC    東芝       13インチ ノートPC    マック       15インチ (うまく並べられず、見にくくてすいません) A列でテレビかノートPCを選択すると、B列とC列でそれぞれのA列で選択した商品に応じて、それぞれの規格の種類をプルダウンから選択できるようにしたいのです。 例えば、ノートPCを選択すれば、 B列では、パナソニックからマックまでのメーカを選択でき、 C列では、12インチから15インチまでのモニターの大きさを選択できるようになります。 つまり、B列・C列は、ともにA列に連動します。 A列とB列の連動だけであれば、名前をつけて、indirect関数を使用する方法がネットでも載っているのですが、 B列とC列がともに同じA列に連動する場合、同じ名前になるためうまく独立して連動させることができません。 どうしたらよろしいでしょうか。 宜しくお願い致します。

  • エクセルのソートの繰り返し作業について

    こんにちは いつもお世話になっています。 エクセルでソートの繰り返し作業のショートカット、あるいはマクロを教えてください。 例えば、同一シート内のデータで、1-10行までを選択してソートします。 最優先される列はNo.1がC列でNo.2がA列です。 この条件のソートを別の複数行で複数回行うので「データ」-「並べ替え」等の手順をカットしたいのです。 2003でのショートカットのCtrl キーを押しながら Y キーを押すことでは対応していないようです。 2007ではクイック アクセス ツールバーの (繰り返し) も対応していないようです。 最初は手作業で、次からは該当行の選択後に同一条件でのソートができるマクロがあればいいのではないかとおもうのです。 2003と2007で使えるものをご紹介いただけると助かります。 よろしくお願いします。

  • エクセルについて教えて下さい。

    エクセルで、列範囲を指定してその範囲指定された部分を 消去するというマクロを組んだとします。 消去される行の中に、TRUE FOULTがありTRUEの時に マクロが実行されるにはどうしたらよいのでしょうか? 又その時論理値の入っている行も削除されるのでしょうか。

専門家に質問してみよう