Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
FORMULA1 150x131, Función WorksheetFunction.IsText

Función WorksheetFunction.IsText

| 6 comentarios

La  Función WorksheetFunction.IsText sirve para confirmar que el valor de una celda es texto o no lo es. En caso que sucede lo primero el resultado de la función será “Verdadero” caso contrario será "Falso".

La sintaxis de esta función es WorksheetFunction.IsText(Arg1). A continuación se presentara un ejemplo en el cual se utiliza esta función.

 

Ejemplo:

Según la ley de Reilly, el Área de Mercado es la distancia máxima que una persona se trasladaría para comprar. La fórmula para el Área de Mercado de la ciudad pequeña ( menor población) hacia otra grande ( mayor población) ciudades es la siguiente:

formato5, Función WorksheetFunction.IsText

Para el caso de la pequeña es la Distancia entre las dos ciudades - el área de mercado de mercado de la ciudad pequeña.

En este ejemplo, usaremos las distancias entre los siguientes distritos de Cajamarca:

formato3, Función WorksheetFunction.IsText

Primero copiamos en la primera hoja " Áreas de Mercados" un cuadro de doble entrada donde se colocan las distancias.

formato7 300x145, Función WorksheetFunction.IsText

(Para mayor visualización de la imagen, hacer click en la misma)

Luego en en la siguiente hoja se coloca un cuadro para colocar el nombre de los distritos.

formato6 300x256, Función WorksheetFunction.IsText

(Para mayor visualización de la imagen, hacer click en la misma)

 Luego utilizamos el siguiente macros que permite que aparezca un recuadro con la distancia entre el distrito 1 y el distrito dos. En caso de que se ingrese un número por error saldrá un cuadro con el siguiente mensaje " Usted ingresó un número". la Función Istext permite detectar si lo escrito debajo de distrito 1 y distrito 2  es un número o el nombre de un distrito.

El Macros es el siguiente:

Sub proceso2()
Dim Rango1 As Object
Dim Rango2 As Object
distrito1 = Worksheets("Cálculo del área de mercado").Range("c5").Value
distrito2 = Worksheets("Cálculo del área de mercado").Range("d5").Value
Set Rango1 = Worksheets("Áreas de Mercado").Range("A1:AA1")
Set Rango2 = Worksheets("Áreas de Mercado").Range("A1:AA26")
If WorksheetFunction.IsText(distrito1) And WorksheetFunction.IsText(distrito2) Then
concatenar = WorksheetFunction.Match(distrito2, Rango1, 0)
AreaDeMercado = WorksheetFunction.VLookup(distrito1, Rango2, concatenar, False)
MsgBox "El Área de Mercado de " & distrito1 & " se extiende " & AreaDeMercado & " kilómetros " & " hacia " & distrito2
Else
MsgBox " Usted ingresó un número"

End If

End Sub

 

Por: Carlos Andre

6 comentarios

Deja una respuesta

Los campos requeridos estan marcados con *.