PROBLEMAS COM BOTOES DO INPUTBOX

PABLOMOREIRAGV 13/08/2010 15:38:54
#350181
E aí gente! Estou com uma problema com os botões do inputbox. Tenho um inputbox que tem a seguinte função. Fiz uma macro que cria a cópia da guia atual da planilha e antes de copiar aparece uma inputbox para nomear a guia que vai ser criada e clico em ok e pronto aparece a guia já renomeada ao lado. Só que, se eu desistir da ação e clicar no botão cancelar ou fechar a ação é realizada do mesmo jeito. O que faço pra resolver este problema? Me ajudem galera..rs..rs....Obrigado.
JAMESBOND007 13/08/2010 15:45:32
#350183
poste o codigo
PABLOMOREIRAGV 13/08/2010 16:04:45
#350187
Segue código:

[ô]Pede para o usuário dar um nome à nova planilha, ou melhor, à [Ô]planilha-cópia[Ô] !!!
NomePlan$ = InputBox([Ô]Digite o nome do destinatário e data de envio: Ex: Pablo DD-MM-AA[Ô], [Ô]Nome do Recibo[Ô], ActiveSheet.Name)
[ô]Coloca o nome digitado pelo usuário na planilha
If Len(NomePlan$) <> 0 Then ActiveSheet.Name = NomePlan$
MSMJUDAS 13/08/2010 16:39:15
#350196
Coloque um EXIT SUB ou EXIT FUNCTION, dependendo de como vc chama esse procedimento:

[ô]Pede para o usuário dar um nome à nova planilha, ou melhor, à [Ô]planilha-cópia[Ô] !!!
NomePlan$ = InputBox([Ô]Digite o nome do destinatário e data de envio: Ex: Pablo DD-MM-AA[Ô], [Ô]Nome do Recibo[Ô], ActiveSheet.Name)
[ô]Coloca o nome digitado pelo usuário na planilha
If Len(NomePlan$) <> 0 Then
ActiveSheet.Name = NomePlan$
Else
Exit Sub ou Exit Function
End IF

SACOFRITO 13/08/2010 16:49:02
#350197
if nomedainput = [Ô][Ô] then
msgbox [Ô]Operaçao cancelada[Ô]: exit sub
end if
PABLOMOREIRAGV 13/08/2010 17:03:41
#350202
SACOFRITO, blz!

O seu código realmente cancela a ação, mas quando clico em ok aparece a mesma mensagem de operação cancelada e não realiza a ação.
SACOFRITO 13/08/2010 17:44:01
#350207
Resposta escolhida
Ué, mas seu código nao serve para renomear, se serve pra renomear entao ao clicar ok deve ter algum valor dentro da inputbox, se nao tiver, a execuçao irá parar mesmo
Aí voce pode fazer tratamentos pro tipo de dado que tiver dentro
Exemplo

cima:
nomedainput = inputbox[Ô]digite um numero[Ô]
If not isnumeric(nomedainput) then
msgbox [Ô]isso nao eh valor numerico[Ô] goto cima
end if

De outro jeito eu sinceramente nao sei como fazer, talvez algum tratamento com a msm estrutura do exemplo sirva para isso
PABLOMOREIRAGV 16/08/2010 08:05:00
#350335
Ok SACOFRITO, deu certo aqui, muito obrigado pela força cara. Um abraço.
Tópico encerrado , respostas não são mais permitidas