none
Passar valores do ListBox para Planilha ?? RRS feed

  • Pergunta

  • Tenho um Listbox em um form aonde são carregados os seguintes dados filtrados 
    da planilha:
    data     Nome        Setor
    02/05   Mauro       Info
    02/05   Daniela      Vendas
    02/05   Valéria      RH
    02/05   Virginia     ..........
    
    Após carregado gostaria de passar esses dados para uma nova planilha sendo 
    que a data por serem iguais fosse inserido em "A1" e os Nomes e Setores logo 
    abaixo em "A2" e "B2" respectivamente para imprimir ou imprimir direto do 
    ListBox, como posso fazer isso ?
    Grato
    Mauro
    domingo, 4 de fevereiro de 2007 19:40

Respostas

  • Private Sub CommandButton1_Click()
    'cria varíavel para contagem da linha a ser preenchida
    Dim Nlin
    'cria uma variável para contar as linhas da listbox
    Dim Cont

    'limpa a região com dados anteriores
    Plan2.Range("A1:B1000").ClearContents

    'linha inicial da planilha que carregará os dados
    Nlin = 1
    'preenche a 1ª com a data
    Plan2.Range("A" & Nlin) = Me.ListBox1.List(Cont, 0)

    'preenche as outras linhas até o fim da listbox
    For Cont = 0 To Me.ListBox1.ListCount - 1
    Plan2.Range("A" & Nlin + 1) = Me.ListBox1.List(Cont, 1)
    Plan2.Range("B" & Nlin + 1) = Me.ListBox1.List(Cont, 2)
    Nlin = Nlin + 1
    Next
    End Sub

    http://www.tudosobrexcel.com/curso_excel_vba

     

     


     

     

    quarta-feira, 7 de fevereiro de 2007 11:01
  • Fabio, agradeço a ajuda, mas essa rotina só funcionou apos eu ter modificado,

    Plan2.Range("A"........    por

    Worksheets("Plan2").Range("A".......

     

    Private Sub CommandButton1_Click()
    'cria varíavel para contagem da linha a ser preenchida
    Dim Nlin As Integer
    'cria uma variável para contar as linhas da listbox
    Dim Cont As Integer

    'limpa a região com dados anteriores
    Worksheets("Plan2").Range("A1:B1000").ClearContents

    'linha inicial da planilha que carregará os dados
    Nlin = 1
    'preenche a 1ª com a data
    Worksheets("Plan2").Range("A" & Nlin) = Me.ListBox1.List(Cont, 0)

    'preenche as outras linhas até o fim da listbox
    For Cont = 0 To Me.ListBox1.ListCount - 1
    Worksheets("Plan2").Range("A" & Nlin + 1) = Me.ListBox1.List(Cont, 1)
    Worksheets("Plan2").Range("B" & Nlin + 1) = Me.ListBox1.List(Cont, 2)
    Nlin = Nlin + 1
    Next


    End Sub

    sábado, 10 de fevereiro de 2007 02:45

Todas as Respostas

  • Private Sub CommandButton1_Click()
    'cria varíavel para contagem da linha a ser preenchida
    Dim Nlin
    'cria uma variável para contar as linhas da listbox
    Dim Cont

    'limpa a região com dados anteriores
    Plan2.Range("A1:B1000").ClearContents

    'linha inicial da planilha que carregará os dados
    Nlin = 1
    'preenche a 1ª com a data
    Plan2.Range("A" & Nlin) = Me.ListBox1.List(Cont, 0)

    'preenche as outras linhas até o fim da listbox
    For Cont = 0 To Me.ListBox1.ListCount - 1
    Plan2.Range("A" & Nlin + 1) = Me.ListBox1.List(Cont, 1)
    Plan2.Range("B" & Nlin + 1) = Me.ListBox1.List(Cont, 2)
    Nlin = Nlin + 1
    Next
    End Sub

    http://www.tudosobrexcel.com/curso_excel_vba

     

     


     

     

    quarta-feira, 7 de fevereiro de 2007 11:01
  • Fabio, agradeço a ajuda, mas essa rotina só funcionou apos eu ter modificado,

    Plan2.Range("A"........    por

    Worksheets("Plan2").Range("A".......

     

    Private Sub CommandButton1_Click()
    'cria varíavel para contagem da linha a ser preenchida
    Dim Nlin As Integer
    'cria uma variável para contar as linhas da listbox
    Dim Cont As Integer

    'limpa a região com dados anteriores
    Worksheets("Plan2").Range("A1:B1000").ClearContents

    'linha inicial da planilha que carregará os dados
    Nlin = 1
    'preenche a 1ª com a data
    Worksheets("Plan2").Range("A" & Nlin) = Me.ListBox1.List(Cont, 0)

    'preenche as outras linhas até o fim da listbox
    For Cont = 0 To Me.ListBox1.ListCount - 1
    Worksheets("Plan2").Range("A" & Nlin + 1) = Me.ListBox1.List(Cont, 1)
    Worksheets("Plan2").Range("B" & Nlin + 1) = Me.ListBox1.List(Cont, 2)
    Nlin = Nlin + 1
    Next


    End Sub

    sábado, 10 de fevereiro de 2007 02:45