Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [VBA Excel 2010] Rendere invisibile un'etichetta di un grafico dove qta < di x

    Buongiorno a tutti,
    ho un grafico a torta che riporta molte serie dati di conseguenza sulle serie dati che hanno una quantità sotto una determinata percentuale vorrei far sparire l'etichetta.

    Tra le proprietà dei grafici di excel non ho trovato nulla di conseguenza sono passato al VBA.

    Ho fatto questo:
    codice:
    Sub grafico()
    Dim i As Integer
    ActiveSheet.ChartObjects("Grafico 1").Activate
    ActiveChart.SeriesCollection(1).Select
    For i = 1 To ActiveChart.SeriesCollection(1).Points.Count
        ActiveChart.SeriesCollection(1).Points(i).Select
        ActiveChart.SeriesCollection(1).Points(i).ApplyDataLabels
        ActiveChart.SeriesCollection(1).Points(i).DataLabel.Select
        Selection.ShowCategoryName = -1
        Selection.ShowValue = -1
        Selection.ShowPercentage = -1
        If Selection.Percentage < 0.001 Then 
            Selection.Delete
        Else
        End If
    Next
    End Sub
    Il mio problema è nella riga rossa, ovvero dove cerco di leggere la percentuale del grafico per il blocco che ho selezionato tramite il ciclo For.
    Selection.Percentage non va bene e non so cosa devo mettere per rilevare il valore della percentuale di quel blocco.
    In pratica se la percentuale del blocco selezionato è inferiore al 2% mi nascone l'etichetta

    Qualcuno conosce la proprietà corretta per rilevare la percentuale del blocco selezionato?

    Grazie dell'attenzione

  2. #2
    Ci sono riuscito.. Ecco la soluzione nel caso serva a qualcuno..

    Sub grafico()
    Dim i As Integer

    codice:
    ActiveSheet.ChartObjects("Grafico 1").Activate
    ActiveChart.SeriesCollection(1).Select
    For i = 1 To ActiveChart.SeriesCollection(1).Points.Count
        ActiveChart.SeriesCollection(1).Points(i).Select
        ActiveChart.SeriesCollection(1).Points(i).ApplyDataLabels
        ActiveChart.SeriesCollection(1).Points(i).DataLabel.Select
        Selection.ShowCategoryName = -1
        Selection.ShowValue = -1
        Selection.ShowPercentage = -1
        If Mid(Right(Selection.Formula, 3), 1, 2) < 2 Then
            Selection.Delete
        Else
        End If
    Next
    
    End Sub

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.