Excel内に2つのセル内データ検証リストがあります。両方のセルには、テーブルの2つの列を指すドロップダウン矢印があります。私が望むのは、1つのセルに値が入っていて、もう1つのセルにテーブルの対応する行の値が入っていて、それ自身の列がで、逆の場合がです。私はcell1
のドロップダウンから値を選択した場合 はだから、私はcell2
のドロップダウンから値を選択する場合には、列cl
とd
持つテーブルGoalTbl
ためcell1
リンク2のセル内データ検証リスト
すなわちを上書きし、cell2
上書き。 cl_val
というセルには、GoalTbl[cl]
を指すデータ検証リストが含まれています。 GoalTbl[d]
そしてそうにd_val
ポイントと呼ばれる別のセルは、d_val
私はd_val
に基づいてcl_val
の値を取得するために=INDEX(GoalTbl[d],MATCH(cl_val,GoalTbl[cl],0))
同様
のような式を使用cl_val
に基づいて=INDEX(GoalTbl[cl],MATCH(d_val,GoalTbl[d],0))
を取得するために、私はできません
- それぞれのセルに次の2つの理由を入れます。私は値を選択するには、ドロップダウン矢印を使用した場合の式は、他の細胞を意味する、私は
- 循環参照になるだろう、それは
そのセルに数式を上書きだから私はでこのリンク機能を得ることができますデータ検証が指し示すリストを変更するか、またはVBAアプローチで変更しますか? これは、バリデーションのための動的デフォルトの式と、他の2つの領域に基づく1つのセルの上書きメカニズムの組み合わせであると思います。私は式と同時にどのように取り組むべきかわかりません。
私はこれを数式と検証で行うことはできないと思いますが、間違いなくVBAでこれを行うことができます。 Worksheet_Changeイベントを使用し、ユーザーが2つのセルのいずれかを変更したときにトリガーし、もう一方のセルまたは値自体を入力します。エラーアラートをオフにすると、ドロップダウンリスト以外の値を入力することができます(例:式。しかし、これもまた、ユーザーがこれらのセルに何かを置くことを可能にします。興味深い問題。 – vacip