Suma – Resta de fechas y horas con DatetimePicker en Vb.Net

 

Buen día para todos,

En este día quiero compartir otro pequeño tutorial en el que aprenderemos a realizar las operaciones de suma y resta tanto a fechas como a las horas mediante el uso del control DateTimePicker en Vb.Net, lo que nos resulta muy importante a la hora de obtener rangos de fecha u horarios dependiendo del proyecto que estemos desarrollando.

Para comenzar ya he creado un proyecto que he llamado “Tutorial_Rango_Fecha_Hora”, al cual le he agregado los siguiente controles:

  • 4 DateTimePicker: En la propiedad “Name” (DtpFechaInicio, DtpFechaFinal, DtpHoraInicio, DtpHoraFinal), para los controles de fecha en su propiedad “Format” (Short) y los controles de tipo hora en su propiedad “Format” (Time) y la propiedad “ShowUpDown” (True).
  • 4 NumericUpDown: En la propiedad “Name” (NudFechaInicio, NudFechaFinal, NudHoraInicio, NudHoraFinal).
  • 1 Button: En la propiedad “Name” (BtnCalcular) y la propiedad “Text” (Calcular Resultados).
  • 10 Labels: En la propiedad “Name” (LblCantidadDias, LblCantidadMeses, LblCantidadAños, LblSumaDias, LblRestaDias, LblCantidadHoras, LblCantidadMinutos, LblCantidadSegundos, LblSumaMinutos, LblRestaMinutos).

Una vez finalizado nuestro formulario debería tener una apariencia similar a la siguiente:

sshot-1
Formulario de Ejemplo

Para continuar debemos conocer un poco la función “DateDiff”, la cual Devuelve un valor Long que especifica el número de intervalos de tiempo entre dos valores Date, ahora que sabemos para que nos sirve les dejo un link en donde encontraran información mas detalla de sus características y uso.

Función DateDiff

Como podemos identificar en el enlace anterior la función DateDiff necesita de unos parámetros para que se ejecute correctamente, para nuestro ejemplo solo explicare los que son obligatorios, los cuales son:

  • Interval: Es de carácter obligatorio y representa el intervalo de tiempo que se desea utilizar como unidad de diferencia entre Date1 y Date2.
  • Date1: Es de carácter obligatorio y corresponde al primer valor de fecha u hora que se desea utilizar en el cálculo.
  • Date2: Es de carácter obligatorio y corresponde al segundo valor de fecha u hora que se desea utilizar en el cálculo.
sshot-2
Valores que puede tomar el parámetro Interval

También utilizaremos los métodos del control “DateTimePicker” correspondiente como son:

  • DateTime.AddDays: El cual suma el número especificado de días al valor de esta instancia.
  • DateTime.AddMinutes: El cual suma el número especificado de minutos al valor de esta instancia.

De igual manera les comparto los link en donde encontraran mas información sobre el uso de estos métodos.

Método DateTime.AddDays

Método DateTime.AddMinutes

Ahora que hemos definido la función y los métodos que emplearemos en el ejemplo pasaremos a crear dos funciones, una para los procesos de fechas y la otra para los procesos de horas; comenzaremos con la función de fechas y la llamaremos “Calcular_Fechas” dentro de esta función escribiremos el siguiente código.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
':::Funcion para realizar las operaciones con las fechas
    Sub Calcular_Fechas()
        ':::Obtenemos las fechas en formato DATE
        ':::Observese que al final del valor despues de Value agrego ToShortDateString, esto con el fin de que me tome
        ':::Solo el valor de la fecha y me omita el valor de la hora
        Dim Fechainicio As Date = DtpFechaInicio.Value.ToShortDateString
        Dim FechaFinal As Date = DtpFechaFinal.Value.ToShortDateString
        ':::Calculamos la diferencia de dias entre las 2 fechas
        LblCantidadDias.Text = DateDiff(DateInterval.Day, Fechainicio, FechaFinal)
        ':::Calculamos la diferencia de meses entre las 2 fechas
        LblCantidadMeses.Text = DateDiff(DateInterval.Month, Fechainicio, FechaFinal)
        ':::Calculamos la diferencia de años entre las 2 fechas
        LblCantidadAños.Text = DateDiff(DateInterval.Year, Fechainicio, FechaFinal)
        ':::Calculamos la fecha inicio sumando los dias indicados
        LblSumaDias.Text = Fechainicio.AddDays(NudFechaInicio.Value)
        ':::Calculamos la fecha final restando los dias indicados, observese que le agregue un signo menos
        ':::Al valor obtenido del control NudFechaFinal
        LblRestaDias.Text = FechaFinal.AddDays(-NudFechaFinal.Value)
    End Sub

Para continuar crearemos la función para los procesos de horas, la cual llamaremos “Calcular_Horas” y dentro de la cual escribiremos el siguiente código.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
':::Funcion para realizar las operaciones con las horas
    Sub Calcular_Horas()
        ':::Obtenemos las horas en formato DATE
        ':::Observese que al final del valor despues de Value agrego ToLongTimeString, esto con el fin de que me tome
        ':::Solo el valor de la hora y me omita el valor de la fecha
        Dim HoraInicio As Date = DtpHoraInicio.Value.ToLongTimeString
        Dim HoraFinal As Date = DtpHoraFinal.Value.ToLongTimeString
        ':::Calculamos la diferencia de horas entre las 2 horas
        LblCantidadHoras.Text = DateDiff(DateInterval.Hour, HoraInicio, HoraFinal)
        ':::Calculamos la diferencia de minutos entre las 2 horas
        LblCantidadMinutos.Text = DateDiff(DateInterval.Minute, HoraInicio, HoraFinal)
        ':::Calculamos la diferencia de segundos entre las 2 horas
        LblCantidadSegundos.Text = DateDiff(DateInterval.Second, HoraInicio, HoraFinal)
        ':::Calculamos la hora inicio sumando los minutos indicados
        LblSumaMinutos.Text = HoraInicio.AddMinutes(NudHoraInicio.Value).ToLongTimeString
        ':::Calculamos la hora final restando los minutos indicados, observese que le agregue un signo menos
        ':::Al valor obtenido del control NudHoraFinal
        LblRestaMinutos.Text = HoraFinal.AddMinutes(-NudHoraFinal.Value).ToLongTimeString
    End Sub

Como podemos observar su aplicación es muy sencilla y para los casos en los que necesitamos agregar ya sea días o minutos, segundos… el valor sera positivo y en el caso que se quiera restar el valor sera negativo.

Para terminar llamamos nuestras funciones desde el botón que hemos creado, para lo cual damos doble clic en el control y escribimos el siguiente código.

1
2
3
4
5
Private Sub BtnCalcular_Click(sender As Object, e As EventArgs) Handles BtnCalcular.Click
   ':::Llamamos las funciones creadas
   Calcular_Fechas()
   Calcular_Horas()
End Sub

Realizamos una prueba para verificar que nuestro procedimientos se ejecutan correctamente.

sshot-3
Resultados

Como podemos observar todo funciona correctamente, los procedimientos reciben los parámetros y se ejecutan retornando los resultados esperados.

Como siempre dejare el proyecto en un enlace de Mega para que lo descarguen y estudien mas detenidamente.

https://goo.gl/fC6qbF

 

Cualquier duda estaré presto a colaborar en todo lo que me este posible.

Buen día para todos.

Formato 24 horas para vb.net

txtTo.Text = DateTime.Now.ToString("mm/dd/yyyy HH:mm:ss");

si agrego tt cambia a AM y PM

Dim hora As String = date1.ToString(“dd/MM/yyyy hh:mm:ss tt”)

 

Aquí hay algunos formatos:

Format(Now, “d/m/aa”) 1/12/01
Format(Now, “dddd, dd mmmm, aaaa”) sábado, 01 diciembre, 2001
Format(Now, “d-mmm”) 1-dic
Format(Now, “mmmm-aa”) diciembre-01
Format(Now, “hh:mm AM/PM”) 07:18 AM
Format(Now, “h:mm:ss a/p”) 7:18:00 a
Format(Now, “d-mmmm h:mm”) 1-diciembre 7:18

Funcion DATEPART SQL SERVER

Sintaxis

SQLCopiar
DATEPART ( datepart , date )  

Argumentos

parte de fecha
Es la parte de fecha (un valor de fecha u hora) para el que un entero se devolverá. La siguiente tabla se recogen válidos datepart argumentos. Los equivalentes de variables definidas por el usuario no son válidos.

parte de fecha Abreviaturas
año AAaaaa
trimestre TTpreguntas
mes mmm
DAYOFYEAR dyy
día ddd.
semana wkww
día de la semana almacenamiento de datos
hora hh
minuto Mi, n
segundo sss
milisegundo MS
microsegundos MCS
nanosegundos NS
TZoffset TZ
ISO_WEEK isowkisoww

date
Es una expresión que se pueda resolver como un tiempofechasmalldatetimedatetimedatetime2, o datetimeoffset valor. fecha puede ser una expresión, la expresión de columna, la variable definida por el usuario o la cadena literal.
Para evitar ambigüedades, use años de cuatro dígitos. Para obtener información sobre los años de dos dígitos, consulte configurar two digit year cutoff Server Configuration Option.

Tipo devuelto

int

Valor devuelto

Cada datepart y sus abreviaturas devuelven el mismo valor.

El valor devuelto depende del entorno del idioma definido mediante el uso de SET LANGUAGE y la configurar la opción de configuración de servidor idioma predeterminado del inicio de sesión.Si fecha es una cadena literal en algunos formatos, el valor devuelto depende del formato especificado mediante el uso de SET DATEFORMAT. SET DATEFORMAT no afecta al valor devuelto cuando la fecha es una expresión de columna de un tipo de datos de hora o fecha.

En la tabla siguiente se enumera todos los datepart argumentos con el correspondiente devuelven valores para la instrucción SELECT DATEPART(datepart,'2007-10-30 12:15:32.1234567 +05:10'). Tipo de datos de la fechaargumento es datetimeoffset(7). El nanosegundosdatepart devolver valor tiene una escala de 9 (. 123456700) y las dos últimas posiciones son siempre 00.

parte de fecha Valor devuelto
año, aaaa, AA 2007
trimestre, p, q 4
mes, mm, m 10
DAYOFYEAR, dy, y 303
día, dd, d 30
semana, wk, ww 45
día de la semana, almacenamiento de datos 1
hora, hh 12
minuto, n 15
segundo, ss, s 32
milisegundo, ms 123
microsegundos, mcs 123456
nanosegundos, ns 123456700
TZoffset, tz 310

Argumentos de datepart de la semana y día de la semana

Cuando datepart es semana (wkww) o weekday (dw), el valor devuelto depende del valor que se establece mediante SET DATEFIRST.

El 1 de enero de cualquier año define el número inicial de la semanadatepart, por ejemplo: DATEPART (wk, ‘ 1 de Jan, xxxx’) = 1, donde xxxx es cualquier año.

En la tabla siguiente enumera el valor devuelto de semana y weekdaydatepart para ‘ 2007-04-21’ para cada argumento de SET DATEFIRST. El 1 de enero es un lunes del año 2007. El 21 de abril es sábado en el año 2007. El valor predeterminado para inglés de EE.UU. es SET DATEFIRST 7, Sunday Inglés.

SET DATEFIRST

argumento

week

devuelto

weekday

devuelto

1 16 6
2 17 5
3 17 4
4 17 3
5 17 2
6 17 1
7 16 7

Argumentos de datepart year, month y day

Los valores que se devuelven para DATEPART (añofecha), DATEPART (mesfecha) y DATEPART (día , fecha) son los mismos que los devueltos por las funciones añomes, y día, f respectivamente.

ISO_WEEK datepart

ISO 8601 incluye el sistema ISO de fecha-semana, un sistema de numeración para las semanas.Cada semana se asocia al año en el que cae el jueves. Por ejemplo, la semana 1 de 2004 (2004W01) abarca del lunes 29 de diciembre de 2003 al domingo 4 de enero de 2004. El número de semana más alto en un año puede ser 52 o 53. Este estilo de numeración se utiliza normalmente en los países europeos, pero es poco frecuente en otros países.

Es posible que el sistema de numeración usado en varios países no se ajuste a las normas ISO.Existen por lo menos seis posibilidades, como se muestra en la tabla siguiente

Primer día de semana La primera semana del año contiene Semanas asignadas dos veces Usado por/en
Domingo 1 de enero,

El primer sábado,

1–7 días del año

United States
Lunes 1 de enero,

El primer domingo,

1–7 días del año

La mayoría de los países europeos y Reino Unido
Lunes 4 de enero,

El primer jueves,

4 a 7 días del año

No ISO 8601, Noruega y Suecia
Lunes 7 de enero,

El primer lunes,

7 días del año

No
Miércoles 1 de enero,

El primer martes,

1–7 días del año

Sábado 1 de enero,

El primer viernes,

1–7 días del año

TZoffset

