Fórum Excel Bácico, Avançado e Vba
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  Últimas imagensÚltimas imagens  ProcurarProcurar  RegistarRegistar  Entrar  

 

 Função VBA para Somar em Tabela

Ir para baixo 
2 participantes
AutorMensagem
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyTer Out 08, 2013 1:12 am

Intervalo de dados: A5:J1000 .  
Preciso que, quando a coluna C (C5:C1000) for Igual à coluna B (B5:B1000); a Fase da coluna E (E5:1000) seja igual a Liberado ("Liberado").
Em seguida, preciso que a tabela da Célula M4 até M7 receba os valores equivalentes de G5 até J5, colocando o Hífen (-) na célula.
No exemplo anexo, G5 era 1, H5 era 2, I5 era 3 e J5 era 4. Na tabela M4 até M7 vai somando os valores correspondentes de G5:G1000.  
Gostaria ainda que, caso a Linha que já contenha a Fase Liberado seja deletada, que o valor seja subtraido de M4 a M7.

Tentei em outros foruns, mas sem ainda não consegui.

Obs: não tenho permissão para postar links.

Grato,
Pedro
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyQua Out 09, 2013 1:22 am

Boa noite!!!

Já postou em [color=#3333ff]Excel Avançado/VBA[/color],você precisa disso só em VBA??

Para postar seu arquivo modelo, após se cadastrar em site gratuito, poste o link aqui.

Veja como burla o sistema do site.
*w*w*w.sendspace.c*o*m


Att
Ir para o topo Ir para baixo
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: http://www.4shared.com/file/uYCkO2wV/Somar_Tabela.html   Função VBA para Somar em Tabela  EmptyQua Out 09, 2013 5:48 am

Alexandre,

Não precisa ser só em VBA. Se conhecer outra maneira, favor me ajudar.

Publiquei no 4shared.

Grato,
Pedro
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyQui Out 10, 2013 7:17 pm

Boa tarde!!!

Vamos por partes...
Quando você diz que
quando a coluna C (C5:C1000) for Igual à coluna B (B5:B1000) escreveu:
Significa que realmente que a coluna ou...

Código:
Cliente   Valor   Liberado   Modalidade   Fase
Fulano   5000   5000   x   Liberado
João   10000   0   y   Estudo
Maria   10000   0   y   Inicial
José   456   456   y   Liberado

Veja que das duas colunas as células (B5 e C5), (B8 e C8) são iguais portanto E5 e E8 estão marcados como "Liberados"
Seria isso confused confused 
Ir para o topo Ir para baixo
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Somar Tabela   Função VBA para Somar em Tabela  EmptySex Out 11, 2013 2:12 am

Para facilitar o entendimento, coloquei o endereço de planilha para 4shared abaixo:
É só copiar e colar.
No seu exemplo, os valores de G5 até J5 e os valores de G8 até J8 devem SER SOMADOS em
M4 até M7, pois E5 e E8 estão Iguais a "Liberado".

4shared.com/file/uYCkO2wV/Somar_Tabela.html

Grato,
Pedro
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptySex Out 11, 2013 7:03 pm

Boa tarde!!

Foi justamente baseado em seu arquivo que citei o exemplo anterior.

Leia minha postagem anterior e tente me responder o que realmente precisa fazer coluna.

Att
Ir para o topo Ir para baixo
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptySáb Out 12, 2013 1:48 am

Ok. Agora entendi.
É o seguinte:

Quando o valor de B5 for igual ao Valor de C5, então E5 deve ser Igual a liberado,
Caso contrário, E5 deve ser Igual a Vazio. Em seguida, preciso que a tabela da Célula
M4 até M7 receba os valores equivalentes de G5 até J5, colocando o Hífen (-) na célula.

Quando o valor de B6 for igual ao Valor de C6, então E6 deve ser Igual a liberado,
Caso contrário, E6 deve ser Igual a Vazio. Em seguida, preciso que a tabela da Célula
M4 até M7 receba os valores equivalentes de G6 até J6, colocando o Hífen (-) na célula.

Tudo isso até a linha 1000.

Espero sua ajuda,

Pedro
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyDom Out 13, 2013 2:20 am

Boa noite!!

Caso queira por formula então em E5 use a seguinte formula
Código:
=SE(OU(B5="";C5="");"";SE(B5=C5;"Liberado";""))
, depois arraste para baixo.

Quanto a segunda dúvida eu não a entendi.drunken 

Att
Ir para o topo Ir para baixo
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyDom Out 13, 2013 3:10 am

Por fórmula não dá pois a coluna E (Fase) vai conter valores (como no exemplo que anexei no link: Estudo, Inicial, e Etc...)...

O segundo pedido é o seguinte:

Quando E5 for igual a "Liberado", preciso que a tabela da Célula M4 até M7 receba os valores equivalentes de G5 até J5, colocando o Hífen (-) na célula.
No exemplo que mandei, G5 era 1, H5 era 2, I5 era 3 e J5 era 4.
Na tabela M4 até M7 vai somando os valores correspondentes de G5:G1000.

Gostaria ainda que, caso a Linha que contenha a Fase Liberado seja deletada, que o valor seja subtraido de M4 a M7, pois a Fase não será mais "Liberado".

Grato,
Pedro

Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyDom Out 13, 2013 3:58 pm

Bom dia!!!

Eu mudei de formula para VBA, será melhor.

Cole os dois códigos em módulo, depois execute-o.

Código:
Sub CompararDuasColunasCriterio()
'Compara os dados de duas colunas, caso igual, escreve em outra coluna o valor "Liberado"
    Dim i As Long, n As Long
    n = Application.Max(Range("B65536").End(xlUp).Row, Range("C65536").End(xlUp).Row)
    For i = 4 To n
        If Range("B" & i).Value = Range("C" & i).Value Then Range("E" & i).Value = "Liberado"
    Next i
    Call ifen
End Sub

Sub ifen()
Dim LastRow As Long
'Filtra as células baseado no critério "Liberado"
'Coloca ifen nas células das colunas G:J
    With Worksheets("Plan1")
        .AutoFilterMode = False
        .Range("A4:J4").AutoFilter
        .UsedRange.AutoFilter
        .UsedRange.AutoFilter field:=5, Criteria1:="Liberado"
          LastRow = .Range("G" & .Rows.Count).End(xlUp).Row
        .Range("G2:J" & LastRow).SpecialCells(xlCellTypeVisible).Select
    End With
    Selection = "-"
End Sub

Após seus teste, caso não seja isso simule um exemplo manual.

Att:rabbit: 
Ir para o topo Ir para baixo
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyDom Out 13, 2013 6:38 pm

Alexandre,

Estamos quase finalizando. Baixe a nova planilha em:

4shared.com/file/RsLVVJya/Somar_Tabela_Teste.html

Faça o teste que coloquei em Vermelho e coloquei uma
demanda pra voce em Azul.

Muito obrigado pela paciencia.
Grato,
Pedro
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptySeg Out 14, 2013 11:35 pm

Boa tarde!!

Eu ainda não tive tempo, enquanto isso tente adaptar...
Código:
Option Compare Text
'Ponha esse código dentro do módulo de planilha
Dim PreviousValue

Private Sub Worksheet_Change(ByVal Target As Range)

On Error Resume Next
Call Alert_msg
        If PreviousValue = "OK" Then
    If Target.Value <> PreviousValue Then
  '
 
      MsgBox " Atençaõ ao deletar esses dados"
           
    End If
            End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    PreviousValue = Target.Value
End Sub
Código:
Sub Alert_msg()
  'Ponha esse código dentro de um módulo
Range("E1:E1000").Validation.Delete
  For Each cell In Range("E1:E1000")
 
  If cell.Value = "OK" Then
  cell.End(xlToRight).Select
  cell.End(xlToLeft).Select

    Selection.Resize(1, 15).Select

      With Selection.Validation
        .Delete
        .Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator _
        :=xlBetween
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = "Cuidado ao deletar"
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
       
    End With
   
    End If
   
    Next cell
End Sub
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyTer Out 15, 2013 4:36 pm

Bom dia!!

Uma pequena melhora....tente adaptar
Código:
Option Explicit

Dim varPreviousValue As Variant
Private Sub Worksheet_Change(ByVal Target As Range)
   
    On Error Resume Next
        If Target.Column <= 10 Then
            If Range("E" & Target.Row) = "OK" Then
                If Target.Value <> varPreviousValue Then
                    MsgBox "Cuidado ao deletar essa informação baseado em E" & Target.Row & ".", vbExclamation, "AleVBA"
                    With Application
                        .ScreenUpdating = False
                        .EnableEvents = False
                        .Undo
                        .EnableEvents = True
                        .ScreenUpdating = True
                    End With
                End If
            End If
        End If
    On Error GoTo 0
   
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
   
    varPreviousValue = Target.Value
   
End Sub
Ir para o topo Ir para baixo
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyQui Out 17, 2013 1:23 am


Ainda não consegui.
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyQui Out 17, 2013 4:40 am

Boa noite!!

Não conseguiu?...o que aconteceu, gerou erro, não ocorreu ação alguma, seja mais claro!

Tentou minha ultima sugestão?

Att
Ir para o topo Ir para baixo
pedrobb




Mensagens : 10
Data de inscrição : 06/10/2013

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyQui Out 17, 2013 5:33 am

Nada aconteceu.
Coloquei as funções em Modulo1 e também na Plan1.
Talvez tenha conflito com a outra Sub Worksheet_Change(ByVal Target As Range).

Grato,
Pedro
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  EmptyQui Out 17, 2013 5:58 pm

Bom dia!!

Não pode haver dois Worksheet_Change, e também deverá ser adaptado!!!

Att
Ir para o topo Ir para baixo
Conteúdo patrocinado





Função VBA para Somar em Tabela  Empty
MensagemAssunto: Re: Função VBA para Somar em Tabela    Função VBA para Somar em Tabela  Empty

Ir para o topo Ir para baixo
 
Função VBA para Somar em Tabela
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» Função para pagamentos/descontos
» Limpar tabela para importar banco
» formula em VBA para criar tabela de futebol
» funçao vba para inserir valor em uma celula
» Função para contar valores num range

Permissões neste sub-fórumNão podes responder a tópicos
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: