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

creare un tasto con funzione INVIO. (leggere il post)

Ultimo Aggiornamento: 13/11/2017 10:06
Post: 125
Registrato il: 29/01/2008
Città: LAMEZIA TERME
Età: 56
Utente Junior
2007
OFFLINE
12/11/2017 17:38

Buongiorno al forum e a Tore,
nomino Tore (che mi ha inviato la soluzione al mio precedente quesito), in realtà chiedo a tutti, un'altro aiuto per un idea che mi è venuta in corso d'opera:
nel file di Tore che reinvio in allegato, vorrei che, inserendo un dato in B4, confermando con il tasto invio, il cursore rimanesse sempre nella cella B4 e non come fa di default che passa alla cella B5.
L'alternativa magari, potrebbe essere quella di predisporre un tasto sottostante per confermare il dato.
Cosa ne pensate ?
Aspetto soluzioni e grazie in anticipo.
Excel 2007
Post: 3.554
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
12/11/2017 17:52

Cioè tu vuoi che una volta inserito un dato in B4 e premuto INVIO il cursore rimanga fermo?

Se è così (anche se a mio modo di vedere la cosa non ha molto senso) prova questa macro da inserire ne modulo del foglio interessato.

vb
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B4")) Is Nothing Then
    Target.Activate
End If
End Sub
[Modificato da alfrimpa 12/11/2017 18:25]

Alfredo
Post: 802
Registrato il: 24/04/2004
Città: TERAMO
Età: 63
Utente Senior
2010
OFFLINE
12/11/2017 19:00

Ciao a tutti.
Puoi sfruttare l'evento Selection_Change del foglio come indicato da Alf.
Fai click destro sulla linguetta del foglio e seleziona Visualizza codice.
Incolla questo codice
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Cells.Count = 1 And Target.Address = "$B$5" Then
        Range("B4").Select
    End If
End Sub

PS: il file deve essere salvato come .xlsm perchè i files .xlsx non supportano le macro.
__________________________
[Excel 2010]
-Condividere la conoscenza aumenta la ricchezza di tutti.
-Dai ad un uomo un pesce e lo avrai sfamato per un giorno; insegnagli a pescare e lo avrai sfamato per sempre. (Confucio)
-Il sonno della ragione genera mostri. (Francisco Goya)
Post: 126
Registrato il: 29/01/2008
Città: LAMEZIA TERME
Età: 56
Utente Junior
2007
OFFLINE
12/11/2017 19:11

sii più elementare con me [SM=x423023]
non riesco a fare quello che dici.
praticamente dovrei creare la macro e poi inserirla nel modulo? [SM=x423023]
maagari se mi aiuti passo passo, faresti un eccellentissimo lavaro [SM=x423047]
Excel 2007
Post: 803
Registrato il: 24/04/2004
Città: TERAMO
Età: 63
Utente Senior
2010
OFFLINE
12/11/2017 19:46

Guarda che ti avevo gia descritto quello che devi fare, non c'è nulla di complicato, non farti impressionare:
1)evidenzia il testo della macro
2)premi CONTROL C
3)in Excel fai click destro sulla linguetta del foglio(dove c'è il nome)
4)seleziona "Visualizza codice"
5)quando si apre la finestra di Visual Basic premi CONTROL V
6)chiudi la finestra di Visual Basic
Non devi fare altro, prova ad andare sulla cella B4 e premere invio...
Il file lo devi salvare come .xlsm; se non sai come fare ti diamo le istruzioni necessarie... [SM=g27811]
[Modificato da Zer0kelvin 12/11/2017 19:47]
__________________________
[Excel 2010]
-Condividere la conoscenza aumenta la ricchezza di tutti.
-Dai ad un uomo un pesce e lo avrai sfamato per un giorno; insegnagli a pescare e lo avrai sfamato per sempre. (Confucio)
-Il sonno della ragione genera mostri. (Francisco Goya)
Post: 1.665
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
12/11/2017 19:48

ciao
ma quello che dici nel testo del tuo file è ben diverso da quanto chiedi nel post.

Nel post dici essenzialmente che una volta immesso un valore in B4 il cursore deve restare in B4, mentre nel tuo file dici che dopo aver immesso in B4 uno dei valori (nome-cognome-età-peso-altezza), vuoi che i restanti ti vengano riportati nelle varie caselle. Cioè se per esempio inserisci 23 vuoi riportato nelle varie celle di riga 4: NICO - GIALLO - 23 - 189 - 84.

Quindi è una routine particolare.

Ora se neanche conosci come e dove va inserita una macro, credo che avrai seri problemi.

In ultimo potrebbero esserci valori uguali e pertanto occorrerebbe una macro che legge tutto il foglio1 e se ci sono più campi che hanno lo stesso valore di quello cercato, vengano riportate in FOGLIO 0 tutte le righe trovate.

Io la macro te l'allego, poi vedi tu come gestirla; basta inserire un valore dei tanti del foglio1.

Saluti


[Modificato da dodo47 12/11/2017 19:56]
Domenico
Win 10 - Excel 2016
Post: 127
Registrato il: 29/01/2008
Città: LAMEZIA TERME
Età: 56
Utente Junior
2007
OFFLINE
12/11/2017 19:51

Re:
Zer0kelvin, 12/11/2017 19.00:

Ciao a tutti.
Puoi sfruttare l'evento Selection_Change del foglio come indicato da Alf.
Fai click destro sulla linguetta del foglio e seleziona Visualizza codice.
Incolla questo codice
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Cells.Count = 1 And Target.Address = "$B$5" Then
        Range("B4").Select
    End If
End Sub

PS: il file deve essere salvato come .xlsm perchè i files .xlsx non supportano le macro.




non mi funziona, dove sbaglio?
Excel 2007
Post: 128
Registrato il: 29/01/2008
Città: LAMEZIA TERME
Età: 56
Utente Junior
2007
OFFLINE
13/11/2017 10:06

Re:
dodo47, 12/11/2017 19.48:

ciao
ma quello che dici nel testo del tuo file è ben diverso da quanto chiedi nel post.

Nel post dici essenzialmente che una volta immesso un valore in B4 il cursore deve restare in B4, mentre nel tuo file dici che dopo aver immesso in B4 uno dei valori (nome-cognome-età-peso-altezza), vuoi che i restanti ti vengano riportati nelle varie caselle. Cioè se per esempio inserisci 23 vuoi riportato nelle varie celle di riga 4: NICO - GIALLO - 23 - 189 - 84.

Quindi è una routine particolare.

Ora se neanche conosci come e dove va inserita una macro, credo che avrai seri problemi.

In ultimo potrebbero esserci valori uguali e pertanto occorrerebbe una macro che legge tutto il foglio1 e se ci sono più campi che hanno lo stesso valore di quello cercato, vengano riportate in FOGLIO 0 tutte le righe trovate.

Io la macro te l'allego, poi vedi tu come gestirla; basta inserire un valore dei tanti del foglio1.

Saluti



[/POSTQUOTE

Buongiorno, nell'oggetto non volevo dilungarmi troppo per questo motivo ho scritto leggi post;
il file di Tore andava bene così, quindi ho chiesto di poter lavorare con due opzioni, che poi ho descritto.
Proverò anche la tua macro se riesco [SM=x423048]

Per Tore, in realtà ho eseguito la procedura per come mi hai detto, però non funziona.
[Modificato da il domandante 13/11/2017 10:07]
Excel 2007
Vota:
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 10:10. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com