Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Formato commenti Excel 2010

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Formato commenti Excel 2010

Postdi gimart » 24/09/12 12:19

Buongiorno a tutti. In Excel 2010 vorrei impostare a priori il formato (dimensione del carattere) dei commenti in una cartella composta da più fogli.
Più precisamente, desidererei un qualcosa che mi impostasse il formato dei commenti dal principio, prima, cioè, che questi vengano inseriti nelle celle. Io dispongo di una macro che fa l'operazione a valle, dopo cioè l'inserzione del commento, ma è noioso doverla lanciare per ogni cella interessata.
Grazie.
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Sponsor
 

Re: Formato commenti Excel 2010

Postdi ricky53 » 24/09/12 12:34

Ciao,
così al volo non avendo il codice della tua macro:

fai eseguire la macro
1. all'apertura del file
oppure
2. all'attivazione del foglio.

Se invii la macro potrei essere più preciso.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Formato commenti Excel 2010

Postdi gimart » 24/09/12 13:02

ricky53 ha scritto:Ciao,
così al volo non avendo il codice della tua macro:

fai eseguire la macro
1. all'apertura del file
oppure
2. all'attivazione del foglio.

Se invii la macro potrei essere più preciso.


Purtroppo non è possibile, la macro agisce solo su una cella alla volta e solo se il commento esiste già. Te la trascrivo (me l'ha fatta Anthony47):

Codice: Seleziona tutto
Sub Font_commenti()
'
' Macro registrata il 24/07/2012
' vedi http://www.pc-facile.com/forum/viewtopic.php?f=26&t=93670
If ActiveCell.Comment.Text <> "" Then
    With ActiveCell.Comment.Shape.TextFrame.Characters.Font
      .Name = "Tahoma"
      .Size = 11
      .Bold = False
      .Italic = False
      .Color = RGB(0, 0, 0)
    End With
  End If

End Sub
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Re: Formato commenti Excel 2010

Postdi ricky53 » 24/09/12 13:28

Ciao,
allora va associata all'evento "Change"
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
' qui va inserito il tuo codice che va adattato
End Sub


Adesso devo scappare ... ma più tardi provo a modificare la tua macro che non ho avuto il tempo di leggere perchè ho una riunione tra poco ... che spero duri poco.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Formato commenti Excel 2010

Postdi ricky53 » 24/09/12 16:49

Ciao,
eccomi di nuovo qui.

Allora: hai un intervallo di celle nel quale inserisci i commenti o li inserisci in tutto il foglio?
Ipotizziamo un intervallo (che poi potremo estendere) "A1:Z100"

Inserisci in "ThisWorkbook" il seguente codice

Codice: Seleziona tutto
Private Sub Workbook_Open()
' Viene esguito all'apertura del file
    Sistema_Commenti
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
' Viene esguito ad ogni attivazione di un foglio
    Sistema_Commenti
End Sub


Sub Sistema_Commenti()
    Dim Intervallo As Range, Cl As Range
    On Error Resume Next
    Set Intervallo = Range("A1:Z100")
    Application.EnableEvents = False
    For Each Cl In Intervallo
        If Cl.Comment.Text <> "" Then
            With Cl.Comment.Shape.TextFrame.Characters.Font
                .Name = "Tahoma"
                .Size = 11
                .Bold = False
                .Italic = False
                .Color = RGB(0, 0, 255) ' Ho scelto il colore BLU per distinguere i commenti già trattati da quelli non trattati
            End With
        End If
    Next Cl
    Application.EnableEvents = True
End Sub


Prova e ... vediamo, se necessario, di migliorare quanto ti ho proposto.

Vai su un foglio, cambia foglio e ritorna su quello in cui stavi e ... controlla il commenti e ... quelli trattati saranno in blu.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Formato commenti Excel 2010

Postdi gimart » 25/09/12 07:11

ricky la tua macro funziona alla grande :) ! Grazie mille!
Non mi debbo più preoccupare di applicare quella che già avevo io ogni volta che inserisco un commento perchè, con la tua, alla successiva apertura della cartella, mi ritrovo tutti i commenti con il font modificato.
Una sola cosa voglio chiederti, ma forse non si può fare: poichè sono un perfezionista pignolo, mi piace che la finestra del commento sia adeguata alla dimensione dello stesso e quindi già so che all'apertura della cartella, andrò a fare questa operazione per tutti quelli che ho aggiunto nella precedente sessione. Allora mi domando se sia possibile fare in modo che questa cartella abbia a priori il font che mi interessa per i commenti. Spero di essere stato chiaro.
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Re: Formato commenti Excel 2010

Postdi Flash30005 » 25/09/12 14:33

Non ho seguito molto il topic
ma sembra che all'inizio tu voglia distinguere i commenti precedenti da quelli attuali ora vorresti impostare un font per i nuovi (credo diverso dai precedenti quindi occorrerebbe aggiungere un "Else"
Codice: Seleziona tutto
        If Cl.Comment.Text <> "" Then    '<<<<<<<<<<< parte di macro esistente
            With Cl.Comment.Shape.TextFrame.Characters.Font
                .Name = "Tahoma"
                .Size = 11
                .Bold = False
                .Italic = False
                .Color = RGB(0, 0, 255) ' Ho scelto il colore BLU per distinguere i commenti già trattati da quelli non trattati
            End With
        Else  '<<<<< aggiungere condizione se la cella non ha commenti
            With Cl.Comment.Shape.TextFrame.Characters.Font
                .Name = "Times New Roman"  '<<<<< font
                .Size = 11                            '<<<< dimensione
                .Bold = False                    '<<<< grassetto no o si
                .Italic = False                   '<<<<<< inclinato
                .Color = RGB(255, 0, 0) ' <<<<<<<< colore rosso
            End With
        End If   '<<<<<<<<<<<< fine condizione esistente


ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato commenti Excel 2010

Postdi gimart » 25/09/12 15:42

Flash30005 ha scritto:Non ho seguito molto il topic
ma sembra che all'inizio tu voglia distinguere i commenti precedenti da quelli attuali ora vorresti impostare un font per i nuovi (credo diverso dai precedenti quindi occorrerebbe aggiungere un "Else"
Codice: Seleziona tutto
        If Cl.Comment.Text <> "" Then    '<<<<<<<<<<< parte di macro esistente
            With Cl.Comment.Shape.TextFrame.Characters.Font
                .Name = "Tahoma"
                .Size = 11
                .Bold = False
                .Italic = False
                .Color = RGB(0, 0, 255) ' Ho scelto il colore BLU per distinguere i commenti già trattati da quelli non trattati
            End With
        Else  '<<<<< aggiungere condizione se la cella non ha commenti
            With Cl.Comment.Shape.TextFrame.Characters.Font
                .Name = "Times New Roman"  '<<<<< font
                .Size = 11                            '<<<< dimensione
                .Bold = False                    '<<<< grassetto no o si
                .Italic = False                   '<<<<<< inclinato
                .Color = RGB(255, 0, 0) ' <<<<<<<< colore rosso
            End With
        End If   '<<<<<<<<<<<< fine condizione esistente


ciao


No grazie, non è così. Ora cerco di spiegarmi meglio. Utilizzo una cartella Excel per la mia contabilità. E' composta da 12 fogli, uno per ciascun mese dell'anno. In essa riporto tutte le uscite di casa, suddivise per categorie, ed il traffico delle carte di credito. Poichè il foglio è molto grande, quando abbracciato in una sola videata del monitor, il carattere standard dei commenti è troppo piccolo per una buona visualizzazione. E' opportuno, quindi, aumentare la dimensione del font degli stessi. ricky53 mi ha preparato un'ottima macro che, senza bisogno che la si lanci, alla successiva riapertura della cartella, mi fa trovare tutti i commenti con il font desiderato. L'unico piccolo inconveniente è che, spesso, occorre modificare comunque il commento per adeguare la sua finestra allo spazio occupato dal testo. Quindi l'optimum sarebbe che la cartella dei 12 fogli avesse il font dei commenti già aggiustato, prima ancora della loro immissione nelle relative celle. Non credo si possa fare, ma se si potesse..... :)
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Re: Formato commenti Excel 2010

