Trabajar con fechas

El problema que tengo es que no halla como hacer para que excel 200 me realize la siguiente aplicación.
Que al pulsar un botón en el formulario que tengo hecho en VBA me pida el mes y que al ingresar el mes en letra es decir "enero o febrero hasta diciembre" me extraiga de una hoja llamada "salidas" el código del producto vendidos en ese mes.
El formato de fecha que tengo registrado en la hoja salidas es 10/02/20010 si alguien me puede ayudar se lo agradezco

1 respuesta

Respuesta
1
Es posible que sea más operativo que en vez de introducir los meses en letras te crees una combobox y en combobox_click asignes el numero del mes a mes clickado.
Una vez hayas elegido el mes, guardas el numero del mes en una variable (por ejemplo mes_pulsado).
Para buscar los meses coincidentes creas una subrutina que lea las casillas de fecha de tu hoja y compares: IF MES(CELLS(X, Y,). VALUE)=MES_PULSADO ENTONCES GUARDAS LA INFORMACIÓN DONDE QUIERAS.
Espero te sirva, si no es así desarrolla un poco más tu problema.
Ya logre resolver este problema con una macro, que realize en la hoja reportes en la cual introduzco la fecha inicial y la fecha final, pero se me está presentando un problema, que en la hoja salidas tengo una columna que me guarda el registro de fecha y utilizo esta macro para que me compare las fechas guardada en la columna4 menos 15 días con la fecha del sistema de manera que me coloque en amarillo la celda el la cual falten quince días para llegar a la fecha del sistema. Te explico lo que quiero:
Deseo que saber donde coloco este código para que mientras yo este trabajando en el libro una vez abierto esta macro se valla ejecutanto, no al cargar el libro es decir no con "inicialize", ni con "load" ya que si tengo 80.000 mil registro y mando a ejecutar esta macro al abrir el libro me tardaría mucho para cargar el libro. Aquí esta la macro si me puedes ayudar te la agradezco.
Sub MacroPrueba()
Dim filas As Double
Dim fecha As Date
Dim i As Double
Range("A2").Select
Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop
filas = ActiveCell.Row-1
For i = 2 To filas
fecha = Cells(i, 4 ).balue
If fecha = Date - 15 Then
Cells(i, 4). Select
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
End If
Netx
End Sub
A ver. Si te he entendido bien, quieres comparar una determinada fecha de referencia con las fechas que introduces en la columna 4 y te cambie el color si fecha-15 días es menor que la fecha de referencia.
Si es así igual te conviene, antes de empezar a meter datos en la columna cuatro, guardar la fecha de referencia en una casilla (cuya columna puedes ocultar para que no se vea) insertar un formato condicional (menu/formato/formato condicional). Una vez tienes introducido el formato en la primera casilla cópiala en el resto de casillas de la columna.
Automáticamente, a medida que vayas introduciendo datos te hará la comparación para la celda modificada.
Amigo Experto te aclaro un poco lo que deseo hacer en la columna4 se introducirán los datos de fecha estos datos se llaman fecha de registro de vencimiento, dependiendo de la fecha de registro inicial esta fecha de vencimiento ira variando la macro que te he enviado funciona ya que recorre la columna4 y compara todas las fechas - 15 días, con la fecha del sistema y coloca en amariillo la fecha de la columna4 que cumpla con esta condición, lo que me esta ocasionando problema es que tengo que darle a un botón para que me ejucute esta aplicación, y lo que quiero en si es que me enpiece a comparar una vez que ya se halla abierto el libro de una manera automática.
Espero tu consejo
Intenta copiar la subrutina aquí:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Esta Sub la tienes al hacer doble click sobre la hoja 1 del editor de visual. Esta subrutina trabaja cada vez que se produce un cambio en la hoja.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas