Clase Parameter (Excel VBA)

La clase Parameter representa un solo parámetro empleado en una consulta de parámetros.

Los principales procedimientos de la clase Parameter son Parameters.Add y Parameters.Delete

Set

Para usar una variable de clase Parameter, primero debe ser instanciado, por ejemplo

Dim prm as Parameter
Set prm = ActiveCell.QueryTable.Parameters(Index:=1)

Los siguientes procedimientos se pueden usar para establecer variables de clase Parameter : Parameters.Item, Parameters.Add y QueryTable.Parameters

For Each

A continuación, se muestra un ejemplo de cómo procesar los elementos Parameter en una colección.

Dim prm As Parameter
For Each prm In ActiveCell.QueryTable.Parameters
	
Next prm

Métodos

Los principales métodos de la clase Parameter son

Parameters.Add - Crea un parámetro de consulta nuevo.

Dim strName As String: strName = 
Dim prm As Parameter
Set prm = ActiveCell.QueryTable.Parameters.Add(Name:=strName)

Parameters.Delete - Elimina el objeto.

ActiveCell.QueryTable.Parameters.Delete

Otros Métodos

SetParam - Define un parámetro para la tabla de consulta especificada.

Parameters.Item - Devuelve un solo objeto de una colección.

Propiedades

DataType Devuelve o establece un valor XlParameterDataType que representa el tipo de datos del parámetro de consulta especificado.

ActiveCell.QueryTable.Parameters(1).DataType = xlParamTypeBigInt

Name Devuelve o establece un valor de tipo String que representa el nombre del objeto.

ActiveCell.QueryTable.Parameters(1).Name =

Parent Devuelve el objeto primario del objeto especificado.

Dim objParent As Object
Set objParent = ActiveCell.QueryTable.Parameters(1).Parent

PromptString Devuelve la frase que solicita al usuario el valor de un parámetro en una consulta de parámetros.

Dim strPromptString As String
strPromptString = ActiveCell.QueryTable.Parameters(1).PromptString

RefreshOnChange Es True si la tabla de consulta especificada se actualiza cada vez que se cambia el valor del parámetro de una consulta de parámetros.

ActiveCell.QueryTable.Parameters(1).RefreshOnChange = True

SourceRange Devuelve un objeto Range que representa la celda que contiene el valor del parámetro de consulta especificado.

Dim rngSourceRange As Range
Set rngSourceRange = ActiveCell.QueryTable.Parameters(1).SourceRange

Type Devuelve un valor XlParameterType que representa el tipo de parámetro.

Dim xptType As XlParameterType
xptType = ActiveCell.QueryTable.Parameters(1).Type

Value Devuelve un valor de tipo Variant que representa el valor del parámetro.

Dim varValue As Variant
varValue = ActiveCell.QueryTable.Parameters(1).Value

Parameters.Count Devuelve un valor Long que representa el número de objetos de la colección.

Dim lngCount As Long
lngCount = ActiveCell.QueryTable.Parameters.Count

Parameters.Parent Devuelve el objeto primario del objeto especificado.

Dim objParent As Object
Set objParent = ActiveCell.QueryTable.Parameters.Parent