Não digite a função Indireta () diretamente na caixa de validação de dados, contorne usando um intervalo nomeado que tenha a função indireta como referência. Isso deve resolver o problema.
Estou com um erro bizarro no Excel que espero que alguém possa me ajudar.
Eu tenho uma pasta de trabalho habilitada para macro criada no Excel 2010. Na pasta de trabalho, há uma série de botões de opção. Quando um botão de opção é selecionado, uso o valor selecionado para preencher uma lista de validação de dados em outra parte da planilha. Por exemplo, seleciono o botão de opção "Divisão 1" e preenche uma lista de regiões específicas da Divisão 1 e assim por diante.
Cada conjunto de regiões tem um intervalo nomeado. A lista de validação de dados usa a fórmula INDIRECT para substituir um nome de intervalo de acordo com o botão de opção selecionado.
Isso funciona bem no Excel 2010. No entanto, quando eu executo o mesmo arquivo no Excel 2007, não obtenho a lista suspensa na célula de validação. Eu segui todas as etapas de solução de problemas descritas no blog Contextures sobre listas suspensas em listas de validação, mas nenhuma delas resolveu o problema.
Alguma idéia do que pode estar acontecendo?
Não digite a função Indireta () diretamente na caixa de validação de dados, contorne usando um intervalo nomeado que tenha a função indireta como referência. Isso deve resolver o problema.
mtone - obrigado pela resposta. Parte do meu problema foi que eu não sabia que haveria uma diferença na forma como o Excel tratou a validação de dados em 2007 vs. 2010. Eu pensei que as verificações de compatibilidade teriam captado isso. Aparentemente não.
O problema é que eu estava usando uma referência INDIRECT a uma célula que não estava na mesma planilha que a lista suspensa de validação de dados. Aparentemente, no Excel 2010, você pode fazer isso. No Excel 2007, isso não é permitido e a lista suspensa de validação de dados é redefinida. Muito irritante e frustrante depurar quando você não está usando o Excel 2007.