Notifications
Clear all

[Resolvido] Adicionar +1 em várias celulas

7 Posts
2 Usuários
4 Reactions
498 Visualizações
(@strazer)
Posts: 4
Active Member
Topic starter
 

Boa tarde,

Preciso colocar em minha plan um botão para incrementar +1 em várias células (de uma mesma coluna) simultaneamente, iniciando em 01 e indo até 20, voltando para 01 e reiniciando a contagem.

Pesquisando tentei usar o botão de contagem porem ele permite selecionar apenas uma célula, sendo necessário um botão para cada célula, o que seria maçante para os usuários, é possível fazer isso com algum outro recurso do excel? Obrigado desde já.

 
Postado : 15/06/2023 4:44 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

Experimente:

Sub AddOne()
[W1] = 1: [W1].Copy
[O2:O9].PasteSpecial Operation:=xlPasteSpecialOperationAdd
[W1] = ""
End Sub

Osvaldo

 
Postado : 18/06/2023 10:15 am
Strazer and Eron reacted
(@strazer)
Posts: 4
Active Member
Topic starter
 

@osvaldomp Boa tarde, aparentemente deu certo, estou deduzindo que a parte "[02:09]" são as celulas que serão afetadas, porem aumentando para 02:20 por exemplo, retorna erro em tempo de execução '424'. Além disso, seria possível a contagem reiniciar após chegar em 20?

 
Postado : 20/06/2023 4:41 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

estou deduzindo que a parte "[02:09]" são as celulas que serão afetadas,

Correto.

 

... aumentando para 02:20 por exemplo, retorna erro...

Se o erro persistir ao executar o código abaixo, então por favor disponibilize o seu arquivo Excel (imagens não servem) na forma em que o erro ocorre.

 

Além disso, seria possível a contagem reiniciar após chegar em 20?

Experimente o código abaixo no lugar do anterior.

Sub AddOne()
[W1] = 1: [W1].Copy
[O2:O20].PasteSpecial Operation:=xlPasteSpecialOperationAdd
[O2:O20].Replace 20, 1
End Sub

Osvaldo

 
Postado : 20/06/2023 10:22 pm
Strazer reacted
(@strazer)
Posts: 4
Active Member
Topic starter
 

@osvaldomp Deu certo Osvaldo, muito obrigado , só tive que alterar de "Replace 20, 1" para "Replace 21, 1" e ele bate 20, e então retorna ao 1, antes ia até o 19, ficou excelente, muito obrigado mesmo.

 
Postado : 20/06/2023 10:37 pm
Osvaldomp reacted
(@strazer)
Posts: 4
Active Member
Topic starter
 

@osvaldomp Boa tarde, tentei fazer o botão inverso também, só percebi a necessidade disso agora e seria bem útil, alterei o seu código, porém ele subtrai -1 até certo número, depois vai incrementando casas, 20, 202, 2002, 20002... É possível adequar ele também? Não existe necessidade de chegar em 1 e voltar para 20, porque sempre esse giro será na adição (primeiro código já resolvido) mas ele subtrair entre 20 - 1 sem bugar dessa forma seria interessante, obrigado desde já.

Sub SubOne()
[W1] = 1: [W1].Copy
[O2:O50].PasteSpecial Operation:=xlPasteSpecialOperationSubtract
[O2:O50].Replace 0, 20
End Sub
 
Postado : 21/06/2023 5:42 pm
(@osvaldomp)
Posts: 857
Prominent Member
 

"Não existe necessidade de chegar em 1 e voltar para 20, ... mas ele subtrair entre 20 - 1"

Eu não entendi a sua descrição acima.

Exclua a linha abaixo do código e veja se o resultado é o desejado, se não for, então explique com exatidão e com exemplos o que você quer fazer.

[O2:O50].Replace 0, 20

Osvaldo

 
Postado : 21/06/2023 10:52 pm