Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
edcronos

RESOLVIDO Trocar valores entre colunas ou linhas sem usar células auxiliares.

Recommended Posts

Atualmente eu uso uma planilha auxiliar para troca de valores entre planilhas ou eventos,

Exp. quero pegar os valores de ( A ) colocar em ( B ), e os de ( B ) colocar em (A).

Como não conheço uma maneira direta acabo usando © para ajudar no processo

----> ( A ) -> "C" , ( B )->( A ) , ©->( B )

Teria como fazer isso usando algum comando, string... para guardar os "dados" que podem ser uma coluna, linha ou trecho ?

tipo copia ( A ) e guarda, copia ( B ) cola em ( A ) e pega os dados guardados e cola em ( B ).

 

um exemplo concreto "sem cimento"

Pegar os valores da coluna "AA" linha 20 até 6000, e "trocar" com a coluna "AE".

 

Muitas duvidas pelo que você´s podem ver.

Até mais.

Editado por edcronos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia!!!

 

Porque você não pode usar uma coluna auxiliar para trocar os valores?

 

Poste seu arquivo modelo em site gratuito e deposite o link aqui.

 

Att

Editado por zinhovba

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa tarde.

 

eu até posso, e já estou fazendo isso,

mas tipo eu mudo minha planilha constantemente, e eu já tive que mudar as macros que usam essa parte, bem agora coloquei variavel para definir as colunas auxiliares.

 

tento resevar espaço pra trabalho extra, mas as vezes as mudaças superam esse espaço,

então pensei nessa possibilidade, sem falar que é algo mais que se aprende.

pode ser qualquer exemplo, já li algo a respeito, mas não achei, e o que eu achei não entendi.

então um exemplo dentro do contexto que eu falei vai  dar para entender. e aplicar nas minha nescecidade.

 

até mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde edcronos

 

O que você quer só dá para fazer com Macros.

 

Baixe a planilha e veja se é isto que você deseja.

 

attachicon.gif01_02_14_Inverter dados da Coluna A para B_Patropi.zip

 

Dê retorno.

 

At.te

 

mas é justamente com macro que eu quero, toda minha planilha é escalonavel, e todas as macros são com variaveis, então qualquer macro funciona em qualquer parte da planilha, as colunas e linhas são definidas por macros, bem o importante é que funciona.

mas assim eu já faço, usando celulas auxiliares.

tipo essas macros que rotaciona para os lados

  

Sub esq()

         Range(Ci & Li, Cf & Lf) = Range(Ci & Li, Cf & Lf).Offset(0, 1).Value

lat

End Sub

Sub dir()

          Range(Ci & Li, Cf & Lf) = Range(Ci & Li, Cf & Lf).Offset(0, -1).Value

lat  

End Sub

Sub lat()     

     'Copia e cola as laterais não mudar         

Range(Cf & Li, Cf & Lf).Offset(0, 1) = Range(Ci & Li, Ci & Lf).Value

Range(Ci & Li, Ci & Lf).Offset(0, -1) = Range(Cf & Li, Cf & Lf).Value

End Sub

bem poderia ter usado a pena uma coluna auxiliar, mas quando eu fiz nem sabia nada de macro e levei 1 semana pra conseguir fazer.

 

pelo menos aprendi mais uma maneira de colar valores

Columns("T:T").Copy Destination:=Range("B1")

afinal quantas maneiras existem de adquirir e colar valores

 

esse destination transfere tudo né até formatação, ainda bem que executei em uma planilha de teste.

Editado por edcronos

Compartilhar este post


Link para o post
Compartilhar em outros sites

@edcronos, tentei diversas formas aqui e realmente é necessário uma coluna para "guardar" os dados de A enquanto você copia B para A, tente utilizar uma coluna bem distante, como por exemplo a "XFD" que é a última coluna do excel, assim não atrapalha em outras macros que estão rodando perto das colunas A e B.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@edcronos, tentei diversas formas aqui e realmente é necessário uma coluna para "guardar" os dados de A enquanto você copia B para A, tente utilizar uma coluna bem distante, como por exemplo a "XFD" que é a última coluna do excel, assim não atrapalha em outras macros que estão rodando perto das colunas A e B.

bem, maneira existe, e só pra te responder acabei por achar

http://www.macoratti.net/arrays.htm

Vale a pena a leitura,o assunto é mais amplo do que eu lembrava.

 

algo como guardar tudo na mesma variavel para não ter que criar uma variavel para cada coisa.

pelo que eu tinha lido anteriormente, é muito util quando se tem que pegar muitos dados de uma planilha e colocar na outra, fica mais rápido abrir a planilha guardar tudo que precisa na variavel e depois descarregar onde quer, "isso quando os dados não são sequenciais", do que ir e pegar uma voltar e guardar a cada valor.

Editado por edcronos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Interessante o array, mas na verdade ele só consegue automatizar você colocar 1 celula em cada variável, você conseguiu utilizar ela para fazer a sua planilha de inverter os dados de A com B?

 

Vou tentar mais tarde quando tiver tempo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Interessante o array, mas na verdade ele só consegue automatizar você colocar 1 celula em cada variável, você conseguiu utilizar ela para fazer a sua planilha de inverter os dados de A com B?

 

Vou tentar mais tarde quando tiver tempo...

sobre a coluna creio que não valeria a pena pelo loop de leitura e escrita, e  como os dados estão em sequencia é muito mais rápido le de uma só vez, colar em qualquer lugar e depois transferir.

Mas tenho  um caso aqui que valeria sim o uso array  que é pegar muitos dados espalhados em outra pasta de trabalho e colar em sequencia na planilha ativa, imagina o tempo economizado no ir e vim de uma planilha pra outra, mas vou testar pra ve se vale mesmo a pena.

 

Acho que posso encerrar o topico. "A não ser que os mestres saibam de uma maneira e queiram dividir o conhecimento"

Editado por edcronos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde edcronos

 

O que você quer só dá para fazer com Macros.

 

Baixe a planilha e veja se é isto que você deseja.

 

attachicon.gif01_02_14_Inverter dados da Coluna A para B_Patropi.zip

 

Dê retorno.

 

At.te

tem como usar esse  Destination:  para colar "apenas" valores?

Editado por edcronos

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×