1) si quieres que sea automatico, deberas encontrar la forma (y evento) de indicarle al codigo que "hay una nueva semana no. ???")
2) con base en el codigo que usas para actualizar/agregar las semanas "nuevas"...
> ActiveSheet.PivotTables("PivotTable6").PivotFields("Semana").CalculatedItem s.Add "So far", "='45'", True
-> podrias modificar esta misma macro preguntando por el nuevo numero de semana (sin prevencion/correccion de errores...)
ActiveSheet.PivotTables("PivotTable6").PivotFields("Semana").CalculatedItem s.Add _
"So far", "='" & InputBox("ingresa EL NUEVO numero de semana") & "'", True
> Tengo una base de datos que se alimenta de un formulario.
> De esa base de datos. Tengo encabezados Fecha transaccion Semana Mes
> Por ejemplo
> Fecha transaccion Semana Mes
> 11/4/2009 300.00 45 Noviembre
> 11/5/2009 345.00 45 Noviembre
> 11/4/2009 -(90.00) 45 Noviembre
> 11/4/2009 -(200.00) 45 Noviembre
> 11/11/2009 -(100.00) 46 Noviembre
> Ahora. De esa base de datos tengo una tabla y grafico dinamico (ya diseno predefinido).
> Tabla dinamica esta en la hoja So far, el grafico esta como objeto en la hoja Home.
> Hago esto para actualizar la tabla / grafico dinamico.
> ftg = WorkSheet(“Data”).Range("x65536").End(xlUp).Offset(1, 0).Row
> Sheets("So far").Select
> Range("A5").Select
> ActiveSheet.PivotTableWizard SourceType:=xlDatabase, SourceData:= _
> "Data!R2C24:R" & ftg & "C28"
> Y si lo actualiza perfectamente.
> En la tabla grafico dinamico agregue un campo calculado que es la suma de las semanas por ejemplo (45 + 46) + 47 + 48 etc).
> La pregunta es: Si lleno otro renglon por ejemplo:
> 11/18/2009 940 47 Noviembre
> Como puedo hacer una macro para que agregue al campo calculado la semana 47
> y el resto de las semanas que se agreguen a la base de datos automaticamente (45 + 46 + 47 + 48 …etc.)
> y que el campo calculado lo ponga hasta el final de la tabla pivote.
> Este es el codigo cuando lo agrego pero no puedo hacer que se actualice automaticamente
> ActiveSheet.PivotTables("PivotTable6").PivotFields("Semana"). _
> CalculatedItems.Add "So far", "='45'", True