Forum Pplware
[Duvida] - Excel - Versão de Impressão

+- Forum Pplware (http://forum.pplware.com)
+-- Fórum: Software (/forumdisplay.php?fid=4)
+--- Fórum: Aplicações (/forumdisplay.php?fid=12)
+--- Tópico: [Duvida] - Excel (/showthread.php?tid=17356)



[Duvida] - Excel - Gr33n C0d3r - 22-10-2013 15:57

Estou a trabalhar com uma folha de Excel. A minha dúvida é a seguinte: tenho algumas listas pendentes e precisava que o valor devolvido fosse numérico.
No exemplo da imagem, queria que quando seleciono 'solteiro' devolva '1', 'casado' devolva '2', etc.

Obrigado

http://img571.imageshack.us/img571/3514/tcdv.jpg
[Imagem: tcdv.jpg]


RE: [Duvida] - Excel - diegosmaia - 22-10-2013 16:31

Tenta a formula abaixo:

=SE(E3="Casado";2;SE(E3="Solteiro";1;"N.D"))

Se for Casado =1 caso contrário verifica se é Solteiro =2 e se não for nenhum dos dois N.D. O N.D vai facilitar a verificação por meio de um filtro onde for preenchido errado.

ou

=SE(E3="Casado";2;SE(E3="Solteiro";1;SE(E3="Separado";3;"N.D")))


RE: [Duvida] - Excel - Gr33n C0d3r - 23-10-2013 19:51

Diegosmaia

Essa solução já havia experimentado, e só funciona se a aplicar numa outra célula que não aquela onde está a lista pendente. E era nesta que eu queria que surgisse o 'valor' devolvido.
Obrigado na mesma...


RE: [Duvida] - Excel - nioxys - 24-10-2013 10:19

Olá Smile

Criei uma função em VBA que penso fazer o que pretendes.

Neste exemplo fiz para o intervalo C1:C20 e apenas para "Casado" e "Solteiro"

Citar:Public Function MudaValor() As String

For Contador = 1 To 20
Set curcell = Worksheets("Folha1").Cells(Contador, 3)

Select Case curcell

Case "Casado"

curcell.Value = 1

Case "Solteiro"

curcell.Value = 2

End Select

Next Contador

End Function

Chamas a função no procedimento Worksheet_SelectionChange da folha onde tens as listas pendentes,

Citar:Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call MudaValor
End Sub

Coloquei as listas da célula C1 a C20, sempre que seleccionas Casado ou Solteiro a célula quando perde o foco altera para 1 ou 2 consoante a tua escolha.

Podes fazer download do exemplo que criei,

Pplware_LPMudaValor_v1

Alguma dúvida é só dizer. Wink


EDIT:
O ficheiro que tinha colocado para download não tinha o código VBA, agora está completo. Smile


RE: [Duvida] - Excel - Gr33n C0d3r - 28-10-2013 22:18

@nioxys

Era isso que queria...
Mas sou muito noob no Excel (mais em VBA do que excel propriamente...) e não consegui adaptar à minha folha de Excel... Existe algum tutorial para noobs como eu ( em texto ou no youtube, por exemplo) para o poder adaptar à minha folha de Excel e para várias listas pendentes?

Obrigado desde já pelo trabalho e pela ajuda.


RE: [Duvida] - Excel - nioxys - 29-10-2013 08:06

É possível, por exemplo, percorrer várias linhas e colunas e fazer as substituições. Mas para isso tens de dizer como está organizado o teu ficheiro e o que queres substituir.

Coloca aqui as tuas dúvidas ou o teu ficheiro.
Quantas listas pendentes tens? Estão todas na mesma folha? Etc...


RE: [Duvida] - Excel - paulo g. - 12-11-2013 12:53

Acho que podes fazer de forma mais simples: https://www.youtube.com/user/libreofficeporpaulog/videos usando a função ProcV. Como vês não precisas de usar um programa tão caro para fazer o mesmo.


RE: [Duvida] - Excel - nioxys - 13-11-2013 16:51

(12-11-2013 12:53)paulo g. Escreveu:  Acho que podes fazer de forma mais simples: https://www.youtube.com/user/libreofficeporpaulog/videos usando a função ProcV. Como vês não precisas de usar um programa tão caro para fazer o mesmo.

Coloca aqui um exemplo para este caso em concreto.