VBA Access - Preenchendo uma caixa de listagem.

Inline image 1

Descreverei uma técnica antiga para preencher uma caixa de listagem através de uma função de retorno.

A partir do MS Access 2000, existe uma nova técnica mais eficiente e flexível.


Para utilizar a função de retorno:



Crie um novo módulo, clicando na aba Módulos da janela Banco de Dados e clicando em Novo.



Cole o código abaixo.

Verifique se o código é aceito, escolhendo Compilar no menu Debug.



Salve o módulo com um nome como Módulo1.



Defina a propriedade Row Source Type da caixa de lista para apenas:

DirListBox



Não use o sinal de igualdade entre parênteses ou função, e deixe a linha da propriedade Source em branco.



Function DirListBox (fld As Control, ID, row, col, code)

    Dim StrFileName As String

    Static StrFiles(0 To 511) As String ' Array to hold File Names
    Static IntCount As Integer          ' Number of Files in list

    Select Case code
        Case 0                          ' Initialize
            Let DirListBox = True
        Case 1                          ' Open: load file names into array
            Let DirListBox = Timer
            Let StrFileName = Dir$("C:\")   ' Read filespec from a form here???

            Do While Len(StrFileName) > 0
                Let StrFiles(IntCount) = StrFileName
                Let StrFileName = Dir
                Let IntCount = IntCount + 1
            Loop
        Case 3                          ' Rows
            Let DirListBox = IntCount
        Case 4                          ' Columns
            Let DirListBox = 1
        Case 5                          ' Column width in twips
            Let DirListBox = 1440
        Case 6                          ' Supply data
            Let DirListBox = StrFiles(row)
    End Select
End Function


Tags: VBA, Access, listbox, fill, caixa de listagem, 


Nenhum comentário:

Postar um comentário

diHITT - Notícias