Página 1 de 1

Editaruma macro incluindo uma nova função.

Enviado: 04 Mar 2017 às 12:39
por Sam
Olá, boa tarde!

Por gentileza, poderiam ajudar?

"Quando aciono a macro ela insere uma célula abaixo e me da o resultado".

Só gostaria que ao invés de inserir a célula abaixo, inserisse uma linha completa e me desse o resultado nessa linha inserida.

Grande abç e muito obrigado.

Sub Macro1()

Dim linha As Long

Application.ScreenUpdating = False

linha = ActiveCell.Row
Range(Cells(linha - 1, 4), Cells(linha - 1, 6)).Copy
Range(Cells(linha, 4), Cells(linha, 6)).Insert Shift:=xlDown
Cells(linha, 4).Select
ActiveSheet.Paste
Cells(linha, 5).Select
ActiveCell.FormulaR1C1 = "=R[-1]C-R[-1]C[1]"
Cells(linha, 6).Select
Cells(linha, 6).Value = ""
Application.CutCopyMode = False


Application.ScreenUpdating = True

End Sub

Re: Editaruma macro incluindo uma nova função.

Enviado: 04 Mar 2017 às 12:58
por alexandrevba
Boa tarde!!

Já tentou algo como?
Código: Selecionar todos
ActiveCell.EntireRow.Insert
Att

Re: Editaruma macro incluindo uma nova função.

Enviado: 05 Mar 2017 às 13:50
por Sam
Olá Alexandre, boa tarde! Tudo bem?

Obrigado pelo retorno.

Já tentei sim, mas dá erro de compilação.
Entre outras coisas que tentei.

Estou enviando o anexo pra vc dar uma olhada se puder....

A marco funciona da seguinte forma:
Ela insere uma célula abaixo do produto e quantidade, copia o produto para célula inserida e me da o resultado da quantidade menos a quantidade recebida.

A única mudança que quero fazer é ao invés de ela incluir uma célula gostaria que incluísse uma linha, mas quebrei a cabeça e não consegui reverter isso até pq não tenho muito conhecimento em VBA.

Grande abraço.

Re: Editaruma macro incluindo uma nova função.

Enviado: 05 Mar 2017 às 18:58
por alexandrevba
Boa noite!!

Faça os testes...
Código: Selecionar todos
Sub Macro1()

Dim linha As Long

    Application.ScreenUpdating = False
    
    linha = ActiveCell.Row
    Range(Cells(linha - 1, 4), Cells(linha - 1, 6)).Copy
    Selection.Offset(1).Insert
    'Range(Cells(linha, 4), Cells(linha, 6)).Insert Shift:=xlDown
    Cells(linha, 4).Select
    ActiveSheet.Paste
    Cells(linha, 5).Select
    ActiveCell.FormulaR1C1 = "=R[-1]C-R[-1]C[1]"
    Cells(linha, 6).Select
    Cells(linha, 6).Value = ""
    Application.CutCopyMode = False
    
    
    Application.ScreenUpdating = True

End Sub
Att

Editaruma macro incluindo uma nova função.

Enviado: 06 Mar 2017 às 09:16
por Sam
Olá Alexandre, bom dia!

Obrigado novamente pelo retorno.

Infelizmente não funcionou....

A macro está copiando e inserindo informações em células indevidas.

Re: Editaruma macro incluindo uma nova função.

Enviado: 06 Mar 2017 às 09:26
por alexandrevba
Bom dia!!

Teste com atenção eu não tive esse problema (Desconsiderando o fato de a formula ir ou não para o local correto )
Se for o caso da formula me avise...

Att

Re: Editaruma macro incluindo uma nova função.

Enviado: 06 Mar 2017 às 14:51
por Sam
Olá Alexandre, boa tarde!

Agradeço muito sua atenção.

Infelizmente não consegui....

Por gentileza, veja no anexo....

A macro está colocando os itens anteriores sobre os itens das células abaixo, além de copiar as células "D E F 3" para outras células....

Obrigado novamente.

Abçs.

Re: Editaruma macro incluindo uma nova função.

Enviado: 07 Mar 2017 às 16:57
por alexandrevba
Boa tarde!!

Se não for isso eu desisto :? :?
Código: Selecionar todos
Sub AleVBA_4205()
    ActiveCell.EntireRow.Insert
    ActiveCell.Offset(-1).Select
    ActiveCell.Resize(, 3).Copy
    ActiveCell.Offset(1).Select
    ActiveCell.PasteSpecial xlPasteAll
    Application.CutCopyMode = False
End Sub
Obs: Eu estou partindo do pressuposto que você vai posicionar o curso e selecionar uma célula na coluna D e que contenha dados que corresponde a ideia da macro.

Att