Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

La procedura VBA (Visual Basic, Applications Edition) seguente consente di usare i valori delle celle come etichette dati nei grafici in Excel per Mac. Per utilizzare la procedura, eseguire le operazioni seguenti:

  1. In Excel fare clic su Strumenti > Macro > Registra nuova macro.

  2. Nell'elenco a discesa Memorizza macro in selezionare Cartella macro personale.

    Nota: Archiviando la routine VBA nella cartella di lavoro macro personale, è possibile usarla in qualsiasi istanza di Excel. Questo significa che non è limitato all'uso in una singola cartella di lavoro.

  3. Scegliere OK.

  4. Passare a Strumenti > macro > Interrompi registrazione.

  5. Passare a Strumenti > Macro > Visual Basic Editor.

  6. Visual Basic Editor (VBE) verrà aperto sopra Excel. Nel riquadro di spostamento a sinistra espandere VBAProject (PERSONAL. XLSB) per visualizzare il modulo 1.

  7. Fare doppio clic su Modulo1 per visualizzare il riquadro Codice, che verrà aperto sul lato destro della finestra VBE.

  8. Il codice VBA creato durante la registrazione di una nuova macro non è necessario, quindi selezionare tutto, quindi premere CANC

  9. Selezionare quindi il codice VBA nella casella di testo seguente, premere CMD+C per copiarlo, quindi incollarlo di nuovo nel riquadro Codice con CMD+V. È ora possibile uscire da Visual Basic Editor e tornare a Excel.

  10. Testare la macro creando un grafico con etichette dati. Selezionare quindi un'etichetta dati nel grafico ed eseguire la macro facendo clic su Strumenti > Macro > Macro. Selezionare SetCustomDataLabels, quindi premere Esegui. Verrà automaticamente richiesto di selezionare l'intervallo di etichette dati, quindi premere OK.  

    Nota: Le procedure VBA non possono essere annullate, quindi provare a eseguire questa operazione su una copia di una cartella di lavoro. Se si esegue il codice e non si vogliono mantenere i risultati, è necessario chiudere la cartella di lavoro senza salvarla.

  11. Quando si esce da Excel, assicurarsi di scegliere di salvare le modifiche in PERSONAL. XLSB in modo che la macro sarà disponibile in futuro.

  12. Ogni volta che si vogliono aggiungere o rimuovere etichette dati da un grafico, selezionare le etichette dati ed eseguire la macro.

  13. È possibile usare Preferenze di Excel >> barra multifunzione & barra degli strumenti per aggiungere un pulsante per eseguire la macro dalla barra multifunzione o dalla barra degli strumenti.

Routine VBA

Option Explicit

Sub SetCustomDataLabels()
' make sure a series is selected
    If TypeOf Selection Is DataLabels Or TypeOf Selection Is Point Then
        Selection.Parent.Select
    ElseIf TypeOf Selection Is DataLabel Then
        Selection.Parent.Parent.Select
    End If

    If TypeOf Selection Is Series Then
        Else
        MsgBox "Select a chart series and try again."
        Exit Sub
    End If

    If Selection.HasDataLabels Then
        'If the data labels from cells are already showing, stop showing them and exit.
        'If labels include other info (e.g., values or categories) this will still appear
        If Selection.DataLabels.ShowRange Then
            Selection.DataLabels.ShowRange = False
            Exit Sub
        End If
    End If
 
'Use the InputBox dialog to set the range for the data labels
    On Error Resume Next
        Dim rng As Range
        Set rng = Application.InputBox(Prompt:="Select data label range.", Title:="Data Label Range", Type:=8)
    On Error GoTo 0

    If rng Is Nothing Then Exit Sub ' clicked cancel
        If Selection.HasDataLabels Then
            'This will include the new text from cells into existing data labels
        Else
        'Otherwise add data labels (empty labels)
            Selection.HasDataLabels = True
            Selection.DataLabels.ShowValue = False
        End If
    
    'Create a string that includes the sheet name and range reference.
    Dim rngAddress As String
        rngAddress = "='" & rng.Worksheet.Name & "'!" & rng.Address(RowAbsolute:=True, ColumnAbsolute:=True, External:=False)
        Selection.DataLabels.Format.TextFrame2.TextRange.InsertChartField msoChartFieldRange, rngAddress, 0
        Selection.DataLabels.ShowRange = True

End Sub

Servono altre informazioni?

È sempre possibile rivolgersi a un esperto della Tech Community di Excel o ottenere supporto nelle Community.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×