Excel - Bucle que me elimine los segmentadores de datos insertados en una hoja.

 
Vista:
sin imagen de perfil

Bucle que me elimine los segmentadores de datos insertados en una hoja.

Publicado por Rafael (102 intervenciones) el 28/08/2024 07:23:00
Mediante el código que insertaré a continuación -y que se me facilitó en estos foros- conseguí eliminar cualquier gráfico insertado en una hoja, cualquiera que fuera también su nombre. Este fue el código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
'Este procedimiento recorrerá cada gráfico de la Hoja de GRAFICOS, eliminando cada uno de ellos:
Dim cht As ChartObject
    For Each cht In Sheets("GRAFICOS").ChartObjects
        cht.Delete
    Next cht[/code]
 
Ahora, descubiertos los EXTRAORDINARIOS segmentadores o 'slicers' de datos [y escalas de tiempo pero con éstas, aparentemente, no se me presentan problemas...], precisaría hacer con ellos lo mismo que hago con los gráficos: eliminarlos tras pulsar un botón o incardinar tal eliminación en determinado procedimiento VBA.
 
Es decir eliminar todos y cada uno de los segmentadores que POTENCIALMENTE existan o puedan existir en una hoja.
 
Como se deduce de lo dicho antes los segmentadores se insertan en la hoja, dependiendo del modo y momento en que lo hago, con NOMBRES DISTINTOS -ahí está el problema-, siendo en el momento actual, estos:
 
[code] SegmGRAF Macro:
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Sexo").Slicers.Add ActiveSheet, , "Sexo", "Sexo", 11.25, 321, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "DiasIngr").Slicers.Add ActiveSheet, , "DiasIngr", "DiasIngr", 48.75, 358.5, _
        144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "NumIngr").Slicers.Add ActiveSheet, , "NumIngr", "NumIngr", 86.25, 396, 144, _
        198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Voluntariedad").Slicers.Add ActiveSheet, , "Voluntariedad 1", "Voluntariedad" _
        , 123.75, 433.5, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Medio").Slicers.Add ActiveSheet, , "Medio", "Medio", 161.25, 471, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Diagntico1").Slicers.Add ActiveSheet, , "Diagntico1 1", "Diagntico1", 198.75, _
        508.5, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Diagntico2").Slicers.Add ActiveSheet, , "Diagntico2", "Diagntico2", 236.25, _
        546, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Diagntico3").Slicers.Add ActiveSheet, , "Diagntico3", "Diagntico3", 273.75, _
        583.5, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Diagntico4").Slicers.Add ActiveSheet, , "Diagntico4", "Diagntico4", 311.25, _
        621, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "Intervalo Edad").Slicers.Add ActiveSheet, , "Intervalo Edad 1", _
        "Intervalo Edad", 348.75, 658.5, 144, 198.75
    ActiveWorkbook.SlicerCaches.Add2(ActiveSheet.PivotTables("TablaDinámica1"), _
        "TipoIMC").Slicers.Add ActiveSheet, , "TipoIMC 1", "TipoIMC", 386.25, 696, 144 _
        , 198.75
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Bucle que me elimine los segmentadores de datos insertados en una hoja.

Publicado por Rafael (102 intervenciones) el 29/08/2024 21:09:31
Reparo en que en la pregunta anterior he mezclado parte de la pregunta en sí misma con el código VBA del que hablo en ella.
Visto lo visto la reformularé de nuevo, con el ruego de que el administrador de este foro elimine esta.
Perdón.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar