Ir ao conteúdo

Posts recomendados

Postado

Prezados, boa tarde

Qual o comando para que o Excel pinte uma linha inteira e suas fontes de acordo com o conteúdo de uma célula?

Ex.: B5 é azul clara, linha 5 inteira fica dessa mesma cor, as fontes da linha 5 ficam brancas...

Aproveitando o gancho, qual comando seleciona todas as planilha de um arquivo?

Obrigado!

Ramon

Postado

1 - Formatar \ Formatação condicional... Lá você pode usar uma fórmula de acordo com as suas necessidades. No campo1( condição 1 ) você deixa " O valor da célula é".

No campo2 você deixo " Igual a " e no campo 3 você escreve oconteúdo da linha que você quer mudar a cor.

2 - Cliquer com o lado direito do mouse em cima de uma das palnilhas e escolha a opção " Selecionar todas as planilhas"

Abraços.

Postado

Agradeço a ajuda!

Mas nesse caso, o valor da célula varia bastante. Então não quero relacionar a formatação condicional da célula a um valor ou conteúdo, mas à cor que uma outra tem.

Ex.: se a célula C5 = azul claro, toda a linha 5 = azul claro. Tem essa alternaiva na formatação condicional?

Outro detalhe é que a cor também pode variar... então a macro deve encontrar qual a cor da célula para pintar a linha.

Abraço

  • Membro VIP
Postado

Cara, segue exemplo com macro. Está tomando como base a cor da coluna A.

Fiz as pressas, pois estou no mobile. Tentei colocar o mais simples possível para que você possa entender a macro.

Ao clicar na imagem, ele vai pedir a linha inicial que você quer fazer a coloração e logo após a final. Fiz isto pois sua planilha pode ter vários intervalos com títulos, ai você não vai precisar reformatar eles novamente.

http://www.4shared.com/file/53246082/930625bf/Pintar_linha.html

Qualquer coisa é só falar...

Postado

Flávio excelente!! É exatamente isso que procuro! Mas devo estar fazendo alguma coisa de errado... desculpe o meu amadorismo, mas abri a macro e tentei copiar ela para uma outra planilha e não consegui...

Sub Clique()

inicio = InputBox("Digite o numero da linha que se inicia a seleção:", "Macro Coloração de Linhas")

If inicio = "" Then Exit Sub

fim = InputBox("Digite o numero da linha que se termina a seleção:", "Macro Coloração de Linhas")

If fim < inicio Then

MsgBox "A Linha final é menor que a inicial. Operação Abortada!"

End If

For colorir = inicio To fim

a = Worksheets("Plan1").Range("A" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

Next

End Sub

A macro é essa mesma? Ou esses são apenas os comandos do botão? E se eu quisesse por exemplo mudar a busca da coluna A para B?

Valeu! Abraço

Postado

Olha, para mudar de planilha é bem fácil, é só mudar onde está escrito:

a = Worksheets("Plan1").Range("A" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

pelo nome da planilha que quer que ocorra a mudança, ex: Plan2, Plan3, etc.

Já a coluna é só mudar onde está escrito:

a = Worksheets("Plan1").Range("A" & colorir).Interior.Color

por B, C, D a coluna que quiser.

Postado

Ótimo!!! Obrigado!! Agora prometo que é a última dúvida... tem como inserir a seguinte condição: se a coluna A da linha tiver algum conteúdo, pinta a linha da cor da coluna A; senão, passa pra coluna B, onde repete a pergunta, e assim sucessivamente até a D... é possível? Agradeço a ajuda mais uma vez!! Abraço!!

  • Membro VIP
Postado

Como você quer?

Se a coluna A não tiver nada e na B tiver, pinta a linha toda com a cor da B, se a A e B estiverem vazias e a C tiver dados, pinta a linha toda com a cor da C, e assimpor diante??

  • Membro VIP
Postado

Veja se é isso: Não testei pois to sem excel no mobile.

inicio = InputBox("Digite o numero da linha que se inicia a seleção:", "Macro Coloração de Linhas")

If inicio = "" Then Exit Sub

fim = InputBox("Digite o numero da linha que se termina a seleção:", "Macro Coloração de Linhas")

If fim < inicio Then

MsgBox "A Linha final é menor que a inicial. Operação Abortada!"

End If

For colorir = inicio To fim

coluna1 = Worksheets("Plan1").Range("A" & colorir).Value

coluna2 = Worksheets("Plan1").Range("b" & colorir).Value

coluna3 = Worksheets("Plan1").Range("c" & colorir).Value

coluna4 = Worksheets("Plan1").Range("d" & colorir).Value

If coluna1 <> "" Then

a = Worksheets("Plan1").Range("A" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

If coluna2 <> "" Then

a = Worksheets("Plan1").Range("B" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

If coluna3 <> "" Then

a = Worksheets("Plan1").Range("C" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

If coluna4 <> "" Then

a = Worksheets("Plan1").Range("D" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

fim:

Next

  • 1 ano depois...
Postado
Cara, segue exemplo com macro. Está tomando como base a cor da coluna A.

Fiz as pressas, pois estou no mobile. Tentei colocar o mais simples possível para que você possa entender a macro.

Ao clicar na imagem, ele vai pedir a linha inicial que você quer fazer a coloração e logo após a final. Fiz isto pois sua planilha pode ter vários intervalos com títulos, ai você não vai precisar reformatar eles novamente.

http://www.4shared.com/file/53246082/930625bf/Pintar_linha.html

Qualquer coisa é só falar...

Olá Flávio!

Estou precisando desta macro, mas quando clico no link diz que o arquivo não´é válido... você pode me enviar ou disponibilizar novamente?

  • Membro VIP
Postado

Realmente está quebrado (é um post de 2008!) e eu não tenho o arquivo aqui!

Mas nos posts seguintes, mostra a macro:

inicio = InputBox("Digite o numero da linha que se inicia a seleção:", "Macro Coloração de Linhas")

If inicio = "" Then Exit Sub

fim = InputBox("Digite o numero da linha que se termina a seleção:", "Macro Coloração de Linhas")

If fim < inicio Then

MsgBox "A Linha final é menor que a inicial. Operação Abortada!"

End If

For colorir = inicio To fim

coluna1 = Worksheets("Plan1").Range("A" & colorir).Value

coluna2 = Worksheets("Plan1").Range("b" & colorir).Value

coluna3 = Worksheets("Plan1").Range("c" & colorir).Value

coluna4 = Worksheets("Plan1").Range("d" & colorir).Value

If coluna1 <> "" Then

a = Worksheets("Plan1").Range("A" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

If coluna2 <> "" Then

a = Worksheets("Plan1").Range("B" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

If coluna3 <> "" Then

a = Worksheets("Plan1").Range("C" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

If coluna4 <> "" Then

a = Worksheets("Plan1").Range("D" & colorir).Interior.Color

Worksheets("Plan1").Rows(colorir).Interior.Color = a

GoTo fim:

End If

fim:

Next

  • 8 anos depois...
Postado

Aproveitando o gancho, estou elaborando uma planilha da mega sena só para mim mesmo. Fiz o ranking de cada número e dependendo a numeração, esta coluna (do ranking ) muda de cor conforme uma escala de pré determinado (os 10 mais sorteado com a cor verde, do 16 ao 25 amarelo, do 26 ao 40 laranja e os vinte menos sorteados na cor vermelha). Ocorre que só a coluna do ranking fica na cor específico de cada colocação. Alguém tem uma solução em macro para que eu possa colocar a linha das colunas do B ao I nas suas respectivas cores conforme muda a linha do ranking? (está na coluna J).

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...