Notifications
Clear all

Macro Soma para varias planilhas

4 Posts
2 Usuários
0 Reactions
934 Visualizações
(@ghuto_lima)
Posts: 70
Estimable Member
Topic starter
 

Ola pessoal,
Bom dia.

Estou com a macro abaixo de Soma, e vou usar essa Macro em arquivo que há varias Plans, e essa Macro será executada em todas as plans.
Não ao mesmo tempo, cada dia eu crio uma nova plan e executo a Macro Soma.

O problema é que em cada plan altera o numero de celulas para serem somadas.
Por exemplo: A soma vai do H2:H30 na H31 é o resultado.
Em outra plan, a soma vai do H2:H10 na H11 é o resultado
Entenderam!!!!...toda nova plan varia o intervalo de soma, e com a Macro abaixo esta fixando em um numero determinado.

Range("H1").Select
Selection.End(xlDown).Offset(1, 0).Select
Range("H41").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-40]C:R[-1]C)"
Selection.Font.Bold = True
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone

Como faço para não deixar fixo o intervalo de soma?
Obrigado.

_________
Gustavo

 
Postado : 09/04/2015 7:46 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

With Range("H1").End(xlDown).Offset(1, 0)
    .FormulaR1C1 = "=SUM(R2C:R[-1]C)"
    .Font.Bold = True
    .Borders(xlDiagonalDown).LineStyle = xlNone
    .Borders(xlDiagonalUp).LineStyle = xlNone
End With

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 09/04/2015 8:06 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Eu espero que esse código lhe dê uma ideia

Sub Macro1()
'
' Macro1 Macro
'

    Dim LastRow As Long
     
    LastRow = Range("A1").End(xlDown).Row
    Cells(LastRow + 1, "A").Formula = "=SUM(A2:A" & LastRow & ")"
     
End Sub

Att

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 09/04/2015 8:07 am
(@ghuto_lima)
Posts: 70
Estimable Member
Topic starter
 

With Range("H1").End(xlDown).Offset(1, 0)
    .FormulaR1C1 = "=SUM(R2C:R[-1]C)"
    .Font.Bold = True
    .Borders(xlDiagonalDown).LineStyle = xlNone
    .Borders(xlDiagonalUp).LineStyle = xlNone
End With

Maravilha...maravilha Fernando.
Deu certinho.
Poderia me explicar porque fazendo essa pequena alteração deu certo.

Obrigado.

_________
Gustavo

 
Postado : 09/04/2015 9:22 am