我有一個帶有輸入列的表,並設定了兩個帶有允許輸入值的表。正確的表格取決於每行末尾單元格中的值。為了確定允許哪個表,我設定了一個資料驗證公式(如=if cellatendof row>0, table1, table2
)。我嘗試將資料驗證向下拖曳,但它不會在必須檢查的儲存格上使用相對參考。因此,我手動進入列中的每個單元格並更新資料驗證公式以檢查該特定行的單元格(例如=if cellatendofrow1>0... then next =if cellatendofrow2>0
...)。
這是可行的,但它不允許任何人在不關閉資料驗證公式的情況下新增或刪除行,甚至對資料進行排序。它不是指向單元格的新位置,而是指向硬編碼的原始行。因此,如果新增一行,現在第 1 行已移至第 2 行,但公式仍會查看 ,cellatendofrow1
因為它是這樣硬編碼的,所有其餘行也是如此,結果可能會無效。
有沒有辦法使引用相對而不是靜態並與行的其餘部分一起移動?
抱歉,我不懂 VB - 但可以嘗試是否可以解決這個問題!
答案1
如果表標誌是ColumnC
(總是!),那麼如下所示的公式似乎有效(使用命名範圍):