Excel - ayuda con macro

 
Vista:

ayuda con macro

Publicado por Jose Luis (2 intervenciones) el 07/10/2007 09:19:24
Hola, la verdad necesito que me ayuden a diseñar una macro, tengo que confesar que soy novato en las macros, tengo la idea, pero no se como desarrollarla, se algunos comando de vba, pero no todos, eso me limita, espero su comprencion.

Bueno lo que quiero hacer es crear un formulario donde tenga dos combobox, que carguen automaticamente (al inciarse) las hojas que contiene un libro de trabajo(en este caso en lugar de decir hoja1,hoja2 ....etc, tienen las fechas, 010907,020907,030907 ....etc y tienen como datos las ventas del dia), con el fin de que el usuario escoja (combobox1 010907, combobox2 030907 y cuando llegue al final de mes el usuario pueda escoger las fechas mediante los combobox)para despues graficar los datos deacuerdo a las fechas que escogio el usuario, que pueden ser desde una semana, una quincena o todo el mes,voy agraficar mediante un boton , pero la verdad no se que funcion o que codigo utilizar para hacer ese procedimiento de las hojas, ¿que procedimiento o funcion uso para extraer las hojas de trabajo y cargarlas en los 2 combobox? y despues graficarlas.

De antemano mil gracias, recibo ideas y sugerencias para realizar esta macro.

gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:ayuda con macro

Publicado por Guillermo (19 intervenciones) el 11/10/2007 02:19:02
José Luis, no entendí muy bien que es lo que necesitas.

No obstante te paso algo para que empieces.

Primero en un libro donde guardarás los macros, en la pantalla de Visual Basic insertas un formulario. A los efectos del ejemplo es el UserForm1

Allí insertas un ComboBox, que se llama ComboBox1 que es donde estarán los nombres de las hojas del libro activo.

Para ejecutar todo esto yo inserté dos botones, uno confirma la elección y el otro sale del formulario.

A continuación te pego el código que va en el formulario:

Private Sub CommandButton1_Click()
'este es el botón 1

If IsNull(Me.ComboBox1.Value) Or Me.ComboBox1.Value = "" Then
'si el valor del combobox1 es nulo o vacío, te aparece el mensaje
MsgBox "Debe seleccionar una opción", vbOKOnly + vbInformation, "atención"
GoTo fin 'y luego vuelve al formulario
Else
'en el caso contrario, se posiciona en la hoja seleccionada
'del libro activo (que puede ser uno distinto al que tiene guardada la macro)
ActiveWorkbook.Worksheets(Me.ComboBox1.Value).Activate
End If

Unload UserForm1 'esto cierra el formulario
fin:

End Sub

Private Sub CommandButton2_Click()
Unload UserForm1 'esto cierra el formulario
End Sub

Private Sub UserForm_Initialize()
'esto se ejecuta cuando se incializa el formulario

'recorre las hojas del libro activo
For Each hoja In ActiveWorkbook.Worksheets
'agrega al combobox1 los nombres de las hojas del libro
Me.ComboBox1.AddItem hoja.Name

Next hoja

End Sub

SI QUIERES puedes poner un botón con el siguiente macro (en la pantalla de visual basic dentro de un modulo)

Sub EleccionHoja()
'esto muestra el formulario UserForm1
UserForm1.Show

End Sub

Espero haberte ayudado.
Cualquier cosa nos seguimos comunicando.

Saludos
Guillermo (Montevideo-Uruguay)
[email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar