Propósito

✔ Programação GLOBAL® - Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog devem ser tratados como consultoria freelance. Queiram contatar-nos: brazilsalesforceeffectiveness@gmail.com | ESTE BLOG NÃO SE RESPONSABILIZA POR QUAISQUER DANOS PROVENIENTES DO USO DOS CÓDIGOS AQUI POSTADOS EM APLICAÇÕES PESSOAIS OU DE TERCEIROS.

.: Vitrine

Carregando artigos...

Views

Mostrando postagens com marcador populate popular. Mostrar todas as postagens
Mostrando postagens com marcador populate popular. Mostrar todas as postagens

VBA Excel - Populando Listbox com Multi-Colunas - Multi-column List


O Listbox pode conter múltiplas colunas de dados.

Usaremos a propriedade .ColumnWidths para configurar a largura individual das colunas.

Configurar como largura zero,ocultará a coluna que não desejamos que apareça.

Neste exemplo abaixo o listbox mostrará o nome completo do estado, sendo que a segunda coluna ficará oculta contendo as abreviações dos estados. O usuário visualizará e escolherá o seu estados, mas o resultado final no documento será a abreviação do estado.





Segue o código:

Option Explicit
Private Sub UserForm_Initialize()
Dim arrStateName() As String
Dim arrStateAbbv() As String
Dim i As Long

  Use a função Split para retornar um array unidimensional. 
  Let arrStateName = Split("Select State|Alabama|Alaska|Arizona|" _
             & "Arkansas|California|Connecticut|Etc.", "|")
  Let arrStateAbbv = Split(" |AL|AK|AZ|AR|CA|CT|Etc", "|")

  'Use a propriedade .ColumnWidth para ajustar a largura das colunas.  O 0 as esconde.

  Let ListBox1.ColumnWidths = "60;0"
  For i = 0 To UBound(arrStateName)
    ' Use o método .AddItem para adicionar multicolunas em cada linha da matriz.
    ListBox1.AddItem
    'Use o método .List para registrar os dados nas linhas e colunas específicas.
    Let ListBox1.List(i, 0) = arrStateName(i)
    Let ListBox1.List(i, 1) = arrStateAbbv(i)
  Next i
lbl_Exit:
  Exit Sub
End Sub

Private Sub CommandButton1_Click()
   Dim oRng As Word.Range
   Dim oBM As Bookmarks

  Set oBM = ActiveDocument.Bookmarks
  Set oRng = oBM("Address").Range
  Let oRng.Text = TextBox1.Text
  oBM.Add "Address", oRng
  Set oRng = oBM("City").Range
  Let oRng.Text = TextBox2.Text
  oBM.Add "City", oRng
  Set oRng = oBM("State").Range

  'Use the listbox hidden column data. Note columns are indexed starting with 0.

  Let oRng.Text = ListBox1.Column(1)
  oBM.Add "State", oRng
  Set oRng = oBM("Zip").Range
  Let oRng.Text = TextBox3.Text
  oBM.Add "Zip", oRng
  Me.Hide
  Set oRng = Nothing
  Set oBM = Nothing

lbl_Exit:
  Exit Sub
End Sub




brazilsalesforceeffectiveness@gmail.com

✔ Brazil SFE®Author´s Profile  Google+   Author´s Professional Profile   Pinterest   Author´s Tweets

VBA Excel - Populando Listbox - userform listbox

O objetivo deste post é ensinar o modo básico de incluirmos dados em um LISTBOX

Certamente espero que já tenha aprendido a criar um formulário (USERFORM).

Neste exemplo teremos um listbox com as opções sim e não:



Geralmente, mas não é regra, colocamos estes código para popular um listbox no evento Inicializar (Initialize) do nosso formulário.

O método AddItem é o responsável pelo inclusão, através de um pequeno código:



O método AddItem pode tornar-se pesado se a lista for muito grande. Por exemplo, a lista de estados que compõem os EUA e as respectivas abreviações dos distritos de Columbia requeririam 51 linhas separadas de código para populamos o listbox.

Aconselho que utilize algo mais versátil, como o método List
 e uma série de dados para simplificar o trabalho:


Sub UserForm_Initialize()

Dim myArray() As String

  'Use a função Split para retornar um array unidimensional baseado. 

  Let myArray = Split( _
                "AL|AK|AZ|AR|CA|CO|CT|DE|DC|FL|" _

             & "GA|HI|ID|IL|IN|IA|KS|KY|LA|ME|MD|" _

             & "MA|MI|MN|MS|MO|MT|NE|NV|NH|NJ|NM|" _

             & "NY|NC|ND|OH|OK|OR|PA|RI|SC|SD|TN|" _

             & "TX|UT|VT|VA|WA|WV|WI|WY", "|")

  'Use .List method to populate listbox.

  Let ListBox1.List = myArray

lbl_Exit:

  Exit Sub

End Sub


Deixe os seus comentários! Envie este artigo, divulgue este link na sua rede social...


Tags: VBA, Excel, Listbox, userform, populate popular, 



diHITT - Notícias