Notifications
Clear all

VBA retorna valor e caso não tenha retorna branco

11 Posts
1 Usuários
0 Reactions
4,136 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Bom dia,

Tenho uma planilha com códigos do produto (4000), quero fazer uma rotina que quando o usuário digite o código apareça o valor...sei como fazer por PROCV, porém alguns códigos não tem valor fixo, o usuário deve preencher manual, então não deve aparecer a formula.

A lógica é + ou - assim:
Se existe valor trazer o resultado se não deixar célula em branco, sem fórmula, para o usuário digitar

Sou leiga em Vba,agradeço a atenção de todos
Paula

 
Postado : 25/02/2011 5:39 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Paula, veja se seria isto, coloquei opção de uma mensagem e informação na celula sem Valor, para se digitar o valor, se não quiser este tipo de informação é só desabilitar na rotina.

Qq duvida retorne.

[]s

 
Postado : 25/02/2011 10:52 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

MauroBoa Tarde,

Era isso mesmo que eu precisava, muitoooo bom =)
Não querendo abusar...mas tem um detalhe, o usuário muitas vezes cópia os códigos (varios de uma só vez)
e cola na planilha, e quando isso ocorre da um erro "Insira um VALOR valido para planilha"
Tem como fazer esse ajuste?

Testei a macro em uma coluna que tem lista suspensa e não funcionou tbm!

Desde já muitoo obrigada!
Paula

 
Postado : 25/02/2011 12:36 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro, com a lista supensa deu certo!!!
um dúvida, meus códigos são concatenados com o nome do produto...
e por isso está dando erro, acredito que a macro seja só para números e não strings certo?

 
Postado : 25/02/2011 12:52 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Paula, ainda não deu tempo para refazer adaptando com a opção de copiar e colar varios codigos de uma vez, para isto teremos de transformar a rotina em uma sub separada e fazer uma outra para o evento da planilha que chamaria a nova rotina.
Assim que possivel faço a daptação, e aproveito para pedir para postar um exemplo reduzido com dados ficticios de seu modelo para já poder analizar junto com a questão da concatenação dos dados.

[]s

 
Postado : 27/02/2011 8:28 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro, bom dia

Consegui fazer com os códigos concatenados...agora só ficou a questão de colar varios códigos ao mesmo tempo.

Obs.:Não sei o que ocorre, mas quando colo a macro na minha planilha ela não funciona..na sua planilha funcionou certinho...
vc sabe o que pode estar ocorrendo?

muito obrigada!

 
Postado : 28/02/2011 6:45 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Paula, bom dia.

É um pouco complicado dar uma resposta certeira sem ver o seu aplicativo, mas o que geralmente ocorre em adaptações ou uso de uma rotina que está em um arquivo e copiado para outro, diz respeito ao acerto das referências e colocação no local correto.
Por exemplo, na rotina que passei, os valores são buscados na :
Worksheets("DADOS") - Verifique se tem esta aba com este nome.

A rotina tem de estar colocada em :
Private Sub Worksheet_Change(ByVal Target As Range) - da aba que ira digitar os Códigos e´o código só retornará corretamente se algo for digitado na Coluna 1(A) - (Target.Column = 1).

Verifique se está tudo correto, se não poste o modelo que está adaptando.

abraços

 
Postado : 28/02/2011 7:37 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro,
Mais uma vez muito obrigada, estava colando a rotina no local errado, agora deu certo =)
Fico no aguardo, com a opção de copiar e colar varios codigos de uma vez.

oBrigadaaaa!

 
Postado : 28/02/2011 8:36 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Paula, desculpe a demora, mas final e Inicio de mes é meio complicado, vários fechamentos, relatorios e afins, mas segue um novo exemplo aonde implementei alem da opção de Copiar e Colar varios códigos de uma só vez, tambem a condição se Deletar o Código.

Faça os teste, e qq duvida retorne.

abraços

 
Postado : 05/03/2011 9:44 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Paula, desculpe a demora, mas final e Inicio de mes é meio complicado, vários fechamentos, relatorios e afins, mas segue um novo exemplo aonde implementei alem da opção de Copiar e Colar varios códigos de uma só vez, tambem a condição se Deletar o Código.
Faça os teste, e qq duvida retorne.

Paula, como não foi possível editar minha mensagem anterior para trocar o arquivo, anexei outro, a diferença entre o anterior e este, é que no primeiro está com o Intervalo (Ranges) definido :
If Not Intersect(Selection, Range("A1:A200")) Is Nothing Then,
e no Segundo deixei Fixo a Coluna :
If Not Intersect(Selection, Columns(1)) Is Nothing Then

abraços

 
Postado : 05/03/2011 10:04 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro,
Nem sei como agradecer...ficou ótimo

obrigadaaaaaaaaaa!

 
Postado : 09/03/2011 6:01 am