Preciso criar uma planilha Excel bastante simples (pasta de trabalho). Preciso de 12 folhas (abas), uma para cada mês.
Cada planilha faz referência a células da planilha anterior. Por exemplo, a planilha "Maio" extrai dados da planilha "Abril", a planilha "Junho" extrai dados da planilha "Maio", etc.
Digamos que eu crie a primeira e a segunda planilhas, “Abril” e “Maio”. Se eu copiar “maio” e renomeá-lo como “junho”, todas as fórmulas ainda se referirão a “abril”, como na planilha “maio”. Eu gostaria que eles se referissem automaticamente a "maio".
Como é possível fazer isso?
Responder1
Crie a seguinte macro:
Function SHEET_OFFSET(Offset, Ref)
' Returns cell contents at Ref, in sheet Offset
Application.Volatile
With Application.Caller.Parent
SHEET_OFFSET = .Parent.Sheets(.Index + Offset) _
.Range(Ref.Address).Value
End With
End Function
Então, se você quiser que a planilha de maio acesse a April!Q42
célula, use a fórmula
SHEET_OFFSET(-1, Q42)
O primeiro argumento é o número da planilha, relativo à atual, e o segundo argumento é a referência da célula. Ao copiar esta fórmula para a planilha de junho, ela fará referência automaticamente à planilha de maio.
Fonte: encontrei isso emA página da planilha.