Roni vuole cancellare tutto in un foglio di lavoro tranne le celle che possono contenere formule. Questa attività può essere completata manualmente o tramite l’uso di una macro.

Se vuoi fare la cancellazione manualmente, puoi seguire questi passaggi:

  1. Premi F5. Excel visualizza la finestra di dialogo Vai a. (Vedi figura 1.)

  2. Fare clic sul pulsante Speciale. Excel visualizza la finestra di dialogo Vai a speciale.

(Vedi figura 2.)

  1. Seleziona il pulsante di opzione Costanti. Le quattro caselle di controllo sotto l’opzione Formule diventano quindi disponibili. (Questo può creare un po ‘di confusione. Il motivo per cui Microsoft ha fatto sì che il pulsante di opzione Constants controlli alcune caselle di controllo sotto un pulsante di opzione diverso non è immediatamente chiaro.)

  2. Assicurati che tutte le caselle di controllo sotto il pulsante di opzione Formule siano selezionate. (Dovrebbero essere selezionati per impostazione predefinita.)

  3. Fare clic su OK. Excel seleziona tutte le costanti (celle che non contengono formule) nel foglio di lavoro.

  4. Premi il tasto Canc.

Funziona benissimo se hai solo bisogno di cancellare i contenuti non di formula di un foglio di lavoro di tanto in tanto. Se è necessario farlo più spesso, è possibile utilizzare semplicemente il registratore di macro per registrare i passaggi precedenti. Oppure, se preferisci, puoi creare la tua macro da zero, come la seguente:

Sub ClearAllButFormulas()

Dim wks As Worksheet

'ignore errors in case there is only formulas     On Error Resume Next     For Each wks In Worksheets         wks.Cells.SpecialCells(xlCellTypeConstants).ClearContents     Next     On Error GoTo 0     Set wks = Nothing End Sub

Questa macro è particolarmente utile se è necessario cancellare tutte le celle non di formula in un’intera cartella di lavoro. Il motivo è perché esegue la cancellazione su ogni foglio di lavoro dell’intera cartella di lavoro, senza che sia necessario eseguire la cancellazione manualmente.

È necessario prestare attenzione quando si utilizza questa macro. Assicurati di voler davvero cancellare tutto tranne le celle che contengono formule nel foglio di lavoro o nella cartella di lavoro prima di eseguire questa macro. Sarebbe un peccato sbarazzarsi accidentalmente del contenuto delle celle che dovevi veramente conservare. Se sei un po ‘schizzinoso riguardo a questa possibilità, potresti voler usare la seguente versione della macro:

Sub ClearAllButFormulas2()

Dim wks As Worksheet     Dim sTemp As String     Dim iCheck As Integer

sTemp = "This macro deletes everything in the current "

sTemp = sTemp & "workbook except formulas. Once done, "

sTemp = sTemp & "it cannot be undone." & vbCrLf & vbCrLf     sTemp = sTemp & "Are you sure you want to continue?"



iCheck = MsgBox(sTemp, vbYesNo + vbExclamation, "Warning!")



If iCheck = vbYes Then         'ignore errors in case there is only formulas         On Error Resume Next         For Each wks In Worksheets             wks.Cells.SpecialCells(xlCellTypeConstants).ClearContents         Next         On Error GoTo 0     Else         MsgBox "Operation cancelled."

End If End Sub

Questa versione visualizza una finestra di messaggio che chiede se sei sicuro di voler eseguire la cancellazione. Il risultato è che hai meno possibilità di rovinare accidentalmente la tua cartella di lavoro.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (9097) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Excel qui: