Scorciatoia da tastiera Excel per copiare / riempire per tutte le celle con celle adiacenti non vuote?


45

Sto cercando una scorciatoia da tastiera che duplicherà la funzionalità disponibile facendo doppio clic sulla "maniglia" nell'angolo in basso a destra di una cella. C'è qualcosa che può fare questo, senza software di terze parti o la creazione di macro personalizzate?

Risposte:


36

Ti fornisco due metodi per realizzare ciò che desideri. Sfortunatamente, entrambi i metodi hanno i loro avvertimenti, poiché Excel non fornisce una scorciatoia da tastiera all-in-one per il riempimento automatico. Consiglio vivamente di provare entrambi i metodi e quindi determinare quale funziona meglio per te. Al di fuori di questi due metodi, non credo che tu possa realizzare ciò che cerchi senza l'uso di macro o moduli aggiuntivi. Se dovessi seguire il percorso macro, il AutoFillmetodo su qualsiasi Rangeoggetto dovrebbe essere tutto ciò di cui hai bisogno.


Metodo 1 (alternativo, ma funziona senza interazione con il mouse)

Un altro modo per ottenere ciò è utilizzare una combinazione del collegamento di riempimento e selezionare tutto nell'intervallo. Dopo aver inserito i dati nella cella, premere Ctrl+Shift+Endper selezionare dalla cella corrente alla fine dell'intervallo che si riempirebbe automaticamente. Quindi, premere Ctrl+Dper "riempire" nell'intero intervallo dalla cella in alto.

Metodo 2 (il mio modo preferito, interazione con il mouse una tantum)

Dopo aver riempito la cella che desideri riempire automaticamente verso il basso, fai doppio clic sull'angolo in basso a destra come al solito. Per ripetere il passaggio "riempimento automatico", purché si immettano solo i dati e si prema Invio, è possibile ripeterli premendo Ctrl+Y.

Ciò significa che è necessario utilizzare il mouse, ma solo la prima volta . Tutti i lavori successivi possono essere eseguiti esclusivamente con la tastiera, purché vengano utilizzati solo per inserire dati (ovvero non utilizzare il pulsante del menu di scelta rapida per modificare nulla).


Nota che il primo metodo ha un avvertimento minore: la tua vista / cursore si sposterà nella parte inferiore del foglio di calcolo (cosa che non accade con il Ctrl+Ymetodo). È possibile premere il Hometasto per spostare rapidamente indietro il cursore.


Il secondo metodo è stato perfetto per me, mi ha aiutato a riempire rapidamente 123.798 righe. Grazie!
Joshua Walsh,

9

Sono anche curioso di avere una combinazione di tasti più breve per la maniglia di riempimento automatico. Ma funziona anche:

Sequenza di tasti per le serie di riempimento

Seleziona l'intero intervallo che desideri estendere la serie, comprese le celle vuote e il "seme" (la cella che contiene il valore iniziale su cui si baserà la serie di riempimento automatico).

Premere ALT>> H>> F>> I>> S>> Alt+ F>> Enter.

inserisci qui la descrizione dell'immagine

Per creare / modificare i tuoi elenchi personalizzati, premi Alt+ F, vai su Popolare quindi fai clic su Modifica elenchi personalizzati . Gli elenchi personalizzati servono come base per il modo in cui la maniglia di riempimento automatico popola le celle.

Riempi

Ctrl+ D

Nota

Queste combinazioni di tasti funzionano solo con la lingua inglese di Excel. Se si utilizza Excel in qualsiasi altra lingua, cercare la corrispondente combinazione di tasti per la lingua in: Home page del nastro> Fill (nella Editing sezione di nastro)> Serie ... . Nella finestra di dialogo seleziona Riempimento automatico e premi Invio. La combinazione di tasti di riempimento può anche differire ( Ctrl+ D).


1
^ _ ^ Se aggiungi su-giù-giù-giù-abab appare Chuck Norris. Personalmente, quasi sempre non uso molto il quadratino di riempimento e faccio affidamento sul resto della tabella dei dati per spostarmi o sulla casella Nome. Ad esempio, se voglio copiare una formula da A1 a 200 celle sottostanti, digitare "A200" nella casella del nome, premere Invio, quindi Ctrl + Maiusc + Su, quindi Ctrl + D.
Ellesa,

2
  1. Selezionare l'intervallo in cui si desidera riempire i dati, inclusa la prima riga / cella in cui i dati sono disponibili per l'ultima riga / cella in cui i dati terminano.
  2. Premi Ctrl+ G(vai a)
  3. Vai a Speciali e seleziona "Bianchi" tra le opzioni disponibili. Premere OK.
  4. Nella cella in cui ci si trova attualmente (dopo aver selezionato le celle vuote nella rabbia) immettere la formula facendo riferimento alla cella precedente "= + freccia su" (dire se ci si trova nella cella A3, digitare = A2) e premere Ctrl+ Enter.
  5. Converti la formula sopra in valori facendo copia e incolla selezionando di nuovo l'intero intervallo.

