Notifications
Clear all

copiar e colar varios intervalos de celulas

3 Posts
2 Usuários
0 Reactions
998 Visualizações
(@paulovitor)
Posts: 29
Eminent Member
Topic starter
 

pessoal, usei o codigo abaixo pra copiar celulas de uma planilha e colar em outra, na mesma pasta de trabalho

Worksheets("macro").Range("a1:a4").Copy Worksheets("xml").Range("a1:a4")

ai tentei adaptar com o codigo abaixo. a "invenção" nao funcionou

Worksheets("macro").Range("a5:a6", "a7:a8").Copy Worksheets("xml").Range(a5:a6", "a7:a8")

mas a duvida eh. tem uma forma de fazer? uma alternativa?

 
Postado : 15/05/2018 9:42 am
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Boa tarde, Paulo Vitor

Dá pra copiar com seleções múltiplas e colar num intervalo contíguo (células adjacentes), mas não dá pra copiar seleções múltiplas e colar também em seleções múltiplas, mesmo que os intervalos sejam de mesmo tamanho ou até idênticos.

Só que no seu caso nem precisaria ser seleção múltipla, afinal os intervalos A5:A6 e A7:A8 estão lado a lado então seria equivalente a A5:A8, não é mesmo?
Aí é só fazer pela forma normal que dá certo.

Mas caso vc tenha ranges múltiplas de células não adjacentes, como por exemplo A5:A6, A9:A10, faça um loop pelas áreas. Exemplo:

Sub CopiaIntervaloNaoAdjacente()
  Dim rgArea As Range
  For Each rgArea In Worksheets("macro").Range("A5:A6,A9:A10").Areas
    rgArea.Copy Worksheets("xml").Range(rgArea.Address)
  Next rgArea
End Sub

 
Postado : 15/05/2018 3:03 pm
(@paulovitor)
Posts: 29
Eminent Member
Topic starter
 

obrigado!

 
Postado : 16/05/2018 10:38 am