InicioApuntes Y MonografiasVBA: ListBox MultiColumn y Control de errores
Aqui les dejo un post mas de VBA para Excel para los que quieran aprender un poco mas acerca de los comandos y funciones que podemos utilizar para hacer nuestro trabajo diario mas rapido y sencillo.

Bueno, en esta ocasion pretendo mostrar dos caracteristicas de vba que podrian ayudarnos a tener un mejor control de nuestro codigo y que nos permitiran darle un mejor estilo a nuestro programa, me refiero a la utilizacion de un listbox con varias columnas y a controlar los errores que ocurren por datos incorrectos sin que nuestro programa se detenga o muestre la ventana de vba al usuario.

para empezar, las consideraciones de costumbre:
Como siempre digo, es un codigo muy sencillo, corto y facil de entender porque va dirigido a las personas que aun estan aprendiendo, sin embargo, este codigo podria hacerse muchisimo mas robusto hasta alcanzar un nivel de desarrollo profesional pero la intension no es demostrar que somos los mejores programadores sino mostrar un camino mas a los interesados en el tema.

este ejemplo fue escrito en una maquina con las siguientes carcateristicas:
- windows home premium 64 bits
- microsoft office 2013 Excel

antes de empezar quiero hacer una aclaracion mas:
debido a la hora en que escribo, el ejemplo sera sencillo y con las explicaciones mas cortas que pueda.... eso sin mencionar que hoy es sabado de carnaval y hay que salir a joder un rato con los amigos borrachos.

dicho esto, abre excel y enseguida guarda un nuevo libro con el nombre que quieras.
esta vez no vamos a usar ninguna hoja ni celda, vamos a trabajar exclusivamenre en VBA.

abre el editor de vbs y crea un nuevo formulario.
a ese formulario, agregale tres textbox con sus respectivas etiquetas, agrega un boton y un listbox.
nombralos como quieras, para el ejemplo yo he utilizado los siguientes nombres:
frmPrueba
lstDatos
lblA
lblB
lblC
txtA
txtB
txtC
cmdAdd

este es el aspecto que podria tener el form:


ahora, al listbox, en sus propiedades, vamos a poner que use tres columnas.
eso se hace en la propiedad COLUMNCOUNT que por defecto viene con el valor 1, ahi le ponemos 3


y eso es todo en cuanto al diseño.

ahora viene lo mas sencillo, el codigo.
este es el codigo del boton, en el cual hacemos dos validaciones:
1- se valida que los valores de los textboxs no sean vacios
2- cuando se han insertado 5 registros, entonces se provoca un error a proposito, el cual estaremos esperando para interceptarlo y mostrar un msg, de esta manera, el programa no se detiene ni se interrumpe, sino que solo muestra el msg de que algo ha ocurrido pero podemos seguir usando el form sin ningun problema.


y a continuacion, el segundo proceso, que es el agregado de un registro a un listbox con mas de una columna, en nuestro caso, tres columnas


creo que no esta de mas mencionar que para asignar los valores de un registro en un listbox multicolumn se hace de la siguiente manera
listbox.column(indexColumna, indexFila) = valor
y para obtener el valor de una columna es lo inverso
valor = listbox.column(indexColumna, indexFila)

y eso es todo.
de esta manera, tenemos un form que nos muestra como capturar errores que podrian suceder por parte del usuario, como busquedas sin resultados, numeros incorrectos, mala ortografia, etc.
pero tambien nos muestra el mismo form como podemos usar un listbox multicolum que seria muy util a la hora de mostrar o capturar datos en forma de registros.









para los que quieran el libro de ejemplo y las imagenes, aqui esta el
http://1drv.ms/1eNXvop

saludos y que tengan un buen carnaval.
Datos archivados del Taringa! original
5puntos
99visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
4visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

k
kill_spinal🇦🇷
Usuario
Puntos0
Posts12
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.