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.
  • Avatar do usuário
#53
Bom dia Professor tudo bem?
Estou fazendo um projeto em VBA, estou tendo problemas com essa parte final do arquivo.
Coloquei uma Msgbox para informar se o usuário quer que seja gerado um novo arquivo, caso ele aperte YES o arquivo é gerado normalmente, caso ele aperte NO deveria gravar o arquivo e sair da planilha, mas eu aperto NO e ele também gera uma nova planilha é como se ele não entendesse o que é sim e o que é não.
Pode verificar o que estou fazendo de errado?
Desde já agradeço muito obrigado a todos!!!!! :D :D
Está é a macro que criei.

Sub Novo_Ajuste()
'
' Novo_Ajuste Macro
' Gerar novo arquivo de ajuste
'

' Sub msg 1
Dim resposta As VbMsgBoxResult
MsgBox "Deseja gerar um novo arquivo AJUSTE?", vbQuestion + vbYesNo, "Novo arquivo"
If resposta = vbNo Then Application.Quit
Sheets("Impressão_Ajuste").Select
ActiveWindow.SelectedSheets.Delete
Range("O15").Select
Range(Selection, Selection.End(xlDown)).Select
Range("O15:O71").Select
Selection.ClearContents
Range("I15:J15").Select
Range(Selection, Selection.End(xlDown)).Select
Range("I15:J71").Select
Selection.ClearContents
Range("C15:E15").Select
Range(Selection, Selection.End(xlDown)).Select
Range("C15:E71").Select
Selection.ClearContents
Sheets("Corte").Select
Range("C7:F7").Select
Range(Selection, Selection.End(xlDown)).Select
Range("C7:F63").Select
Selection.ClearContents
Sheets("Apuração").Select
Range("C9:E9").Select
Range(Selection, Selection.End(xlDown)).Select
Range("C9:E65").Select
Selection.ClearContents
Range("G9:I9").Select
Range(Selection, Selection.End(xlDown)).Select
Range("G9:I65").Select
Selection.ClearContents
Range("L2").Select
ActiveCell.FormulaR1C1 = ""
Range("M2").Select
ActiveCell.FormulaR1C1 = ""
Range("N2").Select
ActiveCell.FormulaR1C1 = ""
Range("G7:I7").Select
ActiveCell.FormulaR1C1 = ""
Range("D7:E7").Select
ActiveCell.FormulaR1C1 = ""
Range("L9:L12").Select
Selection.ClearContents
Sheets("Plano").Select
ActiveWindow.SmallScroll Down:=-57
Cells.Select
Selection.Delete Shift:=xlUp
Sheets("Estoque").Select
ActiveWindow.SmallScroll Down:=-18
Cells.Select
Selection.Delete Shift:=xlUp
Range("D16").Select
Sheets("Apuração").Select
Range("L2").Select
MsgBox "Novo arquivo AJUSTE gerado com sucesso", vbInformation, " Novo Arquivo"
End Sub
#55
Olá Carlos, faltou você atribuir o resultado da MsgBox a variável resposta.
Código: Selecionar todos
resposta = MsgBox("Deseja gerar um novo arquivo AJUSTE?", vbQuestion + vbYesNo, "Novo arquivo")
Ps. O título do seu tópico foi alterado para ficar mais coerente com a pergunta e facilitar ser encontrado numa possível busca posterior
#57
Professor!!!
No caso eu só adicionei a resposta para NO, devo adicionar uma para YES?

' Sub msg 1
Dim resposta As VbMsgBoxResult
MsgBox "Deseja gerar um novo arquivo AJUSTE?", vbQuestion + vbYesNo, "Novo arquivo"
If resposta = vbNo Then Application.Quit
#58
Você pode adicionar um else.... Vai depender do q vc quer fazer... Um exemplo
Código: Selecionar todos
resposta = msgbox(.....) 
If resposta = vbYes then 
  ... Comandos caso seja vbYes ... 
Else 
 ... Comandos caso seja vbNo ...
end if
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