Ejecutar procedimientos en Visual Basic

. En un userform puse un botón, dentro del clic del botón asigno a las variables los valores que van a pasar como parámetros (los paso por valor ByVal), las variables están declaradas como públicas y detalladas en el procedimiento (entre los paréntesis donde se pasan los parámetros).

  1. Si lo llamo desde el botón que detalle anteriormente me da el mensaje de error “ No sé ha definido Sub o Function”,
  2. Si llamo al procedimiento desde un botón en la hoja Excel funciona bien

Por eso no se en que parte me estoy equivocando al momento de llamar al procedimiento desde un botón dentro de un userform.

El procedimiento es para abrir un archivo y en una hoja determinada cargar información y al salir grabar cerrar el archivo quedando listo para repetir la acción cargando datos.

Adjunto el código que esta en el botón que lo llama y el código de el procedimiento, desde ya agradezco a quien me pueda orientar para poder hacerlo funcionar correctamente,

BOTÓN EN EL USERFORM

Private Sub CommandButton1_Click()

Application.Workbooks.Open "H:\My Documents\My Documents\EXCEL\xerox.xls" 'Abro el archivo donde cargo los datos

Sheets("PROCEDIMIENTO").Select

FILA = 10  'Estos son los tres parámetros que paso al procedimiento

COLUMNA = 3

NOMBRE = "Peron"

Call PrimerProcedimiento(FILA, COLUMNA, NOMBRE)  'Aca estoy llamando al procedimiento pasando los tres parámetros

End Sub

 

CÓDIGO DEL PROCEDIMIENTO

Public Static Sub PrimerProcedimiento(ByVal FILA As Integer, COLUMNA As Integer, NOMBRE As String)

'Declaro ByVAl para realizar el pasaje de parámetros por valor

ActiveSheet. Cells(FILA, COLUMNA). Select’Me posiciono en el lugar donde voy a poner el valor

ActiveCell.Formula = NOMBRE ‘Asigo el valor a la posición indicada

MsgBox "Hola estas en el archivo XEROX" ‘ Mensaje de muestra

End Sub

1 Respuesta

Respuesta
1

Probalo así. En el botón del UF se definen las variables, sino por defecto se las toma como Variant

Private Sub CommandButton1_Click()
Application.Workbooks.Open "H:\My Documents\My Documents\EXCEL\xerox.xls" 'Abro el archivo donde cargo los datos
Sheets("PROCEDIMIENTO").Select
'definir las variables
Dim FILA As Integer, COLUMNA As Integer, NOMBRE As String
FILA = 10  'Estos son los tres parámetros que paso al procedimiento
COLUMNA = 3
NOMBRE = "Peron"
Call PrimerProcedimiento(FILA, COLUMNA, NOMBRE)  'Aca estoy llamando al procedimien
End Sub

Sdos y no olvides valorar la respuesta para dar por cerrado el tema.

Te recuerdo que debes valorar para dar por finalizada la consulta. En la imagen podrás ver el botón donde se te presentan varias opciones. Si algo en este tema no quedó claro o resuelto podés solicitar aclaraciones.

Sdos

Elsa

¿Te quedó resuelto el tema? Si es así no olvides valorar la respuesta para darla por cerrada.

¿Necesitas ayuda para implementarla en tu libro? Enviamelo al correo que aparece en la portada de mi sitio.

Sdos!

¡Gracias!  Elsa por la ayuda me fue muy útil, agradezco tu tiempo y las ganas por ayudarme, en otra duda te consulto nuevamente.

Saludos cordiales

Adrian

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas