Logo_Access_global_380x114Favicon_Access_global_180x180Logo_Access_global_380x114Logo_Access_global_380x114
  • Home
  • University
    • Destellos formativos
  • Labs
  • TV
  • Secciones
    • El mundo de Access
    • Explorando VBA
      • Artículos sobre VBA
      • Un trocito de código
    • Entrevistas
      • Profesionales de Access
    • El rincón de Excel
    • Bases de datos
      • MS SQL
      • MySQL
      • postgreSQL
      • SQLite
    • Clases magistrales
    • Utilidades hechas con Access
  • Access en el mundo
  • ¿Quiénes somos?
  • Cómo colaborar
  • Eventos
✕
            No hay resultados Mostrar todos los resultados
            VBA: adaptar una imagen al detalle de un informe
            13/06/2023
            VBA: alinear campo de listbox a la derecha
            16/06/2023
            Mostrar todos

            VBA: cuadro de lista personalizable

            Publicado por Luis Viadel
            Categorías
            • Destellos formativos
            Etiquetas
            • ColumnCount
            • ColumnWidths
            • Listbox
            'Colocar en un formulario que contiene un cuadro de lista (lstProductos)
            Option Compare Database
            Option Explicit
            
            Private Sub Form_Open(Cancel As Integer)
            Dim strSQL As String
            
                strSQL = "SELECT productos.idprodut, productos.produtcod, productos.produtnom, productos.produfec, productos.activo FROM productos;"
                
                Me.LstProductos.ColumnCount = 5
                Me.LstProductos.RowSource = strSQL
                Me.LstProductos.ColumnWidths = "0cm;2cm;7cm;2cm;1cm"
                
            End Sub
            
            Private Sub LstProductos_DblClick(Cancel As Integer)
            
                MsgBox "El id del produto que has seleccionado es el " & Me.LstProductos.value
                
            End Sub
            
            Private Sub ver02_AfterUpdate()
            
                cambiarLista
                
            End Sub
            
            Private Sub ver03_AfterUpdate()
            
                cambiarLista
                
            End Sub
            
            Private Sub ver04_AfterUpdate()
            
                cambiarLista
                
            End Sub
            
            Private Sub ver05_AfterUpdate()
            
                cambiarLista
                
            End Sub
            
            Private Sub cambiarLista()
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            ' Fuente            : https://access-global.net/vba-cuadro-de-lista-personalizado/
            '                     Destello formativo 340
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            ' Título            : cambiarLista
            ' Autor original    : Luis Viadel | luisviadel@access-global.net
            ' Creado            : 2020
            ' Adaptado ejemplo  : 2023
            ' Propósito         : dar al usuario la opción de mostrar u ocultar campos de un cuadro de lista
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            ' Test:             : Para adaptar este código en tu aplicación puedes basarte en este procedimiento test. Copiar el bloque siguiente al
            '                     portapapeles y pega en el evento "Al cambiar" de una casilla de verificación.
            '
            'Private Sub CampoDeLista_AfterUpdate()
            '
            '       cambiarLista
            '
            ' End Sub
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            Dim anchoColumna As String
            Dim nColumnas As Long
            Dim strSQL As String
            
                strSQL = "SELECT productos.idprodut"
                nColumnas = 1
                anchoColumna = "0cm;"
                
                 If ver02 = True Then
                    nColumnas = nColumnas + 1
                    anchoColumna = anchoColumna & "2cm;"
                    strSQL = strSQL & ", productos.produtcod"
                End If
               
                If ver03 = True Then
                    nColumnas = nColumnas + 1
                    anchoColumna = anchoColumna & "7cm;"
                    strSQL = strSQL & ", productos.produtnom"
                End If
               
                If Ver04 = True Then
                    nColumnas = nColumnas + 1
                    anchoColumna = anchoColumna + "2cm;"
                    strSQL = strSQL & ", productos.produfec"
                End If
               
                If ver05 = True Then
                    nColumnas = nColumnas + 1
                    anchoColumna = anchoColumna + "1cm;"
                    strSQL = strSQL & ", productos.activo"
                End If
                  
                strSQL = strSQL & " FROM productos"
                        
                Me.LstProductos.ColumnCount = nColumnas
                Me.LstProductos.RowSource = strSQL
                Me.LstProductos.ColumnWidths = anchoColumna
                
            End Sub
            
            ¡Ver en el repositorio!
            Compartir
            16
            Luis Viadel
            Luis Viadel

            Entradas relacionadas

            27/09/2023

            VBA: Conversor de moneda


            Leer más
            26/09/2023

            VBA: Convertir macros a VBA


            Leer más
            25/09/2023

            VBA: Averiguar rápidamente la versión de Access


            Leer más

            Deja una respuesta Cancelar la respuesta

            Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

            ETIQUETAS

            Access API ComboBox Consultas CountOfDeclarationLines CountOfLines DCount Diseño DoCmd Excel Fecha FileExists FileSystemObject Filtros Formulario Formularios Funciones Funciones de dominio GetFolder Informes Kill Left Listbox Matrices Mid Mod Módulos Node ProcCountLines Procedimientos ProcOfLine References Replace Ribbon Right RunCommand Split Tablas Tempvars TreeView TwipsFromFont VBA VBE VBIDE WizHook

            ÚLTIMAS ENTRADAS

            • 0
              VBA: Conversor de moneda
              27/09/2023
            • 0
              VBA: Convertir macros a VBA
              26/09/2023

            ¿QUIERES PUBLICITAR TU EMPRESA AQUÍ?

            SUSCRÍBETE A NUESTRO
            NEWSLETTER

            Recibirás información puntual sobre el mundo de Access y VBA

            ¡Próximamente!

            Promovemos el uso de Access y de la programación en VBA en todo el mundo

            Centro de conocimiento


            Toda la sabiduría de los mejores programadores de Access y VBA a tu alcance.

            Legal

            Política de privacidad

            Condiciones de uso

            Condiciones del redactor

            ®Access Global 2021 | All right reserved
                      No hay resultados Mostrar todos los resultados