.
Antes de seguir recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.
El significado de los parámetros son:
Mes dato obligatorio tipo interger, admite un número o expresión numérica por ejemplo (12-2) se esta refiriendo al mes 10 es decir octubre o por ejemplo 5+3, se esta refiriendo al mes 8; admite número entre 1 y 12 que son los meses del año.
Dia Arg30, es un dato obligatorio, tipo interger, admite un número o expresión numérica que va entre 0 y 31, cero representa el último día del mes anterior, uno el primer día y así sucesivamente; se puede usar una expresión numérica como la siguiente (31-2) se esta refiriendo al día 29 de la fecha dada, también se puede usar la siguiente expresión (20+2) representa el día 22 del mes seleccionado.
En el ejemplo que podrás descargar desde el final de la página, encontrarás un botón que tiene asignada la macro que permite determinar el último día de la fecha que se encuentra en la celda B2, tambíén se determina el primer día de la fecha, el año, mes y día de la fecha de la celda mencionada.
Para determinar el último día de la fecha, lo que hacemos es consultar por el primer día del mes siguiente usando la función DateSerial, con ello determinamos cual es el día cero del mes siguiente, obteniendo como resultado el último día del mes actual.
Para determinar el primer día de la fecha consultamos en el mes actual cual es el primer día, y la función nos devuelve el primer día del mes de la fecha que seleccionamos, esto es menos común determinar, ya que sabemos que el primer día es siempre uno, no así el último que puede ser 28, 29,0,o 31, dependiendo el mes en el que estemos o si el año es bisiesto o no para el caso del mes de febrero que puede tener 28 o 29 días; no obstante es interesante saberlo para poder asignarlo a una variable o hacer una concatenación con dicho dato, en fin hay un sin número de posibilidades en la que necesitemos este dato.
El ejemplo de macro de VBA, también incorpora un procedimiento para determinar el año, mes y día de la fecha que seleccionemos o que se encuentre en una celda, para determinar el año usamos la función «Year«, para determinar el mes la función «Month» y para saber cual es el día de la fecha seleccionada usamos la función de VBA «Day«. Quizás también te interese investigar las funciones de Excel que son utilizadas en VBA a través de WorksheetFunction.
El vídeo que sigue muestra una explicación más detallada y gráfica de la macro presentada, recomiendo observar para una más fácil comprensión de la macro; suscribe a nuestra web desde la parte superior derecha de la página ingresando tu mail y a nuestro canal de You Tube para recibir en tu correo vídeos explicativos sobre macros interesantes, como por ejemplo como copiar varias tablas vinculadas de Excel a Word, como ejecutar una macro dependiendo del valor de una celda, pasar datos de listbox a hoja de Excel, buscar en listbox mientras escribes en textbox, crear indice a hojas del mismo libro y al menú principal, conectar Excel con Access e insertar datos y muchos ejemplos más.
if (payload.eventType == ‘subscribe’) {
// Add code to handle subscribe event.
} else if (payload.eventType == ‘unsubscribe’) {
// Add code to handle unsubscribe event.
}
if (window.console) { // for debugging only
window.console.log(‘YT event: ‘, payload);
}
}
Al final hay un link del cual podrás descargar el ejemplo y adaptarlo a tus necesidades, el código se encuentra abierto y sin ningún tipo de restricción, te recomiendo descargar el ejemplo y ver su codificación y funcionamiento.
Código que se inserta en un userform
Sub ultimoDia()
Dim primerDia, ultimoDia As Date
Dim dia, año, mes
primerDia = DateSerial(Year(Cells(2, 2)), Month(Cells(2, 2)), 1)
ultimoDia = DateSerial(Year(Cells(2, 2)), Month(Cells(2, 2)) + 1, 0)
mes = Month(Cells(2, 2))
año = Year(Cells(2, 2))
dia = Day(Cells(2, 2))
Cells(2, 4) = «El primer día de la fecha es » & primerDia
Cells(3, 4) = «El último día de la fecha es » & ultimoDia
Cells(4, 4) = «El año de la fecha es » & año
Cells(5, 4) = «El mes de la fecha es » & mes
Cells(6, 4) = «El día de la fecha es » & dia
End Sub
Sub ultimoDia()
Dim primerDia, ultimoDia As Date
Dim dia, año, mes
primerDia = DateSerial(Year(Cells(2, 2)), Month(Cells(2, 2)), 1)
ultimoDia = DateSerial(Year(Cells(2, 2)), Month(Cells(2, 2)) + 1, 0)
mes = Month(Cells(2, 2))
año = Year(Cells(2, 2))
dia = Day(Cells(2, 2))
Cells(2, 4) = «El primer día de la fecha es » & primerDia
Cells(3, 4) = «El último día de la fecha es » & ultimoDia
Cells(4, 4) = «El año de la fecha es » & año
Cells(5, 4) = «El mes de la fecha es » & mes
Cells(6, 4) = «El día de la fecha es » & dia
End Sub
.
If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends