funciones vb.net.doc
TRANSCRIPT
![Page 1: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/1.jpg)
UNITEK GRUPO IDAT
Funciones Matemática
Las funciones matemáticas de Visual Basic 6 han sido reemplazadas por métodos
equivalentes en la clase System.Math de .NET Framework.
Comentarios
Los métodos matemáticos de .NET Framework funcionan del mismo modo que sus
equivalentes de Visual Basic 6, si bien algunos de sus nombres han sufrido ligeras
diferencias. Así, por ejemplo, Atan es el equivalente en .NET Framework
de la función Atn de Visual Basic 6. En la siguiente tabla se detallan
los nombres de las funciones matemáticas de Visual Basic 6 y sus
métodos equivalentes en .NET Framework:
Función de Visual Basic 6
Método de Visual Basic .NET Descripción
Abs Math.Abs (Método) Devuelve el valor absoluto de un número especificado.
Atn Math.Atan (Método) Devuelve un valor Double que contiene el ángulo cuya tangente es el número especificado.
Cos Math.Cos (Método) Devuelve un valor Double que contiene el coseno del ángulo especificado.
Exp Math.Exp (Método) Devuelve un valor Double que contiene "e" (base de los logaritmos naturales) elevado a la potencia especificada.
Log Math.Log (Método) Devuelve un valor Double que contiene el logaritmo del número especificado. Este método está sobrecargado y puede devolver o bien el logaritmo natural (de base e) del número especificado o
1
![Page 2: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/2.jpg)
UNITEK GRUPO IDAT
bien el logaritmo del número especificado en una base especificada.
Round Math.Round (Método)
Devuelve un valor de tipo Double que contiene el número más próximo al valor especificado. Existen funciones de redondeo adicionales disponibles en forma de métodos de tipos intrínsecos como Decimal.Round (Método).
Sgn Math.Sign (Método) Devuelve un valor Integer que indica el signo de un número.
Sin Math.Sin (Método) Devuelve un valor Double que especifica el seno de un ángulo.
Sqr Math.Sqrt (Método) Devuelve un valor Double que especifica la raíz cuadrada de un número.
Tan Math.Tan (Método) Devuelve un valor Double que contiene la tangente de un ángulo.
Además, la clase matemática de .NET Framework ofrece constantes y otros
métodos estáticos para funciones trigonométricas, logarítmicas y otras funciones
matemáticas habituales. Todo ello puede utilizarse en un programa de Visual
Basic.
Para utilizar estas funciones sin calificación, importe el espacio de nombres
System.Math a su proyecto agregando el siguiente código en la parte superior
del código fuente:
Imports System.Math
Requisitos
2
![Page 3: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/3.jpg)
UNITEK GRUPO IDAT
Class: Math (Clase)
Ejemplo de Abs
En este ejemplo se utiliza el método Abs de la clase Math para calcular el valor
absoluto de un número:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim MyNumber As Double
MyNumber = Abs(50.3) ' Returns 50.3.
MyNumber = Abs(-50.3) ' Returns 50.3.
Ejemplo de Atan
En este ejemplo se utiliza el método Atan de la clase Math para calcular el valor
de pi:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim pi As Double
pi = 4 * Atan(1) ' Calculate the value of pi.
Ejemplo de Cos
En este ejemplo se utiliza el método Cos de la clase Math para devolver el coseno
de un ángulo:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim MyAngle, MySecant As Double
MyAngle = 1.3 ' Define angle in radians.
MySecant = 1 / Cos(MyAngle) ' Calculate secant.
Ejemplo de Exp
En este ejemplo se utiliza el método Exp de la clase Math para devolver e elevado
a una potencia:
Imports System.Math
3
![Page 4: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/4.jpg)
UNITEK GRUPO IDAT' Code will not compile unless placed within a Sub or Function
Dim MyAngle, MyHSin As Double
' Define angle in radians.
MyAngle = 1.3
' Calculate hyperbolic sine.
MyHSin = (Exp(MyAngle) - Exp(-1 * MyAngle)) / 2
Ejemplo de Log
En este ejemplo se utiliza el método Log de la clase Math para devolver el
logaritmo natural de un número:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim MyAngle, MyLog As Double
' Define angle in radians.
MyAngle = 1.3
' Calculate inverse hyperbolic sine.
MyLog = Log(MyAngle + Sqrt(MyAngle * MyAngle + 1))
Ejemplo de Round
En este ejemplo se utiliza el método Round de la clase Math para redondear un
número al entero más próximo:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim MyVar1 As Double = 2.8
Dim MyVar2 As Double
MyVar2 =Round(MyVar1) ' Returns 3.
Ejemplo de Sign
En este ejemplo se utiliza el método Sign de la clase Math para determinar el
signo de un número:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim MyVar1, MyVar2, MyVar3 As Double
4
![Page 5: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/5.jpg)
UNITEK GRUPO IDATDim MySign As Integer
MyVar1 = 12
MyVar2 = -2.4
MyVar3 = 0
MySign = Sign(MyVar1) ' Returns 1.
MySign = Sign(MyVar2) ' Returns -1.
MySign = Sign(MyVar3) ' Returns 0.
Ejemplo de Sin
En este ejemplo se utiliza el método Sin de la clase Math para devolver el seno de
un ángulo:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim MyAngle, MyCosecant As Double
MyAngle = 1.3 ' Define angle in radians.
MyCosecant = 1 / Sin(MyAngle) ' Calculate cosecant.
Ejemplo de Sqrt
En este ejemplo se utiliza el método Sqrt de la clase Math para calcular la raíz
cuadrada de un número:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
Dim MySqr As Double
MySqr = Sqrt(4) ' Returns 2.
MySqr = Sqrt(23) ' Returns 4.79583152331272.
MySqr = Sqrt(0) ' Returns 0.
MySqr = Sqrt(-4) ' Returns NaN (not a number).
Ejemplo de Tan
En este ejemplo se utiliza el método Tan de la clase Math para devolver la
tangente de un ángulo:
Imports System.Math
' Code will not compile unless placed within a Sub or Function
5
![Page 6: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/6.jpg)
UNITEK GRUPO IDATDim MyAngle, MyCotangent As Double
MyAngle = 1.3 ' Define angle in radians.
MyCotangent = 1 / Tan(MyAngle) ' Calculate cotangent.
Requisitos
Espacio de nombres: System.Math
Ensamblado: mscorlib (en mscorlib.dll)
Vea también
Rnd (Función)
Devuelve un número aleatorio de tipo Single.
Public Shared Function Rnd[(number)] As Single
Parámetro
number Opcional. Cualquier valor Single o expresión Single válida.
Valores devueltos
Si number es Rnd genera
Menor que cero Siempre el mismo número, utilizando number como valor de inicialización.
Mayor que cero El siguiente número aleatorio en la secuencia.
Igual a cero El número generado por última vez.
Omitido El siguiente número aleatorio en la secuencia.
Comentarios
La función Rnd devuelve un valor menor que 1, pero mayor o igual a cero.
6
![Page 7: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/7.jpg)
UNITEK GRUPO IDAT
El valor de number determina la forma en que Rnd genera un número
aleatorio:
Para cualquier valor de inicialización dado, se genera la misma secuencia de
números ya que cada llamada sucesiva que se hace a la función Rnd utiliza el
número anteriormente generado como inicialización para el siguiente número
de la secuencia.
Antes de llamar a la función Rnd, utilice la instrucción Randomize sin
argumento para inicializar el generador de números aleatorios con un valor de
inicialización basado en el temporizador del sistema.
Para producir enteros aleatorios en un intervalo dado, utilice esta fórmula:
CInt(Int((upperbound - lowerbound + 1) * Rnd() + lowerbound))
En este caso, upperbound representa el número mayor del intervalo y
lowerbound, el menor del intervalo.
Nota Para repetir secuencias de números aleatorios, llame a la función Rnd con un argumento negativo justo antes de utilizar Randomize con un argumento numérico. Si utiliza Randomize con el mismo valor que number, no se repetirá la secuencia anterior.Nota de seguridad Debido a que la instrucción Random y la función Rnd comienzan con un valor de inicialización y generan números que quedan dentro de un intervalo finito, otra persona que conozca el algoritmo utilizado para generar los resultados puede predecirlos. Por tanto, la instrucción Random y la función Rnd no se deben utilizar para generar números aleatorios utilizados en criptografía.
Ejemplo
En el siguiente ejemplo se utiliza la función Rnd para generar un valor entero
aleatorio entre 1 y 6.
Dim MyValue As Integer
MyValue = CInt(Int((6 * Rnd()) + 1)) ' Generate random value between 1 and 6.
Int, Fix (Funciones)
Devuelven la parte entera de un número.
7
![Page 8: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/8.jpg)
UNITEK GRUPO IDAT
Public Shared Function Int(ByVal number As { Double | Integer | Long | Object | Short | Single | Decimal }) As { Double | Integer | Long | Object | Short | Single | Decimal }
Public Shared Function Fix(ByVal number As { Double | Integer | Long | Object | Short | Single | Decimal }) As { Double | Integer | Long | Object | Short | Single | Decimal }
Parámetro
number Requerido. Un número de tipo Double o cualquier expresión numérica válida. Si number contiene Nothing, se devolverá Nothing.
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentNullException 5 No se especifica number.
ArgumentException 5 Number no es un tipo numérico.
Comentarios
Las funciones Int y Fix eliminan la parte decimal de number y devuelven el
valor entero resultante.
La diferencia entre Int y Fix está en que si number es negativo, Int devolverá
el primer entero negativo menor o igual que number, mientras que Fix
devolverá el primer entero negativo mayor o igual que number. Por ejemplo,
Int convierte -8,4 en -9 y Fix convierte -8,4 en -8.
Por tanto, Fix(number) equivale a Sign(number) * Int(Abs(number)).
Ejemplo
En el siguiente ejemplo se muestra cómo las funciones Int y Fix devuelven las
partes enteras de distintos números. Con argumentos de número negativos, la
función Int devuelve el primer entero negativo menor o igual que el número;
8
![Page 9: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/9.jpg)
UNITEK GRUPO IDAT
mientras que Fix devuelve el primer entero negativo mayor o igual que el
número. En el ejemplo siguiente, deberá especificar Option Strict Off porque
no se permiten las conversiones implícitas de tipo Double a tipo Integer bajo
Option Strict On:
Option Strict Off
' Code will not function unless placed within a Sub or Function
Dim MyNumber As Integer
MyNumber = Int(99.8) ' Returns 99.
MyNumber = Fix(99.8) ' Returns 99.
MyNumber = Int(-99.8) ' Returns -100.
MyNumber = Fix(-99.8) ' Returns -99.
MyNumber = Int(-99.2) ' Returns -100.
MyNumber = Fix(-99.2) ' Returns -99.
Utilice la función CInt para convertir explícitamente otros tipos de datos a tipo
Integer con Option Strict Off. No obstante, Cint redondea al número entero
más próximo en vez de truncar la parte decimal de los números. Por ejemplo:
MyNumber = CInt(99.8) ' Returns 100.
MyNumber = CInt(-99.8) ' Returns -100.
MyNumber = CInt(-99.2) ' Returns -99.
Utilice la función CInt sobre el resultado de una llamada a Fix o Int para
realizar una conversión explícita a un valor entero sin redondear. Por ejemplo:
MyNumber = CInt(Fix(99.8)) ' Returns 99.
MyNumber = CInt(Int(99.8)) ' Returns 99.
Requisitos
Espacio de nombres: Microsoft.VisualBasic
Módulo: Conversion
9
![Page 10: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/10.jpg)
UNITEK GRUPO IDAT
Ensamblado: Tiempo de ejecución de Microsoft Visual Basic .NET (en
Microsoft.VisualBasic.dll)
Oct (Función)
Devuelve una cadena que representa el valor octal de un número.
Public Shared Function Oct(ByVal Number As { Byte | Short | Integer | Long | Object } ) As String
Parámetro
Number Requerido. Cualquier expresión numérica o de tipo String válida.
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentNullException 5 Number no se ha especificado.
ArgumentException 5 Number no es un tipo numérico.
Comentarios
Si Number no es ya un número entero, se redondea al número
entero más próximo antes de evaluarse.
Si Number es Oct devuelve
Un valor vacío Cero (0)
Cualquier otro número Hasta 22 caracteres octales
Puede representar números octales directamente anteponiendo &O a los
números en el intervalo correcto. Por ejemplo, &O10 representa el 8 decimal
en notación octal.
10
![Page 11: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/11.jpg)
UNITEK GRUPO IDATEjemplo
En este ejemplo se utiliza la función Oct para devolver el valor octal de un
número.
Dim MyOct As String
MyOct = Oct(4) ' Returns 4.
MyOct = Oct(8) ' Returns 10.
MyOct = Oct(459) ' Returns 713.
Hex (Función)
Devuelve una cadena que representa el valor hexadecimal de un número.
Public Shared Function Hex( _
ByVal Number As { Byte | Short | Integer | Long | Object } _
) As String
Parámetro
Number Requerido. Cualquier expresión numérica o de tipo String válida.
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentNullException 5 Number no se ha especificado.
ArgumentException 5 Number no es un tipo numérico.
Comentarios
Si Number no es ya un número entero, se redondea al número
entero más próximo antes de evaluarse.
Si Number es Hex devuelve
11
![Page 12: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/12.jpg)
UNITEK GRUPO IDAT
Un valor vacío Cero (0)
Cualquier valor numérico.
Hasta dieciséis caracteres hexadecimales.
Puede representar números hexadecimales directamente si precede los
números del intervalo apropiado con &H. Por ejemplo, &H10 representa el 16
decimal en notación hexadecimal.
Ejemplo
En este ejemplo se utiliza la función Hex para devolver el valor hexadecimal
de un número.
Dim MyHex As String
MyHex = Hex(5) ' Returns 5.
MyHex = Hex(10) ' Returns A.
MyHex = Hex(459) ' Returns 1CB.
IsNumeric (Función)
Devuelve un valor Boolean que indica si una expresión puede evaluarse como un
número.
Public Function IsNumeric(ByVal Expression As Object) As Boolean
Parámetro
Expression Requerido. Expresión Object.
Comentarios
IsNumeric devuelve True si Expression se reconoce globalmente como un
número; si no, devuelve False.
IsNumeric devuelve True si el tipo de datos de Expression es Short,
Integer, Long, Decimal, Single o Short. También devuelve True si
12
![Page 13: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/13.jpg)
UNITEK GRUPO IDAT
Expression es de tipo String y se puede convertir al tipo Double. Devuelve
False si Expression es del tipo Date.
Ejemplo
En este ejemplo se utiliza la función IsNumeric para determinar si el
contenido de una variable puede evaluarse como un número.
Dim MyVar As Object
Dim MyCheck As Boolean
' ...
MyVar = "53" ' Assign value.
MyCheck = IsNumeric(MyVar) ' Returns True.
' ...
MyVar = "459.95" ' Assign value.
MyCheck = IsNumeric(MyVar) ' Returns True.
' ...
MyVar = "45 Help" ' Assign value.
MyCheck = IsNumeric(MyVar) ' Returns False.
IsDate (Función)
Devuelve un valor de tipo Boolean que indica si una expresión puede convertirse
en una fecha.
Public Function IsDate(ByVal Expression As Object) As Boolean
Parámetro
Expression Requerido. Expresión Object.
Comentarios
IsDate devuelve True si la expresión es de tipo Date, o si es una cadena que
se puede convertir al tipo Date; si no, devuelve False.
Ejemplo
13
![Page 14: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/14.jpg)
UNITEK GRUPO IDAT
En este ejemplo se utiliza la función IsDate para determinar si varias
variables se pueden convertir a fechas.
Dim MyDate, YourDate As Date
Dim NoDate As String
Dim MyCheck As Boolean
MyDate = "February 12, 1969"
YourDate = #2/12/1969#
NoDate = "Hello"
MyCheck = IsDate(MyDate) ' Returns True.
MyCheck = IsDate(YourDate) ' Returns True.
MyCheck = IsDate(NoDate) ' Returns False.
IsError (Función)
Devuelve un valor de tipo Boolean que indica si una expresión es un tipo de
excepción.
Public Function IsError(ByVal Expression As Object) As Boolean
Parámetro
Expression Requerido. Expresión Object.
Comentarios
IsError devuelve True si la expresión representa una variable Object que se
deriva de la clase Exception en el espacio de nombres System.
Una excepción que se deriva de System.Exception puede capturarse con las
instrucciones Try...Catch...Finally.
Ejemplo
En este ejemplo se utiliza la función IsError para comprobar si una expresión
representa una excepción del sistema.
Dim ReturnVal As Object
14
![Page 15: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/15.jpg)
UNITEK GRUPO IDATDim BadArg As String ' Name of out-of-range argument.
Dim MyCheck As Boolean
' ...
ReturnVal = New System.ArgumentOutOfRangeException(BadArg)
' ...
MyCheck = IsError(ReturnVal) ' Returns True.
IsNothing (Función)
Devuelve un valor de tipo Boolean que indica si una expresión no tiene ningún
objeto asignado.
Public Function IsNothing(ByVal Expression As Object) As Boolean
Parámetro
Expression Requerido. Expresión Object.
Comentarios
IsNothing devuelve True si la expresión representa una variable de tipo
Object que no tiene actualmente ningún objeto asignado; en caso contrario,
devuelve False.
Ejemplo
En este ejemplo se utiliza la función IsNothing para determinar si una
variable de objeto está asociada a alguna instancia de objeto.
Dim MyVar As Object ' No instance assigned to this variable yet.
Dim MyCheck As Boolean
' ...
MyCheck = IsNothing(MyVar) ' Returns True.
' ...
MyVar = "ABCDEF" ' Assign a string instance to the variable.
MyCheck = IsNothing(MyVar) ' Returns False.
' ...
MyVar = Nothing ' Disassociate the variable from any instance.
15
![Page 16: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/16.jpg)
UNITEK GRUPO IDATMyCheck = IsNothing(MyVar) ' Returns True.
Funciones de Cadena
LCase (Función)
Devuelve una cadena o un carácter convertidos en minúscula.
Public Shared Function LCase(ByVal Value As Char) As Char
O bien
Public Shared Function LCase(ByVal Value As String) As String
Parámetro
Value Requerido. Cualquier expresión String o Char válida.
Comentarios
Sólo las letras mayúsculas se convierten a minúsculas; todas las letras
minúsculas y los caracteres no alfabéticos permanecerán inalterados.
Ejemplo
En el siguiente ejemplo se utiliza la función LCase para devolver la versión de
una cadena en minúscula:
Dim UpperCase, LowerCase As String
Uppercase = "Hello World 1234" ' String to convert.
Lowercase = LCase(UpperCase) ' Returns "hello world 1234".
UCase (Función)
Devuelve una cadena o un carácter que contiene la cadena especificada
convertida en mayúsculas.
Public Shared Function UCase(ByVal Value As Char) As Char
16
![Page 17: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/17.jpg)
UNITEK GRUPO IDAT
O bien
Public Shared Function UCase(ByVal Value As String) As String
Parámetro
Value Requerido. Cualquier expresión String o Char válida.
Comentarios
Sólo las letras minúsculas se convierten en mayúsculas; todas la letras
mayúsculas y caracteres sin letra permanecen inalterados.
Ejemplo
En este ejemplo se utiliza la función UCase para devolver la versión en
mayúsculas de una cadena.
Dim LowerCase, UpperCase As String
LowerCase = "Hello World 1234" ' String to convert.
UpperCase = UCase(LowerCase) ' Returns "HELLO WORLD 1234".
Len (Función)
Devuelve un entero que contiene el número de caracteres de una cadena o bien el
número de bytes necesarios para almacenar una variable.
Public Shared Function Len(ByVal Expression As { Boolean | Byte | Char | Double | Integer | Long | Object | Short | Single | String | DateTime | Decimal } ) As Integer
Parámetros
Expression Cualquier expresión String o nombre de variable válidos. Si Expression es de tipo Object, la función Len devuelve el tamaño tal como se escribirá en el archivo.
Comentarios
17
![Page 18: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/18.jpg)
UNITEK GRUPO IDAT
En el caso de tipos definidos por el usuario y variables Object, la función Len
devuelve el tamaño tal como se escribirá en el archivo. Si Object contiene
una expresión String, devolverá la longitud de la cadena. Si Object contiene
otro tipo, devolverá el tamaño del objeto tal como se escribirá en el archivo.
Nota Puede ocurrir que la función Len no alcance a determinar el número real de bytes de almacenamiento necesarios cuando se use con cadenas de longitud variable en tipos de datos definidos por el usuario.Nota La función LenB de versiones anteriores de Visual Basic devuelve el número de bytes, en lugar de caracteres. Se utiliza principalmente para convertir cadenas en aplicaciones de juegos de caracteres de doble byte (DBCS). En Visual Basic .NET, todas las cadenas están en Unicode y ya no se admite LenB.
Ejemplo
En este ejemplo se utiliza Len para devolver el número de caracteres de una
cadena:
Dim MyString As String
Dim MyLen As Integer
MyString = "Hello World" ' Initializes variable.
MyLen = Len(MyString) ' Returns 11.
Notas de programadores de Smart Device
La función Len sólo acepta como parámetros las variables String y Object. Si
Object contiene una expresión String, devolverá la longitud de String. Si un
parámetro es una referencia a un objeto NULL, la función devolverá cero. Si un
objeto contiene algún otro tipo, se iniciará una excepción.
Mid (Función)
Devuelve una cadena que a su vez contiene un número especificado de caracteres
de una cadena.
Public Shared Function Mid(ByVal Str As String, ByVal Start As Integer, Optional ByVal Length As Integer ) As String
Parámetros
18
![Page 19: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/19.jpg)
UNITEK GRUPO IDATStr
Requerido. Expresión String de la que se devuelven caracteres.
Start Requerido. Expresión Integer. Posición de carácter de Str donde comienza la parte que se va a utilizar. Si Start es mayor que el número de caracteres de Str, la función Mid devuelve una cadena de longitud cero (""). Start es de base uno.
Length Opcional. Expresión Integer. Número de caracteres que se va a devolver. Si se omite o si existen menos caracteres del número especificado por Length en el texto (incluido el carácter en la posición Start), se devuelven todos los caracteres desde la posición de inicio hasta el final de la cadena.
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentException 5 Start <= 0 o Length < 0.
Comentarios
Para determinar el número de caracteres de Str, utilice la función
Len.
Nota La función MidB de versiones anteriores de Visual Basic devuelve una cadena en bytes, en lugar de caracteres. Se utiliza principalmente para convertir cadenas en aplicaciones de juegos de caracteres de doble byte (DBCS). En Visual Basic .NET, todas las cadenas están en Unicode y ya no se admite MidB.
Ejemplo
En este ejemplo se utiliza la función Mid para devolver un número de
caracteres especificado de una cadena.
Dim MyString, FirstWord, LastWord, MidWords As String
MyString = "Mid Function Demo" ' Creates text string.
FirstWord = Mid(MyString, 1, 3) ' Returns "Mid".
LastWord = Mid(MyString, 14, 4) ' Returns "Demo".
MidWords = Mid(MyString, 5) ' Returns "Function Demo".
StrConv (Función)
Devuelve una cadena convertida según se ha especificado.
19
![Page 20: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/20.jpg)
UNITEK GRUPO IDAT
Public Shared Function StrConv(ByVal Str As String,ByVal Conversion As Microsoft.VisualBasic.VbStrConv,Optional ByVal LocaleID As Integer, ) As String
Parámetros
Str Requerido. Expresión String que se va a convertir.
Conversion Requerido. Miembro de Microsoft.VisualBasic.VbStrConv. Valor de enumeración que especifica el tipo de conversión que realizar.
LocaleID Opcional. Valor de LocaleID, cuando sea diferente del que figure en el valor LocaleID del sistema. (El valor de LocaleID del sistema es el valor predeterminado.)
Configuración
Los valores del argumento Conversion son:
Miembro de la enumeración Descripción
VbStrConv.None No se realiza ninguna conversión
VbStrConv.LinguisticCasing Usa mayúsculas o minúsculas con arreglo a criterios
lingüísticos, más que los del sistema de archivos
(predeterminado). Válido sólo con UpperCase y LowerCase.
VbStrConv.UpperCase Convierte la cadena a mayúsculas.
VbStrConv.LowerCase Convierte la cadena a minúsculas.
VbStrConv.ProperCase Pone en mayúscula la primera letra de cada palabra de la
cadena.
VbStrConv.Wide* Convierte los caracteres estrechos (ancho medio) de la cadena
en caracteres anchos (ancho completo).
VbStrConv.Narrow* Convierte los caracteres anchos (ancho completo) de la cadena
20
![Page 21: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/21.jpg)
UNITEK GRUPO IDAT
en caracteres estrechos (ancho medio).
VbStrConv.Katakana** Convierte los caracteres Hiragana de la cadena en caracteres
Katakana.
VbStrConv.Hiragana** Convierte los caracteres Katakana de la cadena en caracteres
Hiragana.
VbStrConv.SimplifiedChinese* Convierte los caracteres de chino tradicional a chino
simplificado.
VbStrConv.TraditionalChinese* Convierte los caracteres de chino simplificado en chino
tradicional.
* Se aplica a configuraciones regionales asiáticas.
** Sólo se aplica a Japón.
Nota Estas constantes se especifican en Common Language Runtime de .NET. Por tanto, pueden utilizarse en cualquier lugar del código en vez de sus valores reales. La mayoría de ellas pueden combinarse; por ejemplo, UpperCase + Wide, excepto cuando se excluyan mutuamente; por ejemplo, VbStrConv.Wide + VbStrConv.Narrow.
Éstos son los separadores de palabras válidos para el uso de mayúsculas y
minúsculas correspondiente: nulo (Chr$(0)), tabulación horizontal
(Chr$(9)), avance de línea (Chr$(10)), tabulación vertical (Chr$(11)),
avance de línea (Chr$(12)), retorno de carro (Chr$(13)), espacio (juego de
caracteres de un solo byte) (Chr$(32)). En Asia oriental, el valor real de un
espacio, que puede ser de uno o dos bytes, varía en función del país o
región.
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentException 5 LocaleID no admitido,
21
![Page 22: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/22.jpg)
UNITEK GRUPO IDAT
Conversion < 0 ó > 2048, o conversión no admitida para la configuración regional especificada.
Comentarios
Las constantes VbStrConv.Wide, VbStrConv.Narrow,
VbStrConv.Simplified Chinese, VbStrConv.Traditional Chinese,
VbStrConv.Katakana y VbStrConv.Hiragana pueden generar errores en
tiempo de ejecución cuando se utilizan en configuraciones regionales donde
no son aplicables, pero no siempre es así: las constantes
VbStrConv.Katakana y VbStrConv.Hiragana se pueden utilizar en un
sistema no japonés que tenga instalado el paquete de idioma japonés.
Además, el uso de las constantes VbStrConv.Wide y VbStrConv.Narrow
se admite en cualquier sistema que tenga instalado un idioma de Asia
oriental.
Ejemplo
En este ejemplo se pone un texto todo en minúsculas.
Dim sText, sNewText As String
sText = "Hello World"
sNewText = StrConv(sText, VbStrConv.LowerCase)
Debug.WriteLine (sNewText) ' Outputs "hello world".
Notas de programadores de Smart Device
No se admite esta función.
Str (Función)
Devuelve la representación String de un número.
Public Shared Function Str(ByVal Number As Object) As String
22
![Page 23: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/23.jpg)
UNITEK GRUPO IDATParámetro
Number Requerido. Object que contiene cualquier expresión numérica válida.
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentNullException 5 Number no se ha especificado.
InvalidCastException 5 Number no es un tipo numérico.
Comentarios
Cuando los números se conviertan a cadenas, siempre se reservará un
espacio inicial para el signo de Number. Si Number es positivo, la cadena
devuelta contiene un espacio inicial; y el signo más se da por supuesto. Un
número negativo incluirá el signo menos (-) y ningún espacio inicial.
Use la función Format para convertir valores numéricos a los que desee
aplicar formato de fecha, hora o moneda, u otros formatos definidos por el
usuario. Al contrario de lo que ocurre con la función Str, la función Format no
incluye ningún espacio inicial para el signo de Number.
La función Str sólo reconoce el punto (.) como separador decimal válido. Si se utilizan separadores decimales diferentes, como sucede en aplicaciones internacionales, debe utilizar la función CStr para convertir un número en una cadena.
Ejemplo
En este ejemplo se utiliza la función Str para devolver una representación
String de un número. Cuando los números positivos se conviertan a cadenas,
siempre se reservará un espacio inicial para su signo.
Dim MyString As String
MyString = Str(459) ' Returns " 459".
MyString = Str(-459.65) ' Returns "-459.65".
MyString = Str(459.001) ' Returns " 459.001".
23
![Page 24: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/24.jpg)
UNITEK GRUPO IDATRequisitos
Espacio de nombres: Microsoft.VisualBasic
Módulo: Conversion
Ensamblado: Tiempo de ejecución de Microsoft Visual Basic .NET (en
Microsoft.VisualBasic.dll)
Chr, ChrW (Funciones)
Devuelve el carácter asociado al código de carácter especificado.
Public Function Chr(ByVal CharCode As Integer) As Char
Public Function ChrW(ByVal CharCode As Integer) As Char
Parámetro
CharCode Requerido. Expresión Integer que representa el punto de código (code point) o código de carácter del carácter. Si CharCode está fuera del intervalo comprendido entre -32768 y 65535, se produce un error ArgumentException.
Excepciones o errores
Tipo de excepciónNúmero de error Condición
ArgumentException 5 CharCode < -32768 o > 65535.
Comentarios
El intervalo asimétrico aceptado para CharCode compensa las diferencias de
almacenamiento entre los tipos de datos Short e Integer. Por ejemplo,
&H8E01 es -29183 como Short pero +36353 como Integer. De este modo
también se facilita la compatibilidad con Visual Basic 6.0.
Chr utiliza la clase Encoding del espacio de nombres System.Text para
determinar si el subproceso actual está utilizando un juego de caracteres de
24
![Page 25: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/25.jpg)
UNITEK GRUPO IDAT
un solo byte (SBCS) o un juego de caracteres de doble byte (DBCS). Después
utiliza como punto de código el CharCode del juego correspondiente. El
intervalo puede ser del 0 al 255 para caracteres SBCS y del -32768 al 65535
para caracteres DBCS. El carácter devuelto depende de la página de códigos
del subproceso actual, que está incluida en la propiedad ANSICodePage de
la clase TextInfo. Se puede obtener TextInfo.ANSICodePage si se
especifica
System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodeP
age.
ChrW utiliza CharCode como punto de código Unicode. El intervalo no
depende de la configuración de referencia cultural y página de códigos del
subproceso actual. Los valores del -32768 al -1 se tratan igual que los valores
del intervalo del +32768 al +65535.
Los números del 0 al 31 son los mismos que los códigos ASCII estándar no
imprimibles. Por ejemplo, Chr(10) devuelve un carácter de avance de línea.
Nota La función ChrB de versiones anteriores de Visual Basic devuelve un único byte. Se utiliza principalmente para convertir cadenas en aplicaciones de juegos de caracteres de doble byte (DBCS). En Visual Basic .NET, todas las cadenas están en Unicode y ya no se admite ChrB.
Ejemplo
En este ejemplo se utiliza la función Chr para devolver el carácter asociado al
código de carácter especificado.
Dim MyChar As Char
MyChar = Chr(65) ' Returns "A".
MyChar = Chr(97) ' Returns "a".
MyChar = Chr(62) ' Returns ">".
MyChar = Chr(37) ' Returns "%".
25
![Page 26: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/26.jpg)
UNITEK GRUPO IDAT
Funciones De Fecha
Day (Función)
Devuelve un valor Integer entre 1 y 31 que representa el día del mes.
Public Function Day(ByVal DateValue As DateTime) As Integer
Parámetro
DateValue Requerido. Valor Date del cual se desea extraer el día.
Comentarios
Si se utiliza la función Day, es probable que se tenga que calificar con el
espacio de nombres Microsoft.VisualBasic, porque el espacio de nombres
System.Windows.Forms define Day como una enumeración. El ejemplo
siguiente muestra cómo se resuelve esta ambigüedad mediante la calificación
de Day:
Dim ThisDay As Integer = Microsoft.VisualBasic.DateAndTime.Day(Now)
También se puede obtener el día del mes llamando a DatePart y
especificando DateInterval.Day para el argumento Interval.
Ejemplo
En este ejemplo se utiliza la función Day para obtener el día del mes de una
fecha especificada. En el entorno de desarrollo, el literal de fecha se muestra
en formato corto estándar (por ejemplo "12/02/1969") con los valores de
configuración regional del código correspondiente.
Dim MyDate As Date
Dim MyDay As Integer
MyDate = #2/12/1969# ' Assign a date using standard short format.
MyDay = Microsoft.VisualBasic.DateAndTime.Day(MyDate) ' MyDay contains 12.
26
![Page 27: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/27.jpg)
UNITEK GRUPO IDAT
Day se califica para distinguirlo de la enumeración
System.Windows.Forms.Day.
Requisitos
Espacio de nombres: Microsoft.VisualBasic
Módulo: DateAndTime
Ensamblado: Tiempo de ejecución de Microsoft Visual Basic .NET (en
Microsoft.VisualBasic.dll)
Weekday (Función)
Devuelve un valor Integer que contiene un número que representa el día de la
semana.
Public Function Weekday( _ByVal DateValue As DateTime,Optional ByVal DayOfWeek As FirstDayOfWeek = FirstDayOfWeek.Sunday) As Integer
Valor de enumeraciónValor Descripción
FirstDayOfWeek.System 0 Primer día de la semana especificado en la configuración del sistema
FirstDayOfWeek.Sunday 1 Domingo (predeterminado)
FirstDayOfWeek.Monday 2 Lunes (de acuerdo con la norma ISO 8601, sección 3.17)
FirstDayOfWeek.Tuesday 3 Martes
FirstDayOfWeek.Wednesday
4 Miércoles
FirstDayOfWeek.Thursday 5 Jueves
27
![Page 28: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/28.jpg)
UNITEK GRUPO IDAT
FirstDayOfWeek.Friday 6 Viernes
FirstDayOfWeek.Saturday 7 Sábado
Parámetros
DateValue Requerido. Valor Date del cual se desea determinar el día de la semana.
DayOfWeek Opcional. Valor elegido de la enumeración FirstDayOfWeek que especifica el primer día de la semana. Si no se especifica ningún valor, se utiliza FirstDayOfWeek.Sunday.
Configuración
El argumento DayOfWeek puede tener uno de los siguientes valores:
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentException 5 DayofWeek es menor que 0 o mayor que 7.
Comentarios
El valor devuelto por la función Weekday corresponde a los valores de la
enumeración FirstDayOfWeek; es decir, 1 indica domingo y 7 indica
sábado.
Si DayOfWeek es inferior a 0 o mayor que 7, se produce un error
ArgumentException.
Nota Weekday utiliza la configuración de calendario actual de la propiedad CurrentCulture de la clase CultureInfo en el espacio de nombres System.Globalization. Los valores CurrentCulture predeterminados están determinados por la configuración del Panel de control.
Ejemplo
28
![Page 29: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/29.jpg)
UNITEK GRUPO IDAT
En este ejemplo se utiliza la función Weekday para obtener el día de la
semana de una fecha especificada.
Dim MyDate As Date
Dim MyWeekDay As Integer
MyDate = #2/12/1969# ' Assign a date.
MyWeekDay = Weekday(MyDate) ' MyWeekDay contains 4 because
' MyDate represents a Wednesday.
WeekdayName (Función)
Devuelve un valor String que contiene el nombre del día de la semana
especificado.
Public Function WeekdayName(ByVal WeekDay As Integer, Optional ByVal Abbreviate As Boolean = False, Optional ByVal FirstDayOfWeekValue As FirstDayOfWeek = FirstDayOfWeek.System ) As String
Parámetros
WeekDay Requerido. Integer. Designación numérica del día de la semana, entre 1 y 7; 1 indica el primer día de la semana y 7 indica el último día de la semana. Las identidades del primer y último día dependen de la configuración de FirstDayOfWeekValue.
Abbreviate Opcional. Valor Boolean que indica si se abrevia el nombre del día de la semana. Si se omite, el valor predeterminado es False, que significa que el nombre del día de la semana no se abrevia.
FirstDayOfWeekValue Opcional. Valor elegido de la enumeración FirstDayOfWeek que especifica el primer día de la semana. Si no se especifica ningún valor, se utiliza FirstDayOfWeek.System.
Configuración
El argumento FirstDayOfWeekValue puede tener uno de los
siguientes valores:
Valor de enumeraciónValor Descripción
29
![Page 30: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/30.jpg)
UNITEK GRUPO IDAT
FirstDayOfWeek.System 0 Primer día de la semana especificado en la configuración del sistema (valor predeterminado)
FirstDayOfWeek.Sunday 1 Domingo
FirstDayOfWeek.Monday 2 Lunes (de acuerdo con la norma ISO 8601, sección 3.17)
FirstDayOfWeek.Tuesday 3 Martes
FirstDayOfWeek.Wednesday
4 Miércoles
FirstDayOfWeek.Thursday 5 Jueves
FirstDayOfWeek.Friday 6 Viernes
FirstDayOfWeek.Saturday 7 Sábado
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentException 5 WeekDay es menor que 1 o mayor que 7, o FirstDayOfWeekValue es menor que 0 o mayor que 7.
Comentarios
La cadena devuelta por WeekdayName no depende únicamente de los
argumentos de entrada, sino también de los valores de la Configuración
regional especificados en el Panel de control de Windows.
Si WeekDay es menor que 1 o mayor que 7, o si FirstDayOfWeekValue es
menor que 0 o mayor que 7, se produce un error ArgumentException.
Nota WeekdayName utiliza la configuración de calendario actual de la propiedad CurrentCulture de la clase CultureInfo en el espacio de
30
![Page 31: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/31.jpg)
UNITEK GRUPO IDATnombres System.Globalization. Los valores CurrentCulture predeterminados están determinados por la configuración del Panel de control.
Requisitos
Espacio de nombres: Microsoft.VisualBasic
Módulo: DateAndTime
Ensamblado: Tiempo de ejecución de Microsoft Visual Basic .NET (en
Microsoft.VisualBasic.dll)
Month (Función)
Devuelve un valor Integer entre 1 y 12 que representa el mes del año.
Public Function Month(ByVal DateValue As DateTime) As Integer
Parámetro
DateValue Requerido. Valor Date del cual se desea extraer el mes.
También se puede obtener el mes del año llamando a DatePart y
especificando DateInterval.Month para el argumento Interval.
Ejemplo
En este ejemplo se utiliza la función Month para obtener el mes de una fecha
especificada. En el entorno de desarrollo, el literal de fecha se muestra en
formato corto de fecha con los valores de configuración regional del código
correspondiente.
Dim MyDate As Date
Dim MyMonth As Integer
MyDate = #2/12/1969# ' Assign a date.
MyMonth = Month(MyDate) ' MyMonth contains 2.
MonthName (Función)
31
![Page 32: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/32.jpg)
UNITEK GRUPO IDAT
Devuelve un valor String que contiene el nombre del mes especificado.
Public Function MonthName(ByVal Month As Integer,Optional ByVal Abbreviate As Boolean = False) As String
Parámetros
Month Requerido. Integer. Designación numérica del mes, entre 1 y 13; 1 indica el mes de enero y 12 indica el mes de diciembre. Se puede utilizar el valor 13 con un calendario de 13 meses. Si el sistema está utilizando un calendario de 12 meses y Month es 13, MonthName devuelve una cadena vacía.
Abbreviate Opcional. Valor Boolean que indica si se va a abreviar el nombre del mes. Si se omite, el valor predeterminado es False, que significa que el nombre del mes no se abrevia.
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentException 5 Month es menor que 1 o mayor que 13.
Comentarios
La cadena devuelta por MonthName no depende únicamente de los
argumentos de entrada, sino también de los valores de la Configuración
regional especificados en el Panel de control de Windows.
Si Month es inferior a 1 o mayor que 13, se produce un error
ArgumentException.
Nota MonthName utiliza la configuración de calendario actual de la propiedad CurrentCulture de la clase CultureInfo en el espacio de nombres System.Globalization. Los valores CurrentCulture predeterminados están determinados por la configuración del Panel de control.
Ejemplo
32
![Page 33: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/33.jpg)
UNITEK GRUPO IDAT
En este ejemplo se utiliza la función MonthName para determinar el
nombre del mes, a partir del entero dado. El valor Boolean determinará si
se muestra el nombre completo (False) o el nombre abreviado (True).
Dim MyMonth As Integer
Dim Name As String
MyMonth = 4
Name = MonthName(MyMonth, True) ' "True" returns an abbreviated name.
Msgbox(Name) ' Name contains "Apr".
Requisitos
Espacio de nombres: Microsoft.VisualBasic
Módulo: DateAndTime
Ensamblado: Tiempo de ejecución de Microsoft Visual Basic .NET (en
Microsoft.VisualBasic.dll)
Vea también
Year (Función)
Devuelve un valor Integer entre 1 y 9999 que representa el año.
Public Function Year(ByVal DateValue As DateTime) As Integer
Parámetro
DateValue Requerido. Valor Date del cual se desea extraer el año.
También se puede obtener el año llamando a DatePart y especificando
DateInterval.Year para el argumento Interval.
Ejemplo
33
![Page 34: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/34.jpg)
UNITEK GRUPO IDAT
En este ejemplo se utiliza la función Year para obtener el año de una fecha
especificada. En el entorno de desarrollo, el literal de fecha se muestra en
formato corto de fecha con los valores de configuración regional del código
correspondiente.
Dim MyDate As Date
Dim MyYear As Integer
MyDate = #2/12/1969# ' Assign a date.
MyYear = Year(MyDate) ' MyYear contains 1969.
Requisitos
Espacio de nombres: Microsoft.VisualBasic
Módulo: DateAndTime
Ensamblado: Tiempo de ejecución de Microsoft Visual Basic .NET (en
Microsoft.VisualBasic.dll)
DateDiff (Función)
Devuelve un valor Long que especifica el número de intervalos de tiempo entre
dos valores Date.
Public Overloads Function DateDiff(ByVal Interval As DateInterval,ByVal Date1 As DateTime,ByVal Date2 As DateTime,Optional ByVal DayOfWeek As FirstDayOfWeek = FirstDayOfWeek.Sunday,Optional ByVal WeekOfYear As FirstWeekOfYear = FirstWeekOfYear.Jan1) As Long
O bien
Public Overloads Function DateDiff(ByVal Interval As String,ByVal Date1 As Object,ByVal Date2 As Object,Optional ByVal DayOfWeek As FirstDayOfWeek = FirstDayOfWeek.Sunday,Optional ByVal WeekOfYear As FirstWeekOfYear = FirstWeekOfYear.Jan1) As Long
34
![Page 35: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/35.jpg)
UNITEK GRUPO IDATParámetros
Interval Requerido. Valor de enumeración DateInterval o expresión String que representa el intervalo de tiempo que se desea utilizar como unidad de diferencia entre Date1 y Date2.
Date1, Date2 Requerido. Date. Dos valores de fecha u hora que se desean utilizar en el cálculo. El valor de Date1 se sustrae del valor de Date2 para obtener la diferencia. Ninguno de los dos valores se modifica en el programa que realiza la llamada.
DayOfWeek Opcional. Valor elegido de la enumeración FirstDayOfWeek que especifica el primer día de la semana. Si no se especifica ningún valor, se utiliza FirstDayOfWeek.Sunday.
WeekOfYear Opcional. Valor elegido de la enumeración FirstWeekOfYear que especifica la primera semana del año. Si no se especifica ningún valor, se utiliza FirstWeekOfYear.Jan1.
Configuración
El argumento Interval puede tener uno de los siguientes
valores:
Valor de enumeraciónCadena Unidad de diferencia temporal
DateInterval.Day d Día
DateInterval.DayOfYear y Día
DateInterval.Hour h Hora
DateInterval.Minute n Minuto
DateInterval.Month m Mes
DateInterval.Quarter q Trimestre
DateInterval.Second s Segundo
35
![Page 36: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/36.jpg)
UNITEK GRUPO IDAT
DateInterval.Weekday w Semana
DateInterval.WeekOfYear
ww Semana del calendario
DateInterval.Year yyyy Año
El argumento DayOfWeek puede tener uno de los
siguientes valores:
Valor de enumeraciónValor Descripción
FirstDayOfWeek.System 0 Primer día de la semana especificado en la configuración del sistema
FirstDayOfWeek.Sunday 1 Domingo (predeterminado)
FirstDayOfWeek.Monday 2 Lunes (de acuerdo con la norma ISO 8601, sección 3.17)
FirstDayOfWeek.Tuesday 3 Martes
FirstDayOfWeek.Wednesday
4 Miércoles
FirstDayOfWeek.Thursday 5 Jueves
FirstDayOfWeek.Friday 6 Viernes
FirstDayOfWeek.Saturday 7 Sábado
El argumento WeekOfYear puede tener uno de los siguientes valores:
Valor de enumeraciónValor Descripción
FirstWeekOfYear.System 0 Primera semana del año
36
![Page 37: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/37.jpg)
UNITEK GRUPO IDAT
especificada en la configuración del sistema
FirstWeekOfYear.Jan1 1 Semana en la que se encuentra el 1 de enero (predeterminado)
FirstWeekOfYear.FirstFourDays
2 Semana que contiene al menos cuatro días del nuevo año (de acuerdo con la norma ISO 8601, sección 3.17)
FirstWeekOfYear.FirstFullWeek
3 Primera semana completa del nuevo año
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentException 5 Interval no válido.
ArgumentException 5 Date o DayofWeek quedan fuera del intervalo.
InvalidCastException 13 Date1 o Date2 son tipos no válidos.
Comentarios
Se puede utilizar la función DateDiff para determinar el número de
intervalos de tiempo especificados que existen entre dos valores de fecha u
hora. Por ejemplo, con DateDiff podría calcular el número de días entre
dos fechas o el número de semanas entre hoy y el último día del año.
Si Interval se establece en DateInterval.DayOfYear, se trata igual que
DateInterval.Day, porque DayOfYear no es una unidad significativa para
un intervalo de tiempo.
37
![Page 38: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/38.jpg)
UNITEK GRUPO IDAT
Si Interval se establece en DateInterval.WeekOfYear, el valor devuelto
representa el número de semanas entre el primer día de la semana que
contiene Date1 y el primer día de la semana que contiene Date2. El ejemplo
siguiente muestra cómo este procedimiento genera resultados distintos de
DateInterval.Weekday.
Dim DatTim1 As Date = #1/4/2001# ' This is a Thursday.
Dim DatTim2 As Date = #1/9/2001# ' This is the next Tuesday.
' Assume Sunday is specified as first day of the week.
Dim WD As Long = DateDiff(DateInterval.Weekday, DatTim1, DatTim2)
Dim WY As Long = DateDiff(DateInterval.WeekOfYear, DatTim1, DatTim2)
En el ejemplo anterior, DateDiff devuelve 0 a WD porque la diferencia entre
las dos fechas es menor de siete días, pero devuelve 1 a WY porque existe
una diferencia de siete días entre los primeros días de las respectivas
semanas del calendario.
Si Interval se establece en DateInterval.Year, el valor devuelto se calcula
meramente a partir de las partes del año Date1 y Date2.
Como Date1 y Date2 son del tipo de datos Date, contienen valores precisos
de fecha y hora en pasos (ticks) de 100 nanosegundos en el temporizador
del sistema. Sin embargo, DateDiff siempre devuelve el número de
intervalos de tiempo como un valor Long.
Si Date1 representa una fecha y hora posteriores a Date2, DateDiff
devuelve un número negativo.
Si algún argumento tiene un valor no válido, se produce un error
ArgumentException. Si el argumento Date1 o Date2 tiene un valor que no
puede convertirse a un valor Date válido, se produce un error
InvalidCastException.
38
![Page 39: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/39.jpg)
UNITEK GRUPO IDATNota Al comparar el 31 de diciembre con el 1 de enero del año siguiente, DateDiff devolverá 1 para DateInterval.Year, DateInterval.Quarter o DateInterval.Month, aunque sólo haya pasado un día.
Puesto que todos los valores Date se basan en una estructura DateTime,
sus métodos proporcionan opciones adicionales para buscar intervalos de
tiempo. Por ejemplo, se puede utilizar el método Subtract de cualquiera de
sus formas sobrecargadas. Uno de ellos sustrae un TimeSpan de una
variable Date para devolver otro valor Date; el otro sustrae un valor Date
para devolver un TimeSpan. Se puede temporizar un proceso para saber
cuántos milisegundos tardará, como en el caso siguiente:
Dim StartTime As Date = Now ' Starting date/time.
' Run the process that is to be timed.
Dim RunLength As System.TimeSpan = Now.Subtract(StartTime)
Dim Millisecs As Integer = RunLength.Milliseconds
Ejemplo
En este ejemplo se utiliza la función DateDiff para mostrar el número de
días entre una fecha dada y la fecha actual.
Dim FirstDate, Msg As String ' Declare variables.
Dim SecondDate As Date
FirstDate = InputBox("Enter a date")
SecondDate = CDate(FirstDate)
Msg = "Days from today: " & DateDiff(DateInterval.Day, Now, SecondDate)
MsgBox (Msg)
DatePart (Función)
Devuelve un valor Integer que contiene el componente especificado de un valor
Date dado.
Public Overloads Function DatePart(ByVal Interval As DateInterval,ByVal DateValue As DateTime,Optional ByVal FirstDayOfWeekValue As FirstDayOfWeek = VbSunday,Optional ByVal FirstWeekOfYearValue As FirstWeekOfYear = VbFirstJan1) As Integer
39
![Page 40: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/40.jpg)
UNITEK GRUPO IDAT
O bien
Public Overloads Function DatePart( ByVal Interval As String,ByVal DateValue As Object,Optional ByVal DayOfWeek As FirstDayOfWeek = FirstDayOfWeek.Sunday,Optional ByVal WeekOfYear As FirstWeekOfYear = FirstWeekOfYear.Jan1) As Integer
Parámetros
Interval Requerido. Valor de enumeración DateInterval o expresión String que representa la parte del valor de fecha u hora que se desea devolver.
DateValue Requerido. Valor Date que se desea evaluar.
FirstDayOfWeekValue Opcional. Valor elegido de la enumeración FirstDayOfWeek que especifica el primer día de la semana. Si no se especifica ningún valor, se utiliza FirstDayOfWeek.Sunday.
FirstWeekOfYearValue Opcional. Valor elegido de la enumeración FirstWeekOfYear que especifica la primera semana del año. Si no se especifica ningún valor, se utiliza FirstWeekOfYear.Jan1.
Configuración
El argumento Interval puede tener uno de los siguientes valores:
Valor de enumeraciónCadena
Parte del valor de fecha u hora devuelta
DateInterval.Day d Día del mes (del 1 al 31)
DateInterval.DayOfYear y Día del año (del 1 al 366)
DateInterval.Hour h Hora
DateInterval.Minute n Minuto
DateInterval.Month m Mes
DateInterval.Quarter q Trimestre
40
![Page 41: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/41.jpg)
UNITEK GRUPO IDAT
DateInterval.Second s Segundo
DateInterval.Weekday w Día de la semana (del 1 al 7)
DateInterval.WeekOfYear
ww Semana del año (de la 1 a la 53)
DateInterval.Year yyyy Año
El argumento FirstDayOfWeekValue puede tener uno de los siguientes
valores:
Valor de enumeraciónValor Descripción
FirstDayOfWeek.System 0 Primer día de la semana especificado en la configuración del sistema
FirstDayOfWeek.Sunday 1 Domingo (predeterminado)
FirstDayOfWeek.Monday 2 Lunes (de acuerdo con la norma ISO 8601, sección 3.17)
FirstDayOfWeek.Tuesday 3 Martes
FirstDayOfWeek.Wednesday
4 Miércoles
FirstDayOfWeek.Thursday 5 Jueves
FirstDayOfWeek.Friday 6 Viernes
FirstDayOfWeek.Saturday 7 Sábado
El argumento FirstWeekOfYearValue puede tener uno de los siguientes
valores:
41
![Page 42: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/42.jpg)
UNITEK GRUPO IDAT
Valor de enumeraciónValor Descripción
FirstWeekOfYear.System 0 Primera semana del año especificada en la configuración del sistema
FirstWeekOfYear.Jan1 1 Semana en la que se encuentra el 1 de enero (predeterminado)
FirstWeekOfYear.FirstFourDays
2 Semana que contiene al menos cuatro días del nuevo año (de acuerdo con la norma ISO 8601, sección 3.17)
FirstWeekOfYear.FirstFullWeek
3 Primera semana completa del nuevo año
Excepciones o errores
Tipo de excepción Número de error Condición
ArgumentException 5 Interval no es válido.
InvalidCastException 13 DateValue no se puede convertir a Date.
Comentarios
Se puede utilizar la función DatePart para evaluar un valor de fecha u hora
y devolver un componente específico. Por ejemplo, se podría utilizar
DatePart para calcular el día de la semana o la hora actual.
Si se elige DateInterval.Weekday para el argumento Interval, el valor
devuelto es coherente con los valores de la enumeración
FirstDayOfWeek. Si elige DateInterval.WeekOfYear, DatePart utiliza
las clases Calendar y CultureInfo del espacio de nombres
System.Globalization para determinar la configuración actual.
42
![Page 43: Funciones VB.Net.doc](https://reader036.vdocumento.com/reader036/viewer/2022062515/55cf9d63550346d033ad6bc5/html5/thumbnails/43.jpg)
UNITEK GRUPO IDAT
El argumento FirstDayOfWeekValue afecta a los cálculos que utilizan los
valores DateInterval.Weekday y DateInterval.WeekOfYear para
Interval. El argumento FirstWeekOfYearValue afecta a los cálculos que
especifican DateInterval.WeekOfYear para Interval.
Si algún argumento tiene un valor no válido, se produce un error
ArgumentException. Si el argumento DateValue tiene un valor que no
puede convertirse a un valor Date válido, se produce un error
InvalidCastException.
Puesto que todos los valores Date se basan en una estructura DateTime,
sus métodos proporcionan opciones adicionales para recuperar partes de
fecha u hora. Por ejemplo, se puede obtener el valor de fecha completo de
una variable Date, con el valor de hora establecido en medianoche, como
se muestra a continuación:
Dim CurrDatTim As Date = Now ' Current date and time.
Dim LastMidnight As Date = CurrDatTim.Date ' At midnight.
Ejemplo
En este ejemplo se utiliza la función DatePart sobre una fecha para
mostrar el trimestre del año en que se produce.
Dim FirstDate, Msg As String 'Declare variables.
Dim SecondDate As Date
FirstDate = InputBox("Enter a date:")
SecondDate = CDate(FirstDate)
Msg = "Quarter: " & DatePart(DateInterval.Quarter, SecondDate)
MsgBox (Msg)
43