El TZoffset (tz) se devuelve como el número de minutos (con signo). La instrucción siguiente devuelve un ajuste de zona horaria de 310 minutos.

SQLCopiar
SELECT DATEPART (TZoffset, '2007-05-10  00:00:01.1234567 +05:10');  

El valor de TZoffset se representa como sigue:

  • Para obtener datetime2 y datetimeoffset, TZoffset devuelve el desplazamiento de tiempo en minutos, donde el desplazamiento para datetime2 siempre es 0 minutos.
  • Para los tipos de datos que pueden convertirse implícitamente a datetimeoffset o datetime2, con la excepción de los otros tipos de datos de fecha y hora, devuelve el desplazamiento de tiempo en minutos.
  • Parámetros de todos los demás tipos producirá un error.

Argumento date smalldatetime

Cuando fecha es smalldatetime, segundos se devuelven como 00.

Valor predeterminado devuelto por una parte de fecha que no se encuentra en un argumento date

Si el tipo de datos de la fecha argumento no tiene especificado datepart, el valor predeterminado de datepart se devolverán solo cuando se especifica un literal para fecha.

Por ejemplo, el valor predeterminado año año-mes-día para cualquier fecha tipo de datos es 1900-01-01. La instrucción siguiente tiene argumentos de la parte de fecha para datepart, un argumento de tiempo para fechay devuelve 1900, 1, 1, 1, 2.

SQLCopiar
SELECT DATEPART(year, '12:10:30.123')  
    ,DATEPART(month, '12:10:30.123')  
    ,DATEPART(day, '12:10:30.123')  
    ,DATEPART(dayofyear, '12:10:30.123')  
    ,DATEPART(weekday, '12:10:30.123');  

Si fecha no se especifica como una variable o columna de tabla y los datos de tipo para que variable o columna no tiene especificado datepart, se devuelve el error 9810. El siguiente código de ejemplo se produce un error porque el año de la parte de fecha no es válida para la tiempotipo de datos declarado de la variable @t .

SQLCopiar
DECLARE @t time = '12:10:30.123';   
SELECT DATEPART(year, @t);  

Las fracciones de segundo

Las fracciones de segundo se devuelven como se indica en la instrucción siguiente:

SQLCopiar
SELECT DATEPART(millisecond, '00:00:01.1234567'); -- Returns 123  
SELECT DATEPART(microsecond, '00:00:01.1234567'); -- Returns 123456  
SELECT DATEPART(nanosecond,  '00:00:01.1234567'); -- Returns 123456700  

Comentarios

Se puede utilizar DATEPART en la lista de selección, cláusulas WHERE, HAVING, GROUP BY y ORDER BY.

En SQL Server 2017, DATEPART convierte implícitamente los literales de cadena como un datetime2 tipo. Esto significa que DATEPART no admite el formato año-día-mes cuando se pasa la fecha como cadena. Se debe convertir explícitamente la cadena a un datetime o smalldatetime tipo que se usa el formato de ADM.

Ejemplos

En el ejemplo siguiente se devuelve el año de base. El año de base es útil para calcular fechas. En el ejemplo siguiente, la fecha se especifica como un número. Observe que SQL Server interpreta 0 como el 1 de enero de 1900.

SQLCopiar
SELECT DATEPART(year, 0), DATEPART(month, 0), DATEPART(day, 0);  
-- Returns: 1900    1    1 */  

En el ejemplo siguiente se devuelve la parte del día de la fecha 12/20/1974.

SQLCopiar
-- Uses AdventureWorks  

SELECT TOP(1) DATEPART (day,'12/20/1974') FROM dbo.DimCustomer;  

El conjunto de resultados es el siguiente.

Copiar
--------
20

En el ejemplo siguiente se devuelve la parte del año de la fecha 12/20/1974.

SQLCopiar
-- Uses AdventureWorks  

SELECT TOP(1) DATEPART (year,'12/20/1974') FROM dbo.DimCustomer;  

El conjunto de resultados es el siguiente.

Copiar
--------
1974

Tratamiento de fechas y horas en SQL Server

Introducción.

El tratamiento de fechas en SQL Server es uno de temas que más preguntas generan en los foros y grupos de noticias. SQL Servertiene los tipos de datos datetime y smalldatetime para almacenar datos de fecha y hora.

