Adicionar itens a partir de uma lista no Excel VBA

Dashboard com link dinâmico Excel
Dashboard com link dinâmico Excel
20 de abril de 2015
Planilha Excel de avaliação por competência
Planilha Excel de avaliação por competência
24 de abril de 2015

Objetivo: Adicionar itens a partir de uma lista no Excel VBA. Á partir da validação de dados com lista, adicionar vários itens em uma mesma célula.

Adicionar itens a partir de uma lista de validação

O exemplo deste artigo demonstra como podemos utilizar o código VBA para fazer adicionar vários itens em uma mesma célula, a partir de uma lista de validação de dados.

Veja a imagem:

Adicionar itens a partir de uma lista de validação

Como pode notar, o código faz com que a partir das seleções realizadas, o sistema inclua os dados selecionados, não substituindo os dados anteriores.

Abaixo o código fonte utilizado, ele deve ser utilizado no código fonte da planilha em que houverem as listas de validações que tenham este tipo de inclusão.

Adicionar itens a partir de uma lista de validação 4

Veja neste artigo como habilitar a guia desenvolvedor e copiar códigos da internet: http://guiadoexcel.com.br/habilitando-a-guia-desenvolvedor-e-copiando-procedimentos-vba-sub-da-internet para realizar esta tarefa.

Abaixo o código fonte utilizado:

'Código para adicionar dados á uma seleção apartir de uma lista de validações.
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim rngDV As Range
    Dim oldVal As String
    Dim newVal As String
    Dim strSep As String

    strSep = ", "
  
    Application.EnableEvents = False

On Error Resume Next

If Target.Count > 1 Then GoTo Sair

    Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation)
    On Error GoTo Sair
    
    If rngDV Is Nothing Then GoTo Sair
    
    If Intersect(Target, rngDV) Is Nothing Then
       'do nothing
    Else
    
      newVal = Target.Value
      
      Application.Undo
      oldVal = Target.Value
      
      Target.Value = newVal
      
    If newVal  "" Then
         If oldVal = "" Then
            Target.Value = newVal
         Else
            Target.Value = oldVal & strSep & newVal
         End If
    End If
    
    End If

Sair:
  Application.EnableEvents = True
End Sub

Cursos do Guia do Excel - Destaque-se no mercado de trabalho

Aqui o download do arquivo com o exemplo criado, gratuitamente como sempre =D.


Abraço

Marcos Rieper


Clique aqui e leia mais sobre Excel VBA. https://www.guiadoexcel.com.br/vba/ O Guia do Excel foi criado por Marcos Rieper e oferece artigos, dicas, tutoriais e modelos de planilhas prontas. Aqui você encontra tudo sobre Excel, seja de nível básico, intermediário,  avançado e VBA. O Guia do Excel oferece diversos materiais completamente gratuitos para download. Navegue em nosso site e confira! Conheça também a nossa Loja do Excel https://loja.guiadoexcel.com.br/
Cursos

Curso Excel Completo – Curso Excel Básico + Curso Excel Avançado – Acesso Vitalício

R$218,00 R$179,00

COMPRAR
Cursos

Curso Excel Master – Curso Excel Básico + Curso Excel Avançado + Curso VBA Excel + LP – Acesso Vitalício

R$357,00 R$249,00

COMPRAR
Cursos

Curso Excel PRO – Curso Excel Avançado + Curso VBA Excel + Lógica de programação – Acesso Vitalício

R$258,00 R$199,00

COMPRAR
Cursos

Curso Excel Web – Curso VBA Excel + Lógica de programação + Curso Web Scraping VBA- Acesso Vitalício

R$388,90 R$309,00

COMPRAR

2 Comentários

  1. Volnei disse:

    Todo código é muito valido. Inclusive este, claro !!
    Eu só senti falta de uma opção para poder remover uma qualidade escolhida erroneamente. Se clicar em LED, WIFI e novamente em LED irá incluir novamente.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Inscreva-se no nosso canal do Youtube!


Junte-se ao nosso canal do Youtube. Começamos em abril de 2016, mas já temos mais de 06:00 h de treinamentos gratuitos e este número irá aumentar. Vídeos novos todos os sábados.