No se ha definido Sub, Function o Property (Error 35)

06/02/2007 - 12:30 por 00000 | Informe spam
Es una tabla que segun el dato que pongas en la llamada te suma 1 columna
más y
meto el producto de las filas y las columanas
luego en la ventana de inmediato muestra el contenido de la tabla

El "En sub" Esta y al realizar un sub sencillo en el inmediato tampoco
funciona
-
En la Ayuda
No se ha definido Sub, Function o Property (Error 35)
-
Option Compare Database
Option Explicit
Option Base 1

Private Sub SumandoFilas(NColumnasI As Long)

On Error GoTo SumandoFilas_Error
Dim NFilas As Long
Dim NcolumnasF As Long
NFilas = 2 ^ NColumnas
Dim Matriz() As Variant
NcolumnasF = NColumnasI + 1
ReDim Preserve Matriz(NFilas, NcolumnasF)
Dim F As Long: Dim C As Long
For F = 1 To NFilas 'Inicializar
For C = 1 To NcolumnasF
Matriz(F, C) = F * C
Next C
Next F
''MOSTRAR DATOS
Debug.Print "Fila x Columna = Total"
For F = 1 To NFilas 'inicializar
For C = 1 To NColumnas
Debug.Print F & " x " & C & " = " & Matriz(F, C)
Next C
Next F

On Error GoTo 0
Exit Sub

SumandoFilas_Error:

MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure
SumandoFilas of

Módulo Módulo1"

End Sub
-
Ventana Inmediato
? SumandoFilas(3)
-
GRACIAS A TOD@S



-
-
Estoy utilizando la versión gratuita de SPAMfighter para usuarios privados.
Ha eliminado 895 correos spam hasta la fecha.
Los abonados no tienen este mensaje en sus correos.
¡Pruebe SPAMfighter gratis ya!
 

Leer las respuestas

#1 Héctor Miguel
07/02/2007 - 02:34 | Informe spam
hola, 'anonimo/a' !

Es una tabla que segun el dato que pongas en la llamada te suma 1 columna mas
y meto el producto de las filas y las columanas luego en la ventana de inmediato muestra el contenido de la tabla
El "End sub" Esta y al realizar un sub sencillo en el inmediato tampoco funciona
En la Ayuda
No se ha definido Sub, Function o Property (Error 35) [...]
Ventana Inmediato
? SumandoFilas(3)



1) si 'hablamos' de un procedimiento 'Sub'... que se encuentra en un modulo 'estandar'... y ademas declarado como 'Private'...
OJO: NO puedes ejecutarlo desde la ventana de inmediato... SOLO desde otro procedimiento en el mismo modulo de codigo :-((

2) si quieres llamarlo desde la ventana de inmediato...
a) primero [obviamente] ELIMINA la declaracion de 'privado'
b) usa en la ventana de inmediato: -> call sumandofilas(3)

3) si quieres usarlo [p.e.] desde la ventana de inmediato como solo mensaje... '?'
a) cambia el procedimiento de Sub -> a Function
b) [ahora si] ya puedes llamarlo desde la ventana de inmediato con: -> ? sumandofilas(3)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

__ el codigo expuesto __
Option Compare Database
Option Explicit
Option Base 1
Private Sub SumandoFilas(NColumnasI As Long)
On Error GoTo SumandoFilas_Error
Dim NFilas As Long
Dim NcolumnasF As Long
NFilas = 2 ^ NColumnas
Dim Matriz() As Variant
NcolumnasF = NColumnasI + 1
ReDim Preserve Matriz(NFilas, NcolumnasF)
Dim F As Long: Dim C As Long
For F = 1 To NFilas 'Inicializar
For C = 1 To NcolumnasF
Matriz(F, C) = F * C
Next C
Next F
''MOSTRAR DATOS
Debug.Print "Fila x Columna = Total"
For F = 1 To NFilas 'inicializar
For C = 1 To NColumnas
Debug.Print F & " x " & C & " = " & Matriz(F, C)
Next C
Next F
On Error GoTo 0
Exit Sub
SumandoFilas_Error:
MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure SumandoFilas of Módulo Módulo1"
End Sub

Preguntas similares