Evidenziare riga della cella attiva



  • Evidenziare riga della cella attiva
    di Francy (utente non iscritto) data: 02/06/2016 17:08:45

    Salve, chiedo il vostro aiuto. Ho provato a fare la ricerca all'interno del forum ma non ho trovato la soluzione al mio problema.
    Ho la necessità di visualizzare velocemente la riga della cella attiva, tramite evidenziazione della stessa o altro metodo. L'importante è che venga messa in qualche modo in evidenza, senza però perdere la formattazione originale, visto che si tratta di un elenco di dati numerici colorati con il riempimento.
    Sapreste indicarmi un codice utile a questo scopo?
    Grazie mille.



  • di Albatros54 data: 02/06/2016 18:01:49

    Prova il codice sotto.
    Da incollare in vba sul foglio dove avviene la selezione della cella.
    ciao
    albatros54 
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim wi As Window
    Set wi = ActiveWindow
    Cells.Interior.ColorIndex = xlNone
    Target.Interior.ColorIndex = 8
    
    For i = wi.VisibleRange.Rows(1).Row To Target.Row - 1
    Cells(i, Target.Column).Interior.ColorIndex = 36
    Next i
    For i = wi.VisibleRange.Columns(1).Column To Target.Column - 1
    Cells(Target.Row, i).Interior.ColorIndex = 36
    Next i
    
    End Sub
    






  • di Francy (utente non iscritto) data: 02/06/2016 21:18:20

    Grazie mille, però mi toglie il colore preesistente delle celle. Io vorrei mantenere il colore originale...



  • di Gianfranco data: 03/06/2016 01:28:12

    Ciao
    stessa macro ma allarga le celle e le colonne
    della cella attiva

    metti le misure che vuoi.
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim wi As Window
    Set wi = ActiveWindow
    Cells.RowHeight = 16.5
    Cells.ColumnWidth = 8.11
    
    For i = wi.VisibleRange.Rows(1).Row To Target.Row - 1
    Cells(i, Target.Column).ColumnWidth = 10
    Next i
    For i = wi.VisibleRange.Columns(1).Column To Target.Column - 1
    Cells(Target.Row, i).RowHeight = 25
    Next i
    
    End Sub



  • di Francy (utente non iscritto) data: 03/06/2016 07:51:11

    Grazie mille, oggi proverò questa soluzione.



  • di Francy (utente non iscritto) data: 03/06/2016 14:01:20

    Scusate, avrei bisogno di un'altra informazione perché non ho nessuna competenza in materia di codici.. Ci sarebbe un modo per inserire il codice per tutti i fogli del file excel e salvare il file con il codice? Grazie..



  • di Albatros54 data: 03/06/2016 14:18:55

    Da incollare in VBA nella cartella ThisWorkbook.
    ciao
    albatros54
     
    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Dim wi As Window
    Set wi = ActiveWindow
    Cells.RowHeight = 16.5
    Cells.ColumnWidth = 8.11
    
    For i = wi.VisibleRange.Rows(1).Row To Target.Row - 1
    Cells(i, Target.Column).ColumnWidth = 10
    Next i
    For i = wi.VisibleRange.Columns(1).Column To Target.Column - 1
    Cells(Target.Row, i).RowHeight = 25
    Next i
    
    End Sub






  • di Francy (utente non iscritto) data: 04/06/2016 00:39:20

    Grazie
    L'ho modificata così ed è perfetta..

    Di nuovo grazie
     
    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Dim wi As Window
    Set wi = ActiveWindow
    Cells.RowHeight = 20
    
    For i = wi.VisibleRange.Columns(1).Column To Target.Column - 1
    Cells(Target.Row, i).RowHeight = 40
    Next i
    
    End Sub