No hay tipos de datos diferentes de hora y fecha para almacenar sólo horas o sólo fechas. Si sólo se especifica una hora cuando se establece un valor datetime o smalldatetime, el valor predeterminado de la fecha es el 1 de enero de 1900. Si sólo se especifica una fecha, la hora será, de forma predeterminada, 12:00 a.m. (medianoche), es decir, las 00:00.

Nota Importante: En SQL Server 2008 sí que tenemos como novedad tipos de datos para almacenar sólo la fecha y sólo la hora. Por tanto todo lo que contamos a continuación se puede solucionar usando los nuevos tipos de datos.


Tipo de datos Datetime.

Datos de fecha y hora comprendidos entre el 1 de enero de 1753 y el 31 de diciembre de 9999, con una precisión de un trescientosavo de segundo, o 3,33 milisegundos.

SQL Server rechaza todos los valores que no puede reconocer como fechas entre 1753 y 9999.


Tipo de datos Smalldatetime.

Datos de fecha y hora desde el 1 de enero de 1900 al 6 de junio de 2079, con precisión de minutos. Entonces si se utiliza un valor smalldatetime los segundos y milisegundos son siempre 0.

Diferencia entre Datetime y Smalldatetime.

SQL Server almacena internamente los valores de tipo de datos datetime como enteros de 4 bytes y los valores smalldatetime como enteros de 2 bytes.


Funciones de fecha y hora (Transact-SQL)

Estas funciones escalares realizan una operación sobre un valor de fecha y hora de entrada, y devuelven un valor de cadena, numérico o de fecha y hora:

DATEADD
DATEDIFF
DATENAME
DATEPART
GETDATE
DAY
MONTH
YEAR


Trabajando con fechas …

Con algunos pequeños ejemplos trataremos de resolver los mayores problemas para trabajar con estos tipos de datos. Para ello utilizaremos las funciones CAST y CONVERT.

Separando Fecha y Hora.

Declare @Fecha datetime
Set @Fecha = Getdate()
Select Convert(Char(10), @Fecha,112) As SoloFecha, Convert(Char(8), @Fecha, 108) As SoloHora
SoloFecha SoloHora
———- ——–
20010803 07:35:02
(1 row(s) affected)

Otra forma de conseguir el mismo resultado:

Declare @Fecha datetime
Set @Fecha = Getdate()
SELECT Convert(varchar, @Fecha, 3) AS SoloFecha, Convert(varchar, @Fecha, 8)

Operaciones con Fechas (diferencia entre dos fechas).

Obtener diferencia de meses, dias, minutos, etc. entre dos fechas.

Para realizar operaciones entre dos fechas MSSQL tiene la función DATEDIFF. Veamos algunos ejemplos de cómo utilizarla:

declare @FechaIngreso datetime
declare @FechaEgreso datetime

select @FechaIngreso = ‘19981231 15:15’
select @FechaEgreso = ‘20021005 10:10’

Select
DATEDIFF(dd, @FechaIngreso, @FechaEgreso) AS Dias,
DATEDIFF(mm, @FechaIngreso, @FechaEgreso) AS Meses,
DATEDIFF(mi, @FechaIngreso, @FechaEgreso) AS Minutos

Para obtener otras diferencias podemos recurrir a la siguiente tabla:

Parte de la fecha Abreviaturas
año aa, aaaa
trimestre tt, t
mes mm, m
día del año da, a
día dd, d
semana sm, ss
hora hh
minuto mi, n
segundo ss, s
milisegundo Ms

Otro ejemplo de DATEDIFF en donde recuperados los datos de la ultima semana partiendo de la fecha del día:

SELECT TusDatos
FROM TuTabla
WHERE
DATEDIFF(dd, TuFecha, GetDate()) <= 7

Continuando con las operaciones con las fechas, veamos como podemos hacer para sumar, restar, días, minutos, meses, a una fecha, para ello utilizamos la función DATEADD:

select convert(varchar(12), DATEADD(month, -1, getdate()), 106)
as ‘un mes atrás’
select convert(varchar(12), DATEADD (week, -1, getdate()), 106)
as ‘una semana atrás’
select convert(varchar(12), DATEADD (day, -1, getdate()), 106) as ‘ayer’

Sugerencia:

Estos ejemplos que mostramos a continuación devolverían el mismo resultados que las consultas anteriores, pero, si, siempre hay un pero…. hace un tiempo nuestro compañero Fernando Guerrero me sugirió no utilizarlo pues este truco no está soportado oficialmente por SQL Server ni por el estándar ANSI.

