Você não pode fazer isso sem uma macro. Este código deve funcionar:
Private Sub Worksheet_Change(ByVal Target As Range)
therow = 1
thecolumn = 1
Dim wks As Worksheet
cellrow = Target.Row
cellcolumn = Target.Column
If (cellrow = therow And cellcolumn = thecolumn) Then
Set wks = ThisWorkbook.Worksheets("Sheet2")
wks.Cells(cellrow, cellcolumn) = Target.Value
End If
End Sub
Abra macros com ALT + F11 , clique duas vezes em Folha1 no lado esquerdo e cole o código no lado direito. Esse código é executado em Sheet 1 , então copia as alterações em Sheet1 A1 para Sheet2 A1 .
Toda vez que há uma alteração na planilha, essa macro é executada. Ele verifica se a célula alterada está na linha 1 e na coluna 1 (célula A1) e copia o valor na mesma célula em Folha2 .
Se você quiser verificar as alterações de Folha2 para Folha1 também, então:
- Clique duas vezes em Folha2 no lado esquerdo.
- Cole o código no lado direito.
- Altere a linha
Set wks = ThisWorkbook.Worksheets("Sheet2") para indicar o novo destino: Set wks = ThisWorkbook.Worksheets("Sheet1") .
Neste momento, esta macro usa as variáveis therow e a coluna para tomar a decisão de copiar o valor para a outra planilha. No início, eles são definidos como 1 nas linhas therow=1 e thecolumn=1 , o que significa que estamos interessados na célula A1 . Além disso, verificamos se a célula modificada corresponde a esses valores na linha If (cellrow = therow And cellcolumn = thecolumn) Then .
Você pode modificar os valores para personalizá-lo de acordo com suas necessidades, mesmo verificando uma coluna ou linha completa, por exemplo:
A alteração da linha de verificação para If (cellcolumn = thecolumn) Then copia as alterações que ocorrem na coluna que têm o mesmo valor que a variável thecolumn , independentemente da linha.
Outro exemplo:
A alteração da linha de verificação para If (cellcolumn > thecolumn) Then copiará as alterações que ocorrerem em qualquer coluna maior que o valor de thecolumn , independentemente de qual linha seja.