Problema al trabajar con una variable struct

juanolas
02 de Octubre del 2003
Hola a todos-as, tengo un problema con struct que defini de la siguiente manera:

private type struct_err

num_err as integer
campos as string

end type

dim error(10) as struct_err
Con esto quiero un array de 10 elementos de tipo struct_err
Ahora el problema es me da error al acceder a los datos para rellenar el struct o mostrar
lo que hago es esto

error(0).num_err = 5
error(0).campos = "hola"
esto no me lo acepta ,¿como accedo a los datos?
Muchas gracias y un saludo a todos.
Juanolas.


sdemingo
02 de Octubre del 2003
Hola,
Prueba a declarar la estructura en un módulo y en lugar de Private hazla Public

' En el Módulo
Option Explicit
Public Type estructura
numero As Integer
texto As String
End Type

'En el Form
Private Sub Form_Load()

Dim a(10) As estructura

a(0).numero = 11
a(0).texto = "fdfd"

MsgBox a(0).numero
MsgBox a(0).texto
End Sub


Un saludo
sdemingo

juanolas
02 de Octubre del 2003
Hola, todo ok ya puedo acceder a los datos pero solo si defino el array de tipo structura en el mismo modulo de codigo en que lo uso ¿A que se debe esto?

sdemingo
02 de Octubre del 2003
En teoría, solo tienes que declarar la estructura en un módulo y que sea Public.
Luego puedes declararte variables de tipo estructura en cualquier parte del proyecto, ya sean módulos o forms.
Por lo menos así lo tengo yo y no me da problemas

Un saludo
sdemingo

Juan
02 de Octubre del 2003
No te lo acepta porque Error es una palabra clave de VB,
o sea que no puedes declarar una variable que se
llame error. Puedes simplemente poner:

Dim errores(X) as struct_err

sdemingo
02 de Octubre del 2003
Eso también ;-) jeje

Un saludo
sdemingo

juanolas
02 de Octubre del 2003
Muchas gracias a veces es que parezco tonto.;-)