Pagina 1 di 1
[Risolto] Copiare il contenuto dei commenti
Inviato: venerdì 25 luglio 2025, 17:04
da marioR13
Salve a tutti
avendo tante note commenti in un foglio di calcolo, avevo pensato di raggrupparle tutte in un foglio separato o meglio ancora in un foglio di testo, non tanto come copia/incolla della cella, ma per un lavoro fatto bene avrevo pensato di estrarre proprio il contenuto della nota e incollarlo su writer/blocco note ecc ... il fatto è che essendo tante le note non potrei mai farlo con la procedura "mostra nota, seleziona contenuto della cella, copia/incolla" e così via, per ogni singola nota ...... quindi mi chiedevo se esistesse un modo per poter incollare il contenuto di tutte le note in una sola volta ....
Da una prima ricerca non è venuto fuori nulla, quindi immagino non si possa fare, ma prima di mollare volevo chiedere anche a voi.
Grazie a chi mi aiuterà.
Re: copiare il contenuto di tante note
Inviato: venerdì 25 luglio 2025, 20:18
da cwolan
Ciao,
marioR13 ha scritto: ↑venerdì 25 luglio 2025, 17:04
da una prima ricerca non è venuto fuori nulla, (...)
Si veda, ad esempio, l'argomento
Can I export/print a list of the comments in a Calc spreadsheet?.
La macro crea un nuovo documento Calc con un elenco di commenti. Questo elenco può essere esportato, copiato e così via.
Re: Copiare il contenuto dei commenti
Inviato: sabato 26 luglio 2025, 8:56
da charlie
Ciao, ho cambiato il titolo, in Calc si parla di
commenti.
La macro segnalata da @cwolan funziona benissimo e vale la pena riportarla qui:
Codice: Seleziona tutto
Sub collectComments
Dim oSheets As Variant, oSheet As Variant, oAnnotations As Variant, oAnnotation As Variant
Dim oParent As Variant, sAuthor As String, sDate As String, sAnnotationText As String
Dim i As Long, j As Long, k As Long, aRes As Variant
oSheets = ThisComponent.getSheets()
aRes = Array(Array("Address","Content","Author","Date","Comment"))
k = 0
For i = 0 To oSheets.getCount()-1
oSheet = oSheets.getByIndex(i)
oAnnotations = oSheet.getAnnotations()
For j = 0 To oAnnotations.getCount()-1
oAnnotation = oAnnotations.getByIndex(j)
oParent = oAnnotation.getParent()
sAuthor = oAnnotation.getAuthor()
sDate = oAnnotation.getDate()
sAnnotationText = oAnnotation.getString()
k = k + 1
ReDim Preserve aRes(0 To k)
aRes(k) = Array(oParent.AbsoluteName, oParent.getString(), sAuthor, sDate, sAnnotationText)
Next j
Next i
If UBound(aRes) > LBound(aRes) Then
GlobalScope.BasicLibraries.LoadLibrary("Tools")
CreateNewDocument("scalc").getSheets().getByIndex(0).getCellRangeByPosition(0, 0, UBound(aRes(0)), UBound(aRes)).setDataArray(aRes)
EndIf
End Sub
Grazie a @cwolan

Re: copiare il contenuto di tante note
Inviato: sabato 26 luglio 2025, 10:26
da marioR13
bèh che dire, grazie infinite ! mi hai risparmiato ore e ore e giorni di copia e incolla, e soprattutto ha salvato la mia salute mentale