Postdi ricky53 » 25/09/12 19:01

Ciao Flash,
l'Else
che proponi non viene eseguito perchè entra "On Error"
in quanto non si può testare con

Codice: Seleziona tutto
If Cl.Comment.Text <> "" Then


una cella che non contiene commenti.
Facendolo si ottiene l'errore Run-Time 91

Questo è quanto sapevo io e che ho verificato sul campo.

Esiste una'altra possibilità?
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Formato commenti Excel 2010

Postdi Flash30005 » 25/09/12 21:30

Ho editato il codice direttamente nel post senza provarlo ed in effetti va in errore se si elimina la riga
On Error resume next
con la riga codice impostata non fa proprio nulla quindi bisogna trovare una soluzione valida

Penso sia impossibile, come dici tu stesso, ottenere l'Optinum
gimart ha scritto:Quindi l'optimum sarebbe che la cartella dei 12 fogli avesse il font dei commenti già aggiustato, prima ancora della loro immissione nelle relative celle. Non credo si possa fare, ma se si potesse


visto che non si può "aggiustare" il testo prima ancora di averlo digitato però puoi aggiungere alla macro di Ricky la funzione autoaggiustamento con una sola riga codice
Codice: Seleziona tutto
        .AutoSize = True

(nell'elenco di formattazione commento)

Non avrai l'aggiustamento dei commenti prima
ma lo otterrai dopo

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato commenti Excel 2010

Postdi gimart » 25/09/12 23:19

Flash30005 ha scritto:Ho editato il codice direttamente nel post senza provarlo ed in effetti va in errore se si elimina la riga
On Error resume next
con la riga codice impostata non fa proprio nulla quindi bisogna trovare una soluzione valida

Penso sia impossibile, come dici tu stesso, ottenere l'Optinum
gimart ha scritto:Quindi l'optimum sarebbe che la cartella dei 12 fogli avesse il font dei commenti già aggiustato, prima ancora della loro immissione nelle relative celle. Non credo si possa fare, ma se si potesse


visto che non si può "aggiustare" il testo prima ancora di averlo digitato però puoi aggiungere alla macro di Ricky la funzione autoaggiustamento con una sola riga codice
Codice: Seleziona tutto
        .AutoSize = True

(nell'elenco di formattazione commento)

Non avrai l'aggiustamento dei commenti prima
ma lo otterrai dopo

Ciao


No, scusami, non ho capito: anche senza aggiungere la riga
Codice: Seleziona tutto
"     .AutoSize = True"
ottengo l'aggiustamento dei commenti dopo, cioè me lo ritrovo alla riapertura del file. Cosa cambierebbe se aggiungessi quella riga? Ho provato comunque ad aggiungerla, ma mi da un errore.
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Re: Formato commenti Excel 2010

Postdi Flash30005 » 26/09/12 00:05

.autosize = true
modifica la casella commento adattandola al testo
con appropriato codice riferito alla cella

in pratica la macro di Ricky diverrebbe così
Codice: Seleziona tutto
Sub Sistema_Commenti()
    Dim Intervallo As Range, Cl As Range
    On Error Resume Next
    'Set Intervallo = Range("A1:A3")
    Set Intervallo = Range("A1:Z100")
    Application.EnableEvents = False
    For Each Cl In Intervallo
        If Cl.Comment.Text <> "" Then
            With Cl.Comment.Shape.TextFrame.Characters.Font
                .Name = "Tahoma"
                .Size = 11
                .Bold = False
                .Italic = False
                .Color = RGB(0, 0, 255) ' Ho scelto il colore BLU per distinguere i commenti già trattati da quelli non trattati
            End With
            Cl.Comment.Shape.TextFrame.AutoSize = True  '<<<<<<<<<< aggiunta riga codice
        End If
    Next Cl
    Application.EnableEvents = True
End Sub


Però, nel tuo caso, opterei per una soluzione di questo tipo
Codice: Seleziona tutto
Sub Formattacommenti()
  Dim ws As Worksheet
  Dim cmt As Comment
  For Each ws In ActiveWorkbook.Worksheets
    For Each cmt In ws.Comments
      With cmt.Shape.TextFrame.Characters.Font
        .Name = "Taoma"
        .Size = 11
        .Color = RGB(0, 0, 255)
      End With
       cmt.Shape.TextFrame.AutoSize = True
    Next cmt
  Next ws
End Sub

Da richiamare solo all'avvio del file e non attivandola ad ogni foglio
perché dovrebbe provvedere da sola
prova e fai sapere

ciao
ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato commenti Excel 2010

Postdi gimart » 26/09/12 06:24

Allora, ho provato ma non funziona:

- La macro di ricky "Sistema_commenti" modificata come tu dici non mi trasforma più il font dei commenti;
- Quando poi lancio la "FormattaCommenti" si apre la finestra di VisualBasic con la prima riga colorata in giallo e, alla chiusura di VisualBasic, compare il messaggio "Con questo comando verranno interrotte le operazioni di debug". Questo accade anche se ripristino la macro di ricky.

Ma tu le hai testate?
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Re: Formato commenti Excel 2010

Postdi Flash30005 » 26/09/12 13:13

Le testate le ho date al muro per trovare la macro più adatta al tuo quesito
che scansiona tutti i commenti di tutti i fogli
dopodiché ho aggiunto la riga codice per "l'autosize" del commento alla macro di Ricky
ambedue funzionano e posto il file con le due macro
Download File
Nei due fogli, prima di attivare la macro, noterai che, , ci sono 3 commenti per foglio con font times new roman di colore nero
il riquadro commento è ristretto e non fa vedere l'intero commento
se attivi la macro di Ricky con l'apposito tasto avrai l'adattamento dei font (cambiati in Arial e colore blu) solo nel foglio 3 (dei comandi)
Se invece utilizzi il comando di attivazione della mia macro
tutti i commenti contenuti nella cartella (3 per ogni foglio) verrano modificati e adattati

Uso excel 2003 e non mi dà alcun errore in nessuna delle due macro

ciao

N.B. nella mia macro c'è anche la possibilità, se occorre, di cambiare il colore del fondo del commento ;)
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato commenti Excel 2010

Postdi gimart » 26/09/12 17:05

Flash30005 ha scritto:Le testate le ho date al muro per trovare la macro più adatta al tuo quesito
che scansiona tutti i commenti di tutti i fogli
dopodiché ho aggiunto la riga codice per "l'autosize" del commento alla macro di Ricky
ambedue funzionano e posto il file con le due macro
Download File
Nei due fogli, prima di attivare la macro, noterai che, , ci sono 3 commenti per foglio con font times new roman di colore nero
il riquadro commento è ristretto e non fa vedere l'intero commento
se attivi la macro di Ricky con l'apposito tasto avrai l'adattamento dei font (cambiati in Arial e colore blu) solo nel foglio 3 (dei comandi)
Se invece utilizzi il comando di attivazione della mia macro
tutti i commenti contenuti nella cartella (3 per ogni foglio) verrano modificati e adattati

Uso excel 2003 e non mi dà alcun errore in nessuna delle due macro

ciao

N.B. nella mia macro c'è anche la possibilità, se occorre, di cambiare il colore del fondo del commento ;)


Prima di tutto non ti arrabbiare ;) . Allora, ho fatto così: ho cancellato la macro di Ricky da ThisWorkbook e ho inserito, sempre in ThisWorkbook, la tua. E funziona molto bene su tutti i fogli della cartella. Ma ti farò una domanda che ti farà riprendere con le testate al muro: la macro di Ricky partiva automaticamente alla successiva apertura del file, mentre la tua occorre lanciarla. Non è possibile in qualche modo automatizzarla? Grazie e scusami se ....rompo tanto.
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Re: Formato commenti Excel 2010

Postdi Flash30005 » 26/09/12 19:35

La macro va inserita sempre nel modulo
e in thisworkbook va inserita solo la chiamata alla macro (come del resto lo era quella di Ricky)

Nel mio file come test non ho messo la chiamata all'apertura altrimenti non avresti notato la differenza tra prima e dopo esecuzione macro in quanto si sarebbe attivata appena aprivi il file

Ciao
(non sono affatto arrabbiato ma solo affamato, infatti ora vado ;) )
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato commenti Excel 2010

