Aqui está uma implementação do código u1016274 :
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Range("B:B"), Target) Is Nothing Then Exit Sub
v = Target.Value
addy = Target.Address(0, 0)
Application.EnableEvents = False
For Each r In Intersect(Range("B:B"), ActiveSheet.UsedRange)
If r.Address(0, 0) <> addy And r.Value >= v Then
r.Value = r.Value + 1
End If
Next r
Application.EnableEvents = True
End Sub
Então, se começarmos com:
eadicionadoRagingBullcomonúmero3,teríamos:
Porserumcódigodeplanilha,émuitofácildeinstalareusarautomaticamente:
- cliquecomobotãodireitodomousenonomedaguiapróximoàparteinferiordajaneladoExcel
- selecioneExibircódigo-issoabreumajaneladoVBE
- coleomaterialefecheajaneladoVBE
Sevocêtiveralgumadúvida,tenteprimeiroemumaplanilhadeteste.
Sevocêsalvarapastadetrabalho,amacroserásalvacomela.SevocêestiverusandoumaversãodoExcelposteriora2003,deverásalvaroarquivocomo.xlsmemvezde.xlsx
Pararemoveramacro:
- abrirasjanelasdoVBEcomoacima
- limpeocódigo
- fecheajaneladoVBE
Parasabermaissobremacrosemgeral,consulte:
e
Para saber mais sobre macros de eventos (código da planilha), consulte:
As macros devem estar ativadas para que isso funcione!