Pagina precedente | 1 | Pagina successiva
Stampa | Notifica email    
Autore

TASTO TAB, SELEZIONE CELLE

Ultimo Aggiornamento: 23/10/2018 22:59
Post: 1
Registrato il: 13/10/2018
Utente Junior
OFFLINE
13/10/2018 01:13

ciao a tutti. vi propongo questo problema: premendo il tasto tab,vengono selezionate le celle disposte per riga. vorrei invece selezionare le celle secondo un ordine differente (A1;C5;E4;H7 ecc..)
grazie a chi mi dia una mano :)
Post: 725
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
14/10/2018 00:15

Spiegati meglio perché sembra che il mio Tab non faccia quello che dici tu, ovvero, quando faccio Tab il cursore semplicemente si sposta nella cella a destra e non seleziona alcuna cella.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Post: 726
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
23/10/2018 22:59

Cercando di intuire, da quanto hai espresso, il reale contenuto della tua richiesta, visto che non hai risposto alla mia richiesta di ulteriori spiegazioni, propongo questo codice macro.
In pratica ho pensato di modificare la gestione del tasto TAB ad uso dell'utente assegnando ad esso il lancio di una macro con la quale provvedo a spostare il cursore a mio piacimento se la cella attiva rientra tra quelle prescelte, altrimenti il cursore si sposta a destra come normalmente succede. Così com'è la gestione del tasto TAB è attiva in tutti i fogli della cartella. Se le celle da gestire sono di più di quelle in esempio basta integrare l' 'Intersect' con la giusta sequenza ed aggiungere nel 'Select Case' lo spostamento richiesto.
Il primo codice va messo nel modulo vba 'Questa_cartella_di_lavoro' (o ThisWorkbook):
Option Explicit

Private Sub Workbook_Open()
    
    Application.OnKey "{TAB}", "Intercetta"
    
End Sub
mentre il secondo va messo in un normale modulo vba:
Option Explicit

Private Sub Intercetta()
    
    If Not Intersect(ActiveCell, Range("$A$1,$C$5,$E$4,$H$7")) Is Nothing Then
        Select Case ActiveCell.Address
            Case ("$A$1")
                Range("$C$5").Select
            Case ("$C$5")
                Range("$E$4").Select
            Case ("$E$4")
                Range("$H$7").Select
            Case ("$H$7")
                Range("$A$1").Select
        End Select
    Else
        ActiveCell.Offset(0, 1).Select
    End If
    
End Sub

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 09:51. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com