Postdi gimart » 26/09/12 20:08

Flash30005 ha scritto:La macro va inserita sempre nel modulo
e in thisworkbook va inserita solo la chiamata alla macro (come del resto lo era quella di Ricky)

Nel mio file come test non ho messo la chiamata all'apertura altrimenti non avresti notato la differenza tra prima e dopo esecuzione macro in quanto si sarebbe attivata appena aprivi il file

Ciao
(non sono affatto arrabbiato ma solo affamato, infatti ora vado ;) )


Quando dici "nel modulo" intendi un modulo di Personal.xls?
E qual'è la chiamata alla macro da inserire in ThisWorkboox? E che funzione ha?
Scusami tanto Flash, ma, come vedi, sono proprio un pivello in VisualBasic.
Comunque, per maggior sicurezza, ho inserito la tua macro sia in un modulo di Personal.xls che in ThisWorkbook. Questo mi consente di inserirla nella barra delle mie macro personali e quindi di poterla utilizzare più facilmente. Grazie per il tempo che mi stai dedicando.
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Re: Formato commenti Excel 2010

Postdi Flash30005 » 26/09/12 20:50

Non scusarti per l'inesperienza è normale per chi vuole imparare... succede anche a me di chiedere ;)
allora...
per inserire una macro in un modulo
devi andare in vba e nel Munu Inserisci selezioni Modulo
all'interno del modulo (finestra lato destro) incolli la macro copiata
Codice: Seleziona tutto
Sub Formattacommenti_Ok()
  Dim ws As Worksheet
  Dim cmt As Comment
  For Each ws In ActiveWorkbook.Worksheets
    For Each cmt In ws.Comments
      With cmt.Shape.TextFrame.Characters.Font
        .Name = "Arial"
        .Size = 11
        .Color = RGB(0, 0, 255) '<<<< colore testo
      End With
      With cmt.Shape.Fill.ForeColor
        .SchemeColor = 1   '<<<< fondo
      End With
       cmt.Shape.TextFrame.AutoSize = True
    Next cmt
  Next ws
