sobre Option Base , Array y 2007

12/08/2007 - 03:45 por Ivan | Informe spam
hola a todos,

esta consulta se podria dividir en 3:

1.- [aunque esta duda acabo de verla 'resuelta' en la ayuda sobre option base (no se como la habia leido hasta ahora),
me sigue quedando un resquemor]

¿Option Base es siempre 0 en un modulo (aunque no este declarada), mientras no este declarada explicitamente como
diferente de cero en dicho modulo? ¿da lo mismo el equipo y/o version en que se ejecute la macro, o que haya declaracion
explicita de Option Base 1 en otro modulo del mismo proyecto?

como digo la ayuda parece clara al respecto, ["La instrucción Option Base sólo afecta el límite inferior de las matrices
en el módulo donde se ubica la instrucción"], pero mi inseguridad me pierde

2.- en que consiste 'calificar' "con el nombre de su biblioteca de tipo, por ejemplo VBA.Array", es decir como se
califica. Al declararla parece que no

.3.- existen variaciones en la version 2007 respecto a este tema (me suena haber oido algo). Y en general, ¿que
problemas/incompatibilidades pueden darse con aplicaciones realizadas en versiones anteriores al ejecutarlas en 2007,
sobre todo en lo que a limites se refiere (aunque se que son superiores y que normalmente no ha habido problemas
[gordos], pero por si acaso)?

gracias por anticipado y un saludo
Ivan

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
12/08/2007 - 06:30 | Informe spam
hola, Ivan !

1.- [aunque esta duda acabo de verla 'resuelta' en la ayuda sobre option base
(no se como la habia leido hasta ahora), me sigue quedando un resquemor]
Option Base es siempre 0 en un modulo (aunque no este declarada)
mientras no este declarada explicitamente como diferente de cero en dicho modulo?
da lo mismo el equipo y/o version en que se ejecute la macro
o que haya declaracion explicita de Option Base 1 en otro modulo del mismo proyecto?
como digo la ayuda parece clara al respecto
["La instruccion Option Base solo afecta el limite inferior de las matrices en el modulo donde se ubica la instruccion"]
pero mi inseguridad me pierde



1) [creo que] puedes depositar 'mas' seguridad y confianza en las aclaraciones, notas y oservaciones de la ayuda en linea
claro que puedes apoyarte en algunas pruebas [solo por si las dudas] :))

2.- en que consiste 'calificar' "con el nombre de su biblioteca de tipo, por ejemplo VBA.Array", es decir como se califica.
Al declararla parece que no



2) [hasta donde se]... la 'calificacion' entre variables, colecciones, bibliotecas, etc. es *opcional* [al menos]...
hasta que exista la probabilidad de *nombres* que pudieran *confundir* [a VBA] en relacion con su *pariente* REAL [p.e.]
a) Range("a1") <= se refiere siempre al rango 'A1' de la hoja activa [falla cuando la hoja activa NO es de tipo worksheet]
b) cuando pretendes afectar al rango 'A1' de una hoja en especifico [sin importar si es esta la hoja activa o no]...
*conviene* hacer la 'calificacion': -> Worksheets("hoja1").Range("a1") <= siempre se refiere al libro activo
c) cuando pretendes afectar una hoja de un determinado libro [sin importar si es el activo o no... pero ABIERTO]...
*conviene* hacer la 'calificacion': -> Workbooks("libro1").Worksheets("hoja1").Range("a1") <= que te puedo decir... ?

o... cuando existen librerias que llegaran a utilizar el mismo nombre que otra/s en: funciones, variables, colecciones, etc. -???-

.3.- existen variaciones en la version 2007 respecto a este tema (me suena haber oido algo). Y en general
que problemas/incompatibilidades pueden darse con aplicaciones realizadas en versiones anteriores al ejecutarlas en 2007
sobre todo en... limites... (... se que son superiores y que normalmente no ha habido problemas [gordos], pero por si acaso)?



3) [hasta donde se]... la compatibiidad hacia versiones anteriores se conserva [al menos]...
hasta que se usan propiedades/caracteristicas/opciones/... que hubieran sido *eliminadas* en la version *nueva* [p.e.]
a) 2007 no da soporte a guardar archvos de texto en formatos *.DBF :-((
b) *manipular* las barras de menus y herramientas... ahora en 2007 se trasladan al *Ribbon/Cinta* y demas relacionados :-((

[de seguro existen otras 'eventualidades'... solo por hacer mencion de algunas] :D
saludos,
hector.
Respuesta Responder a este mensaje
#2 Ivan
13/08/2007 - 00:04 | Informe spam
hola Hector, muchas gracias por aquí también

empiezo por el final, que es donde me ha surgido una duda ( por si quieres saltarte el resto [mis rollos mentales])

3) [hasta donde se]... la compatibiidad hacia versiones anteriores se conserva [al menos]...






hasta que se usan propiedades/características/opciones/... que hubieran sido *eliminadas* en la versión *nueva*
[p.e.]
a) 2007 no da soporte a guardar archivos de texto en formatos *.DBF :-((
b) *manipular* las barras de menús y herramientas... ahora en 2007 se trasladan al *Ribbon/Cinta* y demás
relacionados :-((




=> en cuanto al 1er punto no me preocupa [al menos de momento], pero en cuanto a las barras de menús y herramientas:

¿que quiere decir que "se trasladan al *Ribbon/Cinta* y demás relacionados" y como afecta esto al tratamiento de las
barras al ejecutar en 2007 una aplicación hecha pej. en 2002 (me refiero a crear/mostrar/ocultar/eliminar barras
personalizadas y a ocultar/mostrar/inhabilitar las integradas desde código)?

esto si me resultaría necesario conocerlo, pues es una parte importante dentro 'del' proyecto.

y, si hay problemas, ¿habría opciones, desde vba 2002, de buscar alternativas?

=> nota: a partir de aquí, mis rollos (por si te lo quieres saltar muchas gracias una vez mas por la ayuda y por las
aclaraciones añadidas)

1) [creo que] puedes depositar 'mas' seguridad y confianza en las aclaraciones, notas y oservaciones de la ayuda en
linea
claro que puedes apoyarte en algunas pruebas [solo por si las dudas] :))







=> aunque en general mi 'desconfianza' hacia la ayuda suele venir de mi ineptitud a la hora de interpretar el
'lenguaje/lexico' utilizado [por suerte parece que cada vez es menor], en este caso estaba convencido de haber leido
exactamente lo contrario (que manipular option base afectaba a toda la aplicacino) y llevaba mucho tiempo convencido de
esto, con lo que al releer ayer la ayuda, mi sorpresa fue tan grande que pense que quizas lo habia visto en algun otro
lado, y de ahi la consulta.

creo que ademas de confiar, voy a tener que tener mas paciencia y acabar de leer (y entender) los temas de la ayuda un
poco mas despacio.

*conviene* hacer la 'calificacion': -> Workbooks("libro1").Worksheets("hoja1").Range("a1") <= que te puedo
decir... ?







=> la verdad es que poca cosa:

me temo que es otra faceta de esa desavenecia con la terminologia, unida a mi despiste. Estoy 'harto' de ver [y usar,
aunque sea mentalmente] terminos como calificador de objeto, sin tener [casi] dudas de a lo que se refiere, y sin
embargo aqui se me ha ido la 'olla' y no lo he asociado a algo tan sencillo como esto

->> 'm = VBA.Array(1, 2, 3, 4)'
.

gracias por todo y hasta pronto
Ivan
Respuesta Responder a este mensaje
#3 Héctor Miguel
13/08/2007 - 03:13 | Informe spam
hola, Ivan !

3) [hasta donde se]... la compatibilidad hacia versiones anteriores se conserva [al menos]...
hasta que se usan propiedades/caracteristicas/opciones/... que hubieran sido *eliminadas* en la version *nueva* [p.e.]
a) 2007 no da soporte a guardar archivos de texto en formatos *.DBF :-((
b) *manipular* las barras de menus y herramientas... ahora en 2007 se trasladan al *Ribbon/Cinta* y demas relacionados :-((



... en cuanto a las barras de menus y herramientas:
que quiere decir que "se trasladan al *Ribbon/Cinta* y demas relacionados"
y como afecta esto al tratamiento de las barras al ejecutar en 2007 una aplicacion hecha pej. en 2002
(me refiero a crear/mostrar/ocultar/eliminar barras personalizadas y a ocultar/mostrar/inhabilitar las integradas desde codigo)?
esto si me resultaria necesario conocerlo, pues es una parte importante dentro 'del' proyecto.
y, si hay problemas, habria opciones, desde vba 2002, de buscar alternativas? [...]



el tema del *Ribbon* [o cinta de opciones] en 2007 como reemplazo de las barras de menus y herramientas de versiones anteriores...
es que se trata de un concepto totalmente nuevo [asi como de su modelo de objetos, metodos y propiedades] que...
ademas de tener su amplitud, recovecos, ya no es *tan... manipulable* sin profundizar en el estudio y analisis de los cambios :-((

[me parece que] la pagina de Ron DeBruin es un buen *punto de partida* [ejemplos, enlaces y demas] para iniciarte con el *Ribbon*
-> revisa la seccion *Excel 2007* desde: -> http://www.rondebruin.nl/tips.htm

y si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#4 Ivan
13/08/2007 - 03:59 | Informe spam
hola Hector,

he estado echandole un ojo a los 'enlaces del enlace' y parece una
buena via para empezar a enterarme de como va la cosa,

aunque creo que de momento me limitare a irlo estudiando poco a poco
y a seguir como hasta ahora [es decir, como si excel 2007 no
existiera], al menos hasta que controle un poco mas todo esto 'que ya
si existe' para mi

en cuanto al proyecto, si para cuando lo acabe, no soy capaz de
abrirle una puerta hacia el 2007, seguro que, como siempre, encontrare
'quien' me eche un cable por estos pagos. [Y en su defecto, 'si
saliera mas caro el caldo que las gallinas', un pequeño label con
"Valido hasta excel 2003", aunque lo dejaria un poco cojo, haria el
apaño. Menos da una piedra, que se dice por aqui.]

un saludo y muchas gracias de nuevo
Ivan
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida