![Edite células referenciadas na planilha mestre da planilha derivada no Excel](https://rvso.com/image/1313340/Edite%20c%C3%A9lulas%20referenciadas%20na%20planilha%20mestre%20da%20planilha%20derivada%20no%20Excel.png)
Estou usando o Excel 2010 e tenho duas planilhas. A planilha A possui uma coluna de identificador exclusivo e outras colunas com valores. A planilha B tem uma lista de identificadores e outros campos para os quais estou usando uma VLOOKUP
fórmula para preencher a partir dos valores da planilha A.
Idealmente, eu gostaria de editar os valores existentes na Folha B e atualizá-los na Folha A, mas isso não parece possível - quando tento, apenas sobrescrevo minha =VLOOKUP
fórmula com dados brutos. Estou certo de que não há como fazer isso?
Alternativamente, existe um truque para clicar ou de alguma forma pular automaticamente da célula que contém a VLOOKUP
fórmula na Planilha B para a célula original na Planilha A?
Meu objetivo geral é manter todos os valores brutos na Folha A e referenciá-los apenas na Folha B, sem ter que pesquisar manualmente na Folha A para atualizar os dados.
Responder1
Para implementar sua solicitação alternativa, você pode usar a HYPERLINK
função em conjunto comVLOOKUP
Supondo que Sheet A
contenha IDs na coluna A e valores na coluna B, substitua VLOOKUP
por
=HYPERLINK("#'Sheet A'!B"&MATCH(A2,'Sheet A'!$A:$A,0),VLOOKUP(A2,'Sheet A'!$A:$B,2,0))
Isso não apenas exibirá o VLOOKUP
resultado como antes, mas também criará um hiperlink para o valor encontrado na Planilha A quando a célula for clicada.
Responder2
O principal problema que você enfrenta agora é a referência circular.
VLOOKUP não é um A = B
relacionamento, mas sim um if A then B
relacionamento (onde A e B são matrizes de valores, como no seu caso). Em outras palavras, é direcional e A não depende de B. Pelo que vejo, não acho que o Excel tenha uma maneira direta de lidar com uma referência circular usando apenas a interface do usuário, pois a fórmula não pode ser armazenada no back-end (a menos que você use uma macro).
Uma forma é ter valores relativos em A e B e uma terceira folha (ou muitas colunas extra) para fazer algumas células condicionais, por exemplo a Folha A contém um valor relativo (que poderá ser um novo valor actualizado em B ou um valor original em C ), a Folha C contém os valores originais e a Folha B contém células para refletir valores E atualizar valores.
Na Folha B, crie uma nova coluna para cada coluna referenciada. Esta será a coluna de valores de atualização. Na Folha C, armazene seus valores originais. Na Folha A, use uma condicional que diz "se o campo de valores de atualização na Folha B tiver um valor, use-o, caso contrário, consulte a Folha C". A coluna de valores refletidos da Folha B ainda fará referência à Folha A, portanto será alterada dinamicamente se a coluna de atualização tiver novos valores. Observe que isso não está realmente resolvendo o problema da referência circular, mas apenas contornando-o.
No entanto, se você precisar que a Folha A tenha valores fixos e não valores relativos, você terá que copiar e paste as value
/ou usar algo como:
ActiveSheet.Range("A1:D1000").Value = ActiveSheet.Range("A1:D1000").Value
em VB para converter valores relativos (com fórmulas) em valores fixos.