Atalho de teclado do Excel para copiar / preencher todas as células com células adjacentes não em branco?

45

Estou procurando um atalho de teclado que duplique a funcionalidade disponível clicando duas vezes no "identificador" no canto inferior direito de uma célula. Existe algo que possa fazer isso, sem software de terceiros ou criação de macros personalizadas?

Iszi
fonte

Respostas:

36

Eu forneço dois métodos para realizar o que você deseja. Infelizmente, ambos os métodos têm suas próprias advertências, pois o Excel não fornece um atalho de teclado completo para preenchimento automático. Eu sugiro que você tente os dois métodos e determine qual funciona melhor para você. Fora desses dois métodos, não acredito que você possa realizar o que procura sem o uso de macros ou módulos de suplemento. Se você seguir a rota da macro, o AutoFillmétodo em qualquer Rangeobjeto deve ser tudo o que você precisa.


Método 1 (alternativo, mas funciona sem interação do mouse)

Outra maneira de conseguir isso é usar uma combinação do atalho de preenchimento e selecionar tudo dentro do intervalo. Depois de inserir os dados na célula, pressione Ctrl+Shift+Endpara selecionar da célula atual até o final do intervalo que seria preenchido automaticamente. Em seguida, pressione Ctrl+Dpara "preencher" em todo o intervalo da célula superior.

Método 2 (minha maneira preferida, interação única do mouse)

Depois de preencher a célula que deseja preencher automaticamente para baixo, clique duas vezes no canto inferior direito, como de costume. Para repetir a etapa "preenchimento automático", desde que você insira apenas dados e pressione enter, é possível repeti-los pressionando Ctrl+Y.

Isso significa que você precisa usar o mouse, mas apenas a primeira vez . Todo o trabalho subseqüente pode ser feito exclusivamente com o teclado, desde que você o utilize apenas para inserir dados (ou seja, não use o botão do menu de contexto para modificar nada).


Observe que o primeiro método vem com uma pequena ressalva - sua visualização / cursor se moverá para a parte inferior da planilha (o que não acontece com o Ctrl+Ymétodo). Você pode pressionar a Hometecla para mover o cursor de volta rapidamente.

Avanço
fonte
O segundo método foi perfeito para mim, me ajudou a preencher 123.798 linhas muito rapidamente. Obrigado!
Joshua Walsh
9

Também estou curioso sobre um atalho de teclado mais curto para o identificador de preenchimento automático. Mas isso também funciona:

Sequência de teclas para a série de preenchimento

Selecione todo o intervalo em que deseja estender a série, incluindo as células em branco e a "semente" (a célula que contém o valor inicial no qual a série de preenchimento automático será baseada).

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

insira a descrição da imagem aqui

Para criar / editar suas listas personalizadas, pressione Alt+ F, vá para Popular e clique em Editar listas personalizadas . As listas personalizadas servem de base para a maneira como o Identificador de preenchimento automático preenche as células.

Preencher

Ctrl+ D

Nota

Essas combinações de teclas funcionam apenas para o idioma inglês do Excel. Se você usar o Excel em qualquer outra língua, procurar a combinação de teclas correspondente para o idioma em: Início fita> Fill (na edição seção fita)> Series ... . Na caixa de diálogo, selecione Preenchimento automático e pressione Enter. A combinação de teclas de preenchimento também pode ser diferente ( Ctrl+ D).

Ellesa
fonte
1
^ _ ^ Se você adicionar chuck norris up-up-down-down-abab, aparecerá. Pessoalmente, quase sempre não uso muito o identificador de preenchimento e confio no restante da tabela de dados para contornar ou na caixa Nome. Por exemplo, se eu quiser copiar uma fórmula de A1 para 200 células abaixo dela, digite "A200" na caixa de nome, pressione Enter, Ctrl + Shift + Up e Ctrl + D.
Ellesa
2
  1. Selecione o intervalo em que você deseja que os dados sejam preenchidos, incluindo a primeira linha / célula em que os dados estão disponíveis até a última linha / célula em que os dados terminam.
  2. Pressione Ctrl+ G(vá para)
  3. Vá para Especiais e selecione "Espaços em branco" entre as opções disponíveis. Pressione OK.
  4. Na célula em que você está atualmente (tendo selecionado as células em branco de raiva), insira a fórmula referente à célula anterior "= + seta para cima" (diga se você está na célula A3, digite = A2) e pressione Ctrl+ Enter.
  5. Converta a fórmula acima em valores, copiando e colando, selecionando o intervalo inteiro novamente.
