Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/08/2015, 19:45
Avatar de davidhelios
davidhelios
 
Fecha de Ingreso: agosto-2015
Ubicación: Alemania
Mensajes: 11
Antigüedad: 8 años, 8 meses
Puntos: 0
Respuesta: Tabla dinámica en Vba

Buenas a todos, he buscado, buscado y buscado todo el día desde ayer y por casualidad utilice la función buscar y me ha servido para extraer los datos de la tabla dinámica.

Ahora me encuentro con el siguiente dilema, soy novato 90% en Vba aunque voy aprendiendo día a día, pero no sé simplificar la macro grabada para poder editar el código.

Os pego lo que llevo y vemos si a alguien se le ocurre o sabe simplificar la sintaxis:

Código:
 Range("L3").Select
    ActiveCell.FormulaR1C1 = _
        "=LOOKUP(RC[-1],RC[-10]:RC[-5],R[-1]C[-10]:R[-1]C[-5])"
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    Selection.AutoFill Destination:=Range("L3:L4"), Type:=xlFillDefault
    Range("L3:L4").Select
    Range("L4").Select
    ActiveCell.FormulaR1C1 = _
        "=LOOKUP(RC[-1],RC[-10]:RC[-5],R[-2]C[-10]:R[-2]C[-5])"
    Range("L4").Select
    Selection.AutoFill Destination:=Range("L4:L5"), Type:=xlFillDefault
    Range("L4:L5").Select
    Range("L5").Select
    ActiveCell.FormulaR1C1 = _
        "=LOOKUP(RC[-1],RC[-10]:RC[-5],R[-3]C[-10]:R[-3]C[-5])"
    Range("L6").Select
Como veis, he realizado la accion tres veces seguidas para poder encontrar diferencias de acción y saber dónde modificar, pero no me ha servido de mucho. Podría editarlo amano, pero la tabla sigue creciendo y tendría que hacerlo a diario, asi que me gustaría saber si, además de simplificar la fórmula, a alguien se le ocurre cómo podría pasar a la siguiente linea automáticamente. Había pensado en utizar el comando offset, pero no tengo la menor idea de dónde debería escribirlo