End Sub


Se noti nell'editor del Vba hai anche la finestra di sinistra con gli oggetti (VBAProject)
dove sono elencati sia gli oggetti (i vari fogli + Thisworkbook) e i moduli [eventuali Userform e moduli di classe] (nelle parentesi quadre oggetti menu utilizzati normalmente)

Se clicchi due volte su ThisWorkbook avrai la possibilita di inserire il codice che vorrai far attivare quando il file si apre (per default ma puoi anche cambiare "situazione": Close, BeforSave, BeforClose, SheetActivate etc)
quindi nel tuo caso incollando questo codice
Codice: Seleziona tutto
Private Sub Workbook_Open()
Formattacommenti_Ok
End Sub


Avrai un richiamo alla macro postata e incollata nel modulo che si attiverà ad ogni apertura file

è più chiaro ora?

ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Formato commenti Excel 2010

Postdi ricky53 » 26/09/12 23:48

Ciao,
ATTENZIONE: in questo modo NON vengono modificati i commenti inseriti dopo l'apertura del file a meno di non
eseguire manualmente la macro
"Formattacommenti_Ok"
oppure
eseguire la macro
"Workbook_Open"
che richiama la macro che modifica i commenti.


Alla luce di ciò io ritengo sia preferibile avere le modifiche ai commenti ogni volta che il foglio viene attivato; che poi è quello che il codice che avevo proposto faceva. A quel codice va aggiunto il suggerimento di Flash
Codice: Seleziona tutto
Cl.Comment.Shape.TextFrame.AutoSize = True  '<<<<<<<<<< aggiunta riga codice
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Formato commenti Excel 2010