Soluzione molto bella e la più efficiente del gruppo.
Forrest R. Stevens,

2

Finora, la mia migliore soluzione era:

  1. CTRL-C della cella di origine

  2. CTRL-G (vai a) inserisci l'ultima cella in una colonna

  3. SHIFT-ENTER (evidenzia l'intera sezione)

  4. ENTER (incolla i valori in tutte le celle)

Funziona con Excel 2007/2013/365


0

Una scorciatoia da tastiera pre-2010 più breve per far apparire la finestra di dialogo Serie (Windows) menzionata nella risposta di @ Ellesa è:

ALT, E, I,S

È solo più breve di una pressione di un tasto, ma comunque un colpo in più.


0

Per quello che vale sul Mac, uso Keyboard Maestro per eseguire una serie di comandi chiave per questo, quindi non devo usare il mouse.

La sequenza è:

  1. Freccia giù (questi due comandi consentono alla copia di funzionare correttamente)
  2. Freccia in su
  3. Comando + C
  4. Freccia sinistra (cambia in freccia destra per fare riferimento a destra)
  5. Comando + Maiusc + Freccia giù
  6. Opzione + scheda (passare all'opzione + Maiusc + scheda se si fa riferimento a destra nel passaggio 4)
  7. Comando + V

È quasi istantaneo e nella maggior parte dei casi fa la stessa cosa che se si fa doppio clic sulla parte inferiore destra della cella che si desidera copiare. L'unica differenza di cui sono consapevole è che se sei su una colonna che non ha nulla a destra a destra, allora ha la priorità su ciò che sta riempiendo.

Quel vantaggio qui con questi comandi è possibile creare due scorciatoie e scegliere da quale parte riempire facendo riferimento.


0

Puoi anche semplicemente copiare, evidenziare e incollare dopo aver inserito una formula. Questo metodo mi ha permesso di usare solo la tastiera, senza fare clic con il mouse.

Anche se può essere solo più veloce fare doppio clic. Dipende dalle preferenze.

Ad esempio, sto facendo un VLOOKUP. e il primo valore di ricerca è nella cella B2. 1. Ho inserito la formula in A2. 2. Quindi ho copiato la cella A2 (Ctrl + c) 3. A partire da A3, ho evidenziato l'intervallo in cui volevo popolare la formula in (Ctrl + Maiusc + Giù) o (Maiusc + Giù) 4. Quindi ho incollato (ctrl + v)

Quando l'ho fatto, la formula nella cella A3 aveva il valore di ricerca in B3, A5 aveva B5, ecc. Potresti voler fare un controllo a campione per assicurarti che le formule si adeguino la prima volta che lo fai.


0

Supponendo che ci siano dati in una colonna adiacente, mi piace fare quanto segue (supponiamo che l'altra colonna sia adiacente alla sinistra della colonna da riempire):

Seleziona la cella in cui desideri fare doppio clic sulla maniglia di riempimento.

Poi:

  1. Premere Leftper passare alla colonna con altri dati
  2. Premere Ctrl+Downper andare alla fine dei dati
  3. Premere Rightper tornare alla colonna che verrà popolata
  4. Premere Ctrl+Shift+Upper selezionare fino alla cella con il valore di riempimento
  5. Premere Ctrl+Dper riempire (Giù)

I tasti premuti sono sempre gli stessi, quindi puoi metterlo su una macro di tastiera.

Un'altra sequenza che fa la stessa cosa: Left, End, Down, Right, End, Shift+Up, Ctrl+D.


0

Tutte le risposte sopra non imitano lo stesso comportamento del doppio clic nell'angolo in basso a destra di una cella per riempire automaticamente una colonna fino al numero desiderato di righe in base alle colonne adiacenti. VBA è l'unico modo per ottenere questo risultato solo con la tastiera, utilizzando il seguente codice:

Sub AutoFill_Column()

Selection.AutoFill Destination:=Range(Selection, Cells(ActiveCell.SpecialCells(xlLastCell).Row, Selection.Column))

End Sub

Lo stesso può essere realizzato per il riempimento automatico di una riga (in base ai dati adiacenti sopra la riga) con:

Sub Autofill_Row()

Selection.AutoFill Destination:=Range(Selection, Cells(Selection.Row, ActiveCell.Offset(-1, 0).End(xlToRight).Column))

End Sub
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.