Ver Mensaje Individual
  #4 (permalink)  
Antiguo 28/10/2008, 11:13
Avatar de mrocf
mrocf
 
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.103
Antigüedad: 17 años, 1 mes
Puntos: 88
De acuerdo VBA - Método Find de excel

Es probable que tu dificultad no sea la interpretación del código... sino la interpretación de algunas fórmulas del Excel.

Te sugiero que sigas estos pasos:

a) Crea un libro nuevo con una hoja llamada "Hoja1"
b) En el rango [A1:A5] pon 5 nombres cualesquiera.
c) En el rango [B1:B5] pon 5 apellidos cualesquiera.
d) Incorpora este código:
Código:
Sub ParaAnalizar()
With Sheets("Hoja1")
  [d1].FormulaArray = "= (A1:B5)"
  [d2].FormulaArray = "= " & _
    .[A1:A5].Address(External:=True) & " & "" "" & " & _
    .[B1:B5].Address(External:=True)
  [d3].FormulaArray = "= TRANSPOSE(" & _
    .[A1:A5].Address(External:=True) & " & "" "" & " & _
    .[B1:B5].Address(External:=True) & ")"
End With
End Sub 
e) Ejecuta el código y analiza las tres fórmulas que se generan en [d1], [d2] y [d3] sin dejar (en las tres fórmulas) de seleccionarlas, presionar la tecla <F2> para editarlas y presionar la tecla <F9> para ver desplegados los resultados de las mismas: interpreta esos resultados, advierte como Excel trata a las matrices (primer caso) y a los vectores verticales (segundo caso) y horizontales (tercer caso) de datos.

f) La segunda fórmula es "la base" del tema, mientras que la tercera "acomoda" la fórmula anterior a lo que el VBA puede manejar.

Cuando hayas terminado, indícanos tus conclusiones.
Saludos, Cacho.

Última edición por mrocf; 28/10/2008 a las 11:29