Postdi gimart » 27/09/12 06:23

Flash30005 ha scritto:Non scusarti per l'inesperienza è normale è normale per chi vuole imparare... succede anche a me di chiedere ;)
allora...
per inserire una macro in un modulo
devi andare in vba e nel Munu Inserisci selezioni Modulo
all'interno del modulo (finestra lato destro) incolli la macro copiata
Codice: Seleziona tutto
Sub Formattacommenti_Ok()
  Dim ws As Worksheet
  Dim cmt As Comment
  For Each ws In ActiveWorkbook.Worksheets
    For Each cmt In ws.Comments
      With cmt.Shape.TextFrame.Characters.Font
        .Name = "Arial"
        .Size = 11
        .Color = RGB(0, 0, 255) '<<<< colore testo
      End With
      With cmt.Shape.Fill.ForeColor
        .SchemeColor = 1   '<<<< fondo
      End With
       cmt.Shape.TextFrame.AutoSize = True
    Next cmt
  Next ws
End Sub


Se noti nell'editor del Vba hai anche la finestra di sinistra con gli oggetti (VBAProject)
dove sono elencati sia gli oggetti (i vari fogli + Thisworkbook) e i moduli [eventuali Userform e moduli di classe] (nelle parentesi quadre oggetti menu utilizzati normalmente)

Se clicchi due volte su ThisWorkbook avrai la possibilita di inserire il codice che vorrai far attivare quando il file si apre (per default ma puoi anche cambiare "situazione": Close, BeforSave, BeforClose, SheetActivate etc)
quindi nel tuo caso incollando questo codice
Codice: Seleziona tutto
Private Sub Workbook_Open()
Formattacommenti_Ok
End Sub


Avrai un richiamo alla macro postata e incollata nel modulo che si attiverà ad ogni apertura file

è più chiaro ora?

ciao


Scusami Flash, ma non va.
Ho seguito alla lettera le tue istruzioni: ho, prima di tutto, cancellato la tua macro "Formattacommenti" dai posti dove l'avevo inserita (Personal.xls e ThisWorkbook), poi comando "Inserisci" -> "Modulo" e l'ho copiata nel modulo che si è aperto. Quindi ho cliccato due volte su ThisWorkbook e vi ho copiato il codice
Codice: Seleziona tutto
Private Sub Workbook_Open()
Formattacommenti_Ok
End Sub

Quindi ho chiuso il file ed il programma, salvando tutto. Alla successiva riapertura, il disastro: si è aperto VBA visualizzando il modulo salvato in ThisWorkbook con il messaggio di errore "Errore di compilazione: Sub o function non definita" e sono stati cancellati i commenti di tutta la cartella. Fortuna che ieri sera avevo salvato, come ogni giorno, il Personal.xls e la cartella su un hd esterno.

Al tempo, Flash, mi sono accorto solo ora che non ho usato la macro "Formattacommenti_ok", ma la prima che mi hai dato, cioè "Formattacommenti". Possibile che questo sia stata la causa del problema? Vero è che l'errore è stato segnalato per la seconda macro, ma insomma....
gimart
Win 10 and Office 2010
Avatar utente
gimart
Utente Senior
 
Post: 720
Iscritto il: 21/02/10 12:09

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "Formato commenti Excel 2010":


Chi c’è in linea

Visitano il forum: Anthony47 e 7 ospiti