user428824
fonte
Solução muito boa e a mais eficiente do grupo.
Forrest R. Stevens
2

Até agora, minha melhor solução foi:

  1. CTRL-C da célula de origem

  2. CTRL-G (vá para) insira a última célula em uma coluna

  3. SHIFT-ENTER (destaca toda a seção)

  4. ENTER (cola valores em todas as células)

Funciona com o Excel 2007/2013/365

Randall Hodges
fonte
0

Um atalho de teclado mais curto antes de 2010 para abrir a caixa de diálogo Série (Windows) mencionada na resposta de @ Ellesa é:

ALT, E, I,S

É apenas mais curto com um toque de tecla, mas ainda assim é um toque extra.

atc
fonte
0

Para o que vale a pena no Mac, uso o Keyboard Maestro para executar uma série de comandos de teclas, para que não precise usar o mouse.

A sequência é:

  1. Seta para baixo (esses dois comandos permitem que a cópia funcione corretamente)
  2. Seta para cima
  3. Command + c
  4. Seta para a esquerda (mude para a seta para a direita e faça referência à direita)
  5. Command + Shift + seta para baixo
  6. Opção + Guia (mude para opção + shift + guia se você fez referência à direita na etapa 4)
  7. Command + V

É quase instantâneo e, na maioria dos casos, faz a mesma coisa como se você clicasse duas vezes na parte inferior direita da célula que deseja copiar. A única diferença que eu sei é que, se você estiver em uma coluna que não tem nada à esquerda direita, tem prioridade do que está preenchendo.

Essa vantagem aqui, com esses comandos, você pode criar dois atalhos e escolher de que lado está preenchendo a referência.

frigideira
fonte
0

Você também pode apenas copiar, destacar e colar depois de inserir uma fórmula. Esse método me permitiu usar apenas o teclado, sem cliques do mouse.

Embora possa ser mais rápido clicar duas vezes. Depende da preferência.

Por exemplo, estou fazendo um VLOOKUP. e o primeiro valor de pesquisa está na célula B2. 1. Digitei a fórmula em A2. 2. Em seguida, copiei a célula A2 (Ctrl + c). 3. Começando em A3, destaquei o intervalo em que queria preencher a fórmula em (Ctrl + Shift + Down) ou (Shift + Down). 4. Depois colei (ctrl). + v)

Quando fiz isso, a fórmula na célula A3 tinha o valor de pesquisa em B3, A5 tinha B5, etc. Você pode fazer uma verificação pontual para garantir que as fórmulas sejam ajustadas na primeira vez em que você fizer isso.

Rachel Z
fonte
0

Supondo que haja dados em uma coluna adjacente, gosto de fazer o seguinte (suponha que a outra coluna esteja adjacente à esquerda da coluna a ser preenchida):

Selecione a célula na qual você deseja clicar duas vezes na alça de preenchimento.

Então:

  1. Pressione Leftpara mudar para a coluna com outros dados
  2. Pressione Ctrl+Downpara ir para o final dos dados
  3. Pressione Rightpara retornar à coluna que será preenchida
  4. Pressione Ctrl+Shift+Uppara selecionar até a célula com o valor de preenchimento
  5. Pressione Ctrl+Dpara preencher (Para baixo)

As teclas pressionadas são sempre as mesmas, para que você possa colocar isso em uma macro do teclado.

Outra seqüência que faz a mesma coisa: Left, End, Down, Right, End, Shift+Up, Ctrl+D.

stevepastelan
fonte
0

Todas as respostas acima não imitam o mesmo comportamento que clicar duas vezes no canto inferior direito de uma célula para preencher automaticamente uma coluna com o número desejado de linhas com base nas colunas adjacentes. O VBA é a única maneira de fazer isso apenas com o teclado, usando o seguinte código:

Sub AutoFill_Column()

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

End Sub

O mesmo pode ser realizado para o preenchimento automático de uma linha (com base nos dados adjacentes acima da linha) com:

Sub Autofill_Row()

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

End Sub
Daniel Ohlsson
fonte