Logo_Access_global_380x114Favicon_Access_global_180x180Logo_Access_global_380x114Logo_Access_global_380x114
  • Home
  • University
    • Destellos formativos
  • Labs
  • TV
  • Secciones
    • El mundo de Access
    • Explorando VBA
      • Artículos sobre VBA
      • Un trocito de código
    • Entrevistas
      • Profesionales de Access
    • El rincón de Excel
    • Bases de datos
      • MS SQL
      • MySQL
      • postgreSQL
      • SQLite
    • Clases magistrales
    • Utilidades hechas con Access
  • Access en el mundo
  • ¿Quiénes somos?
  • Cómo colaborar
  • Eventos
✕
            No hay resultados Mostrar todos los resultados
            Access: crear menú contextual
            30/01/2022
            Access: ocultar menú contextual de Access
            31/01/2022
            Mostrar todos

            Conocer el primer día de un mes

            Publicado por Rafael Andrada
            Categorías
            • Un trocito de código
            Etiquetas
            • días
            • Fecha
            • primer día mes

            Conocer el primer día de un mes según los argumentos pasados.


            Nivel: Medio

            ¿Cómo funciona?
            Pasando a la función una fecha obtendremos el primer día del mes actual, anterior a posterior según el intervalo indicado.

            Código:
            Public Function mcdtmFindDateFirstDayofMonth(ByVal dtmDateSearched As Date, ByVal intMonthsInterval As Integer) As Date
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            ' Fuente            : https://access-global.net/conocer-el-primer-dia-de-un-mes-mcdtmfinddatefirstdayofmonth/
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            ' Título            : mcdtmFindDateFirstDayofMonth.
            ' Autor original    : Rafael Andrada .:McPegasus:. | BeeSoftware.
            ' Actualizado       : 27/01/2022.
            ' Propósito         : Conocer el primer día de un mes según los argumentos pasados.
            ' Retorno           : Una fecha que corresponde al primer día del mes según los argumentos pasados.
            ' Argumento/s       : La sintaxis del procedimiento o función consta de/los siguiente/s argumento/s:
            '                     Parte                 Modo           Descripción
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            '                     dtmDateSearched       Obligatorio     El valor Date especifica la fecha desde la que se parte para conseguir el primer día del mes en caso de bytMesesIntervalo = 1.
            '                     intMonthsInterval     Obligatorio     El valor Byte especifica el contiene el intervalo de tiempo en meses que se desea agregar o disminuir.
            '                     intMonthsInterval     Opciones        En caso de 0 retorna el primer día del mes actual.
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            'Test:              : Para adaptar este código en tu aplicación puedes basarte en este procedimiento test. Copiar todo el procedimiento desde el Sub hasta el End Sub
            '                     al portapapeles y pega en el editor de VBA de tu aplicación MS Access. Descomentar todas las líneas que nos interese (se aconseja seleccionar
            '                     todas las líneas del ejemplo y utilizar el botón 'Bloque sin comentarios' de la barra de herramientas 'Edición').
            '                     Pulsar F5 para ver su funcionamiento.
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            'Test:              : Para adaptar este código en tu aplicación puedes basarte en este procedimiento test. Copiar el bloque siguiente al
            '                     portapapeles y pega en el editor de VBA. Descomentar la línea que nos interese y pulsar F5 para ver su funcionamiento.
            '
            'Sub mcdtmFindDateFirstDayofMonth_test()
            '
            '    Dim dtmDateSearched                             As Date
            '
            '
            '    dtmDateSearched = #1/27/2021#
            '    Debug.Print "Se parte de la fecha: " & dtmDateSearched & ". Primer día del mes según selección: " & mcdtmFindDateFirstDayofMonth(dtmDateSearched, 12) & ". Debe de salir: 01/01/2022"
            '
            '    dtmDateSearched = #1/27/2022#
            '    Debug.Print "Se parte de la fecha: " & dtmDateSearched & ". Primer día del mes según selección: " & mcdtmFindDateFirstDayofMonth(dtmDateSearched, 0) & ". Debe de salir: 01/01/2022"
            '
            '    dtmDateSearched = #1/27/2023#
            '    Debug.Print "Se parte de la fecha: " & dtmDateSearched & ". Primer día del mes según selección: " & mcdtmFindDateFirstDayofMonth(dtmDateSearched, -12) & ". Debe de salir: 01/01/2022"
            '
            '    Debug.Print
            '
            'End Sub
            '-----------------------------------------------------------------------------------------------------------------------------------------------
            'End Function
            '-----------------------------------------------------------------------------------------------------------------------------------------------
                 
                Dim dtmWork                                 As Date             'Para obtener un valor transitorio durante la ejecución del código.
                
                
                dtmWork = DateSerial(Year(dtmDateSearched), Month(dtmDateSearched) + intMonthsInterval, 1)
                mcdtmFindDateFirstDayofMonth = dtmWork
            
            End Function
            Ver en el repositorio
            Compartir
            4
            Rafael Andrada
            Rafael Andrada

            Entradas relacionadas

            19/03/2023

            Función que convierte cualquier carácter a texto puramente ASCII (Access VBA)


            Leer más
            24/03/2022

            Obtener la fecha del primer día de la semana o último día de la semana en Access VBA


            Leer más
            11/03/2022

            Actualizar una conexión ODBC en tiempo de ejecución


            Leer más

            Deja una respuesta Cancelar la respuesta

            Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

            ETIQUETAS

            Access API BD Botones ComboBox Consultas CountOfLines CStr Diseño DoCmd Excel Exportar Fecha FileSystemObject Filtros For Each...Next Formulario Formularios Funciones Funciones de dominio GetFolder GetWindowRect Google maps Informes InStr Kill Left Listbox Mid Módulos Node ProcCountLines Procedimientos ProcOfLine References Replace Ribbon RunCommand Seguridad Split SysCmd Tablas TreeView VBA VBIDE

            ÚLTIMAS ENTRADAS

            • 0
              Tratamiento de errores: compilación condicional
              30/03/2023
            • 0
              Tratamiento de errores: errores personalizados
              29/03/2023

            ¿QUIERES PUBLICITAR TU EMPRESA AQUÍ?

            SUSCRÍBETE A NUESTRO
            NEWSLETTER

            Recibirás información puntual sobre el mundo de Access y VBA

            ¡Próximamente!

            Promovemos el uso de Access y de la programación en VBA en todo el mundo

            Centro de conocimiento


            Toda la sabiduría de los mejores programadores de Access y VBA a tu alcance.

            Legal

            Política de privacidad

            Condiciones de uso

            Condiciones del redactor

            ®Access Global 2021 | All right reserved
                      No hay resultados Mostrar todos los resultados