select convert(varchar(12), getdate()-7), 106) as ‘una semana atrás’
select convert(varchar(12), getdate()-1), 106) as ‘Ayer’

Funciona, pero no sabemos hasta cuando.

Capturar y mostrar datos de un DataGridView en Vb.Net

Buen día para todos,

Hoy quiero compartir con ustedes otro pequeño tutorial en donde aprenderemos a capturar la información de una fila en un control DataGridView y mostrarla de forma ordena y con el formato que necesitemos.

Para comenzar ya he creado un nuevo proyecto y le he agregado seis (6) controles configurados así:

  • 5 Labels: Con su propiedad Name en (LblId, LblNombres, LblApellidos, LblFecha, LblHora) y con los textos (ID:, Nombres: Apellidos:, Fecha: Hora:).
  • DataGridView: Con su propiedad Name en (DGTabla).

Una vez agregado nuestro controles, el formulario debe quedar así:

sshot-1

Ahora analicemos este código: “DGTabla.CurrentRow.Cells(0).Value”, identifiquemos cada propiedad:

  • DGTabla: Corresponde a la propiedad Name de nuestro DataGridView, el nombre de nuestro control DataGridView.
  • CurrentRow: Esta propiedad del DataGridView nos permite conocer la fila en la que estamos situados actualmente.
  • Cells(): Esta propiedad nos indica la celda en la que estamos ubicados, dentro de los paréntesis es donde nosotros indicamos en que celda nos queremos ubicar. Dentro de este paréntesis podemos indicar la posición por el número de la columna o por el nombre de la columna, como nos quede mas fácil entender y usar esta propiedad.
  • Value: Esta propiedad nos devuelve el valor de la celda que le hemos indicado.

Una vez que tenemos clara cada propiedad del procedimiento vamos a seleccionar nuestro “DGTabla” y abriremos sus propiedades, seleccionaremos la opción de “Eventos” y damos doble clic en el evento “CellClick” para escribir nuestro procedimiento. Seleccionamos este evento para que nos cargue nuestro datos cuando demos “Clic” en el “DGTabla”, si queremos que se carguen los datos cuando demos “Doble Clic” entonces seleccionamos el evento “CellDoubleClick” como se muestra en la siguiente imagen.

sshot-3
Seleccionar el evento Click

Ahora que estamos dentro del evento escribimos el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
':::Variables de tipo Date para convertir fecha y hora
Dim Fecha As Date = DGTabla.CurrentRow.Cells(3).Value
Dim Hora As Date = DGTabla.CurrentRow.Cells(4).Value
':::Capturador de errores
   Try
      ':::Asignamos el valor de cada celda al control donde lo mostraremos
      LblId.Text = "ID: " & DGTabla.CurrentRow.Cells(0).Value
      ':::Podemos asignar la celda por numero o nombre de la columna
      LblNombres.Text = "Nombres: " & DGTabla.CurrentRow.Cells("Nombres").Value
      LblApellidos.Text = "Apellidos: " & DGTabla.CurrentRow.Cells(2).Value
      ':::Damos el formato de la fecha y hora que necesitamos
      LblFecha.Text = "Fecha: " & Fecha.ToString("dd/MM/yyyy")
      LblHora.Text = "Hora: " & Hora.ToString("hh:mm tt")
   Catch ex As Exception
      MsgBox("Error en la operación: " & ex.Message)
   End Try

Como podemos observar en el código anterior estamos obteniendo los datos de las celdas por medio de su indice numérico, excepto en la del campo nombres en donde le indicamos el campo por medio del nombre de la columna (Linea 9), ahora ejecutamos nuestro proyecto y damos clic en cualquier fila, veremos como se nos muestra el valor de cada celda de esa fila en su correspondiente campo (Label).

sshot-2

Nuestro procedimiento se ejecuta correctamente y nos esta capturando los datos de la fila y los muestra de forma ordenada como se lo indicamos, ademas de esto podemos identificar en la columna “Fecha” y “Hora” que el formato que tienen es diferente al que se esta mostrando en los “Labels”, lo que quiere decir que el procedimiento también esta recibiendo la fecha y la hora, ademas les esta cambiando el formato que tienen por el que le indicamos en las (Lineas 12 y 13).

Cualquier duda estaré presto a colaborarles en todo lo que me este posible.

Buen día para todos.

 

 

AUTOR: Edward Gomez

Website Built with WordPress.com.

Up ↑