Notifications
Clear all

Erro de execução

4 Posts
3 Usuários
0 Reactions
834 Visualizações
(@alexandroferreira)
Posts: 11
Active Member
Topic starter
 

Pessoal,

Quando eu seleciono o cliente (B6 e B7) e digito os valores da quantidade do boi (C6 e C7) e depois tento excluir os valores digitados na quantidade do boi selecionando as duas células ao mesmo tempo e deletando dá uma mensagem de erro:

Erro em tempo de execução '13":

Tipos incompatíveis

Que erro é esse?

Segue planilha.

 
Postado : 26/09/2012 11:35 am
(@lovera)
Posts: 90
Estimable Member
 

Meu amiguinho.

Acontece que as informações que estão nas colunas D, E, F, H, J, L são informações que tem funções vinculadas as listbox das colunas B.
Acontece que na planilha ela está associada a um evento change na coluna C. Então toda vez que vc digita um valor na coluna C automaticamente roda uma macro que depende diretamente das informações digitadas junto dessas colunas D, E, F,H, J e L.
Acontece que se vc apagar as informações dessas colunas a macro falha. Então aparece essa mensagem q vc citou.

Eu coloquei um tratamento de erro, chamado On Error Resume Next.
Mas confesso que nessa situação essa jogada vai se voltar com vc. Vc vai conseguir apagar as informações da linha toda. SO QUE VC VAI PERDER AS INFORMAÇÕES DESSAS COLUNAS", que parece ser vital para o seu controle. Mas se não for dai num tem problema, so que tambem não vai mais efetuar aqueles calculos automaticos.

Enfim vc q sabe. Caso seja necessário essas informações explique o que vc quer fazer. O q vc quer apagar e por ai vai.

Segue o teu arquivo com o tratamento de erro.
Como fiz o q vc pediu me dá um joinha!

Falou Pardalzinho!

 
Postado : 26/09/2012 6:47 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Tente..

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Target.Select
Application.ScreenUpdating = False
If Not Intersect(Target, Range("C6:C20")) Is Nothing Then
For Each rng In Intersect(Target, Range("C6:C20"))
    Cells(rng.Row, "G") = rng.Value * 2
    Cells(rng.Row, "I") = rng.Value * 2
    Cells(rng.Row, "k") = rng.Value * 2
Next
End If
Application.ScreenUpdating = True
End Sub
 
Postado : 26/09/2012 6:51 pm
(@alexandroferreira)
Posts: 11
Active Member
Topic starter
 

[RESOLVIDO]

 
Postado : 21/10/2012 7:50 am