Hector ha un grande foglio di lavoro contenente circa 600 righe e 70 colonne. Distribuite in queste 43.000 celle sono circa 200 celle con commenti. Hector vuole estrarre i commenti e inserirli nelle celle a destra del corpo principale della tabella dei dati. Se un commento, ad esempio, è allegato alla cella C43, desidera che il testo di quel commento finisca nella cella CC43 e che il commento originale venga eliminato.

Potresti pensare di poter usare Incolla speciale per eseguire l’attività, ma non funziona. Se copi le celle originali e quindi utilizzi Modifica | Incolla speciale | Commenti, quindi solo i commenti vengono incollati nelle celle di destinazione. Sono ancora commenti e non testo nelle celle, il che va contro l’obiettivo di Hector.

L’unico modo per gestire questo tipo di estrazione è utilizzare una macro. Quanto segue, se eseguito su una selezione di celle, estrarrà i commenti, sposterà il testo del commento e quindi eliminerà il commento originale.

Sub CommentsToCells()

Dim rCell As Excel.Range     Dim rData As Excel.Range     Dim sComment As String

' Horizontal displacement     Const iColOffset As Integer = 78

' extract comments from selected range     If TypeName(Selection) = "Range" Then         Set rData = Intersect(Selection, ActiveSheet.UsedRange)

For Each rCell In rData.Cells             On Error Resume Next             sComment = rCell.Comment.Text             If Len(sComment) > 0 Then                 rCell.Offset(, iColOffset).Value = sComment                 rCell.Comment.Delete             End If             sComment = ""

On Error GoTo 0         Next     End If End Sub

La macro utilizza la costante iColOffset per specificare quante celle a destra deve essere spostato il testo di un commento. In questo caso, l’offset (78) è uguale a tre “alfabeti” (26 * 3), quindi il testo di un commento originariamente nella colonna C finirà nella colonna CC.

_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 (2981) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: