Ir para conteúdo
Fórum Script Brasil
  • 0

Duvidas ListBox Excel


AMVilasBoas

Pergunta

Meus amigos, boa noite!

Estou com uma listbox carregando apenas a primeira e ultima linha da planilha e as demais ficam em branco. já alterei algumas propriedades da listbox e até fiz um novo arquivo e não encontrei o erro. O código eu peguei comparei com outros e é bem simples. Podem me ajudar?

 

Sub Filtro_Acumulado()

linha = 1
linhalisbox = 0

Me.LBOrcadoRealizado.ColumnWidths = "80;70;70;80"

Do Until Sheets("BANCO_DE_DADOS").Cells(linha, 1) = ""


With Me.LBOrcadoRealizado
    .AddItem
    .List(linhalistbox, 0) = Sheets("BANCO_DE_DADOS").Cells(linha, 1)
    .List(linhalistbox, 1) = Sheets("BANCO_DE_DADOS").Cells(linha, 2)
    .List(linhalistbox, 2) = Sheets("BANCO_DE_DADOS").Cells(linha, 3)
    .List(linhalistbox, 3) = Sheets("BANCO_DE_DADOS").Cells(linha, 4)
    
End With
linha = linha + 1 'soma ela mesma, pula para próxima linha
linhalistbox = linhalisbox + 1
Loop

End Sub

Editado por AMVilasBoas
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Repare nesta linha do codigo -> linhalistbox = linhalisbox + 1  -> faltou um "t" (letra t) no segundo linhalistbox. 

Isto que esta causando o erro.

Outra coisa, eu não gosto de usar Do Until = "" pois se por exemplo o loop encontar alguma linha vazia ele é encerrado e na carragar as demais linhas com dados.

Fiz algumas alteraçoes: 

 

Sub Filtro_Acumulado()
    Dim UL As Long, linhalisbox As Integer

    linha = 1

    With Me.LBOrcadoRealizado
        .ColumnCount = 4
        .Clear
        .ColumnWidths = "80;70;70;80"

        With Sheets("BANCO_DE_DADOS")

            UL = .Cells(Rows.Count, 1).End(xlUp).Row
        End With

        For linha = linha To UL
             If Sheets("BANCO_DE_DADOS").Cells(linha, 1) <> "" Then
            .AddItem
            .List(linhalistbox, 0) = Sheets("BANCO_DE_DADOS").Cells(linha, 1)
            .List(linhalistbox, 1) = Sheets("BANCO_DE_DADOS").Cells(linha, 2)
            .List(linhalistbox, 2) = Sheets("BANCO_DE_DADOS").Cells(linha, 3)
            .List(linhalistbox, 3) = Sheets("BANCO_DE_DADOS").Cells(linha, 4)

            linhalistbox = linhalistbox + 1 'soma ela mesma, pula para próxima linha
          End If
        Next

    End With
End Sub

 

Editado por Basole
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...