Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
#61364
Pessoal, bom dia!

Estou Elaborando uma planilha/programa e me deparei com uma situação que não consegui resolver.
Preciso criar uma macro que ao clicar em um botão (desativar conta) o Excel deverá pedir ao usuário que selecione uma forma - que está preenchida com o número de uma conta e hiperlinkada para uma aba - então ele mudará o estilo da forma para o msoShapeStylePreset31 e mudará também o texto dela para tachado. Indicando que a conta foi encerrada.

Sei que é possível fazer usando gravar macro, mas como tenho várias formas na mesma planilha, a seleção da conta a ser desativada deve ser feita pelo usuário não sei como fazer a opção de selecionar.
#61365
dgomedeiros escreveu: 08 Jan 2021 às 11:13 ... ao clicar em um botão ... o Excel deverá pedir ao usuário que selecione uma forma - ... então ele mudará o estilo da forma
Eu sugiro outra sequência: o usuário seleciona a Forma e roda a macro que irá formatá-la. ;)

Sei que é possível fazer usando gravar macro,...a seleção ... deve ser feita pelo usuário
Sugestão: grave uma macro e depois de testá-la coloque aqui o código gravado para os convenientes ajustes.
dgomedeiros agradeceu por isso
#61367
osvaldomp escreveu: 08 Jan 2021 às 13:14
dgomedeiros escreveu: 08 Jan 2021 às 11:13 ... ao clicar em um botão ... o Excel deverá pedir ao usuário que selecione uma forma - ... então ele mudará o estilo da forma
Eu sugiro outra sequência: o usuário seleciona a Forma e roda a macro que irá formatá-la. ;)

Sei que é possível fazer usando gravar macro,...a seleção ... deve ser feita pelo usuário
Sugestão: grave uma macro e depois de testá-la coloque aqui o código gravado para os convenientes ajustes.

A macro que criei foi essa aqui. Só preciso que agora permita fazer a seleção da forma que precisa ser formatada.

Sub DesativarConta()
'
' DesativarConta Macro
' Desativa uma conta mudando a cor da forma e colocando o texto como tachado.
'

'
ActiveSheet.Shapes.Range(Array("Round Single Corner Rectangle 3")).Select
Selection.ShapeRange.ShapeStyle = msoShapeStylePreset31
With Selection.ShapeRange.TextFrame2.TextRange.Font
.BaselineOffset = 0
.Strike = msoSingleStrike
End With
End Sub
#61372
Esta macro fez aproximadamente o que eu precisava. Então deixo aqui para a prosperidade.


Sub DesativarConta()

Dim objname

On Error GoTo CheckErrors
If ActiveWindow.Selection.ShapeRange.Count = 0 Then
MsgBox ("Você precisa selecionar uma forma em primeiro lugar")
Exit Sub
End If
objname = ActiveWindow.Selection.ShapeRange(1).Name
objname = InputBox("Insira a data da desativação", "Renomear Shape", objname)
If objname <> "" Then
ActiveWindow.Selection.ShapeRange(1).Name = objname
Selection.ShapeRange.ShapeStyle = msoShapeStylePreset31
With Selection.ShapeRange.TextFrame2.TextRange.Font
.BaselineOffset = 0
.Strike = msoSingleStrike
End With

End If

Exit Sub

CheckErrors:
MsgBox ("Selecione a conta a ser desativada clicando com o botão direito. Então clique em DESATIVAR CONTA")

End Sub
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord