Report x celle evidenziate
Hai un problema con Excel? 
Report x celle evidenziate
di vbauser (utente non iscritto) data: 19/03/2014 21:40:30
Buonasera a tutti,
Vi illustro il mio problema al quale non riesco a torvare soluzione nelle varie discussioni,
Avrei bisogno di creare un report (tramite un funzione, una macro o qualsiasi altra cosa)ad esempio sul primo foglio di lavoro, in cui vengono riportate tutte le parole o numeri evidenziati (in grassetto o in qualsiasi altro modo) alll'interno della cartella di lavoro il tutto si rende necessario per evidenziare eventuali variazioni di indirizzi o numeri di telefono effettuate dai colleghi (che utilizzano lo stesso file condiviso) senza dover scorrere ogni volta tutti i fogli all'interno della cartella
hogGia trovato un codice vba postato da un altro utente (vedi sotto) ma estrapola solo le parole in grassetto all'interno di una cella e non piu fogli di lavoro
vi ringrazio anticipatamente per le eventuali risposte
Function get_bold_words(cella As Range) As String
Dim i As Integer, s As String
For Each v In Split(cella, " ")
s = s & IIf(cella.Characters(InStr(cella, v), Len(v)).Font.Bold, _
Trim(v) & " ", "")
Next
get_bold_words = Trim(s)
End Function |
di lepat (utente non iscritto) data: 20/03/2014 06:32:17
allega un file di esempio con anche il risultato desiderato
di Zer0Kelvin data: 20/03/2014 10:26:50
Ciao.
"in grassetto o in qualsiasi altro modo" non va molto bene, sarebbe meglio se vi metteste d'accordo su un'unica modalità per evidenziare i valori modificati (non dovrebbe essere difficile).
Come già detto, meglio avere un file di esempio(privo di dati sensibili, con dati fasulli) per avere un'idea della situazione reale e fare prove.
di Vecchio Frac data: 20/03/2014 18:42:57
Utilizzare il file in modalità condivisa non basterebbe? Excel memorizza le modifiche degli utenti.
di vbauser (utente non iscritto) data: 22/03/2014 14:26:41
prima cosa ci tenevo a precisare che il file è gia condiviso e che per evidenziare le variazioni già si evidenziano solo ho allegato un file prova
per rendere un po piu chiara la domanda quello che mi occorrerebbe è un codice che mi riporta sul primo foglio le parole e i numeri evidenziati
sul foglio 2 -3 -4- 5 ecc. (vedi File)
di Vecchio Frac data: 22/03/2014 15:10:33
Quindi basta scorrere riga per riga dei fogli interessati (da 2 in poi), se si trova una cella in grassetto va ricopiata l'intera riga nel foglio1?
Option Explicit
Sub copia_variazioni()
Dim r, ws, rng, riga, cella
r = 4
For Each ws In Worksheets
If ws.Name <> "foglio1" Then
Set rng = ws.Range("B3").CurrentRegion.Resize(ws.Range("B3").CurrentRegion.Rows.Count - 1).Offset(2)
For Each riga In rng.Rows
For Each cella In riga.Cells
If cella.Font.Bold Then
riga.Copy
Foglio1.Cells(r, "B").PasteSpecial xlPasteValues
r = r + 1
Exit For
End If
Next cella
Next riga
End If
Next ws
Application.CutCopyMode = False
MsgBox "Fatto."
End Sub |
di vbauser (utente non iscritto) data: 24/03/2014 22:11:39
Esattamente l ho provato ed è perfetto è proprio quello che mi serviva grazie mille
Un ultima cosa se possibile se invece di cercare il grassetto in tutto il foglio ad esempio vorrei che cerca solo dalla colonna A alla colonna G di tutti i fogli come dovrei impostare il codice?
Vuoi Approfondire?