Generar Impresión Información Seleccionada

Buenas Noches
Tengo el siguiente inconveniente, les agradecería enormemente si pudieran colaborarme:
Debo realizar un documento en excel con las siguientes caracteristicas; en la columna A de nombre "Artículo" deben ubicarse 10 registros, en la columna B de nombre "Descripción" deben ubicarse 10 registros (equivalentes a cada articulo), en la columna B de nombre "Valor" deben ubicarse 10 registros (equivalentes a cada articulo y a cada descripción).
Una de las características especiales del documento en excel es que cada articulo debe tener la opción de ser seleccionado mediante un checkbox o un checkpoint, de tal manera de que el usuario (en este caso yo) pueda seleccionar libremente diferentes artículos y que al finalizar dicha selección tanto los nombres de los artículos, como su descripción y obviamente su precio sean exportados a otro documento, sea en el mismo excel (en otra hoja) o en un documento en word para imprimir dicha información (unicamente la que yo como usuario seleccioné).
El problema es que no sé como lograr dicho objetivo y aunque he investigado sobre la configuración de los checkbox, no he logrado nada relacionado con el caso que les expongo.
Agradezco su atención y recomendaciones.
Att: IJUR.

1 Respuesta

Respuesta
1
1. Crea un userform (userform1) con cuadro de lista (listbox1) y un botón (commandbutton1).
2. Ajusta la propiedad columncount de listbox1 a 3
3. Ajusta la propiedad rowsource de listbox1 a "hoja1!A2:A6". Este rango de datos será el que se cargará en el listbox.
4. Ajusta la propiedad multiselect a 2-fmMultiSelectExtended
5. En el evento click del commandbutton1 escribe:
dim fila,i as integer
fila=1
for i=1 to listbox.listcount-1
  if listbox1.selected(i) then
    sheets(3).cells(fila,10) =listbox1.list(i)
    sheets(3).cells(fila,11)= listbox1.list(i,1)
    sheets(3).cells(fila,12)=listbox1.list(i,2)
    fila=fila+1
  end if
next
Esto te copiará los valores seleccionados del cuadro de lista en la hoja 3, columnas 10, 11 y 12.
Ya me dirás qué tal te fue.
Buenas Noches.
Gracias por tu colaboración. He seguido cada una de las instrucciones que me indicas más sin embargo al llegar a la última parte del código del CommandButton se presenta el error "Se ha producido el error '424' en tiempo de ejecución. Se requiere un objeto".
El código del CommandButton ha quedado así:
Private Sub CommandButton1_Click()
Dim fila, i As Integer
fila = 1
For i = 1 To ListBox.ListCount - 1
If ListBox1.Selected(i) Then
Sheets(3).Cells(fila, 10) = ListBox1.List(i)
Sheets(3).Cells(fila, 11) = ListBox1.List(i, 1)
Sheets(3).Cells(fila, 12) = ListBox1.List(i, 2)
fila = fila + 1
End If
Next
End Sub
¿Hace falta algo? ¿O dónde dice Sheets debo poner Hoja3?
Agradezco tu colaboración y respuesta.
Att: IJUR.
La fila 4 del código debe decir:
For i=1 to ListBox1.ListCount-1
Prueba ahora. El error se debía a que no reconoce el objeto ListBox porque no existe, debe ser ListBox1.
Si quieres usar el descriptor en lugar del índice puedes hacer, en lugar de:
Sheets(3). Cells(...
Sustituyes por:
Sheets("Hoja3"). Cells(...
Si no te funciona después de esto puedes pasarme una dirección de mail donde pueda enviarte un fichero Excel de prueba...
Hola, buenas noches.
Realicé el cambio que me sugeriste con respecto al "ListBox1" pero en el momento ejecutar las acciones en dicho Form (primero seleccionado un item de la lista, y en segundo lugar haciendo click sobre el command button) se esta generando el error: "Se ha producido el error '-2147024809 (80070057)' en tiempo de ejecución: No se puede obtener la propiedad List. Argumento no válido".
¿Ahora qué hago? ... Quedo atenta a tu respuesta y/o recomendación.
PD: Mi e-mail es: [email protected].
Att: IJUR.
Ok. Te he pasado un archivo con el código a tu dirección de mail.
Buenas Noches.
Acabo de observar el documento en excel que amablemente me enviaste, voy a tomarlo como base para ingresar los items necesarios, sus descripciones y su valor; adicionalmente voy a elaborar un formato de impresión (hoja2) para que los items que sean seleccionados queden registrados en una ubicación específica (ya sea con por tipo de letra, por tamaño, por color, etc).
Si llega a presentarse algún inconveniente y/o pregunta ante algún otro requerimiento, volveré a contactarte.
Mil gracias.
Att: IJUR.
Ok. Por el momento, cierra la pregunta.
Buenas tardes.
Mientras termino de ajustar el tema a partir del requerimiento mencionado anteriormente, cierro la llamada muy atentamente agradecida por tu colaboración.
att: ijur.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas