Página 1 de 1

AutoFill em Tabela no VBA

Enviado: 03 Out 2017 às 17:56
por GladstoneD
Boa tarde!!!

Então, eu tenho essa planilha de caixa, operada por Userforms. Como toda planilha de caixa, ela tem a formula que soma o total a cada lançamento, linha a linha. O problema é: quando eu excluo uma linha, a formula das linhas abaixo retornam erro, pois não encontram a referencia que foi excluída. Talvez seja necessário apenas um ajuste na formula, mas eu tentei fazer com que o autofill sempre aconteça após a exclusão. No meu caso, eu uso tabelas e quase não encontro artigos sobre VBA em tabelas. Se puderem me ajudar, agradeço.


Código: Selecionar todos
Sub ExcluirLançamento()

Dim Celula As String
DimTabela As ListObject
Dim Registro As ListRow


If MsgBox("Tem certeza que deseja EXCLUIR esse registro?", vbYesNo, "Limpar Pedido") = vbYes Then

Set Tabela = Plan3.ListObjects("Tab_Caixa")
Set Registro = Tabela.ListRows(Objeto.ListIndex + 1)

Registro.Delete

Celula = Tabela.ListRows.Count + 5  ' 5 é a numero de linhas saltadas no inicio da Plan3


'Tentativa do AutoFill

W.Sheets("Caixa").Select
Tabela.DataBodyRange(2, 7).Select
Selection.AutoFill Destination:=Tabela.DataBodyRange(Cells(2, 7), Cells(Celula, 7))

Else
End If
End Sub
Se necessário, disponibilizo o arquivo completo. Obgd a todos!!!

E só por desencargo do consciência, esse é a formula que uso na planilha

=Tab_Caixa[[#Esta Linha];[ENTRADA]] - Tab_Caixa[[#Esta Linha];[SAÍDA]] + G261(Célula acima)

Re: AutoFill em Tabela no VBA

Enviado: 04 Out 2017 às 00:31
por babdallas
Tente usar esta fórmula

=[@ENTRADA]-[@SAÍDA]+DESLOC([@SALDO];-1;0)

Re: AutoFill em Tabela no VBA

Enviado: 04 Out 2017 às 12:34
por GladstoneD
babdallas escreveu:Tente usar esta fórmula

=[@ENTRADA]-[@SAÍDA]+DESLOC([@SALDO];-1;0)
Eu já imaginava que a solução estava na formula da tabela. Funcionou perfeitamente, amigo. Muito Obrigado!!