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
Por eloirfabio
Posts
#43366
Olá.
Estou desenvolvendo uma planilha de custos para a empresa onde trabalho, e gostaria de agilizar o trabalho o máximo possível.
A planilha funciona da seguinte maneira: A pessoa clica no salário e ao clicar no botão "Copiar salário para custos" o macro copia o valor da seleção e pula 2 células à esquerda, copiando também o nome do cargo, depois cola os calores na planilha I - CUSTOS. Com os dados da coluna C a fórmula funciona que é uma beleza. Porém, quando vou copiar os dados da coluna B a fórmula não funciona, já que ela precisa pular 2 células à esquerda para copiar o cargo. Tentei utilizar o comando On Error Resume Next, pra ele ir ao próximo comando e pular somente 1 célula à esquerda quando der erro, mas não obtive sucesso.
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por mucascosta
Posts Avatar
#43493
Veja se lhe ajuda:
Elimina o botão,
A macro é executada ao acessas as colunas B e C

Na aba II – CARGOS E SAL.
Código: Selecionar todos
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 3 Then
    Call COPIAR
    Call COPIARCARGO1
    ElseIf Target.Column = 2 Then
    Call COPIAR
    Call COPIARCARGO2
    End If
End Sub
No Módulo1
Código: Selecionar todos
Sub COPIAR()
Selection.Copy 'copia a planilha onde se encontra a seleção do mouse
Sheets("I - CUSTOS").Activate 'ativa a planilha onde o valor será colado
Range("I5").Select 'seleciona a célula onde o valor será colado
ActiveSheet.Paste 'cola o valor (: - Código adaptado por Eloir
'Call COPIARCARGO1 'chama a próxima função
Application.CutCopyMode = xlCopy
End Sub
Código: Selecionar todos
Sub COPIARCARGO1()
Sheets("II - CARGOS E SAL.").Activate 'ativa a planilha anterior
Selection.Offset(0, -2).Copy 'seleciona 2 células à esquerda
Sheets("I - CUSTOS").Activate 'ativa a planilha onde o valor será colado
Range("C2").Select 'seleciona a célula onde o valor será colado
ActiveSheet.Paste 'cola o valor (: - Código adaptado por Eloir
Application.CutCopyMode = xlCopy
End Sub
Código: Selecionar todos
Sub COPIARCARGO2()
Sheets("II - CARGOS E SAL.").Activate 'ativa a planilha anterior
Selection.Offset(0, -1).Copy 'seleciona 1 células à esquerda
Sheets("I - CUSTOS").Activate 'ativa a planilha onde o valor será colado
Range("C2").Select 'seleciona a célula onde o valor será colado
ActiveSheet.Paste 'cola o valor (: - Código adaptado por Eloir
Application.CutCopyMode = xlCopy
End Sub
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