EXCEL MUDANDO COR DA CELULA VIA CODIGO
Aguém pode me informar como faço para mudar a cor de uma célula no excel via código do VBA
Já tentei algo tipo:
Range("A1").interior.ColorIndex = 5
Mas sempre da erro
OBS: uso o Office 97
Já tentei algo tipo:
Range("A1").interior.ColorIndex = 5
Mas sempre da erro
OBS: uso o Office 97
Range("J11").Select
With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End With
Esse eu fiz aki e funcionou;..tenta ae!!
With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End With
Esse eu fiz aki e funcionou;..tenta ae!!
Amigo ROTRUS,
Não entendo praticamente nada de VBA, qualquer coisa que tiver que fazer de cor, creio que eu não lembro.
O que eu costumo fazer para descobrir este tipo de coisa (Mudar a cor de fundo, fonte, etc...), é gravar um macro (Ferramentas >>> Macros >>> Gravar novo Macro) e depois visualizar o código gerado por ele (Ferramentas >>> Macros >>> Editar Macro)
Se vc gravar um macro, e pintar uma célula durante a gravação, ele vai lhe gerar o código de pintar uma célula, que com certeza funcionará na versão do Office que vc utiliza, já que foi gravado nele mesmo.
Depois é só pergar o código que ele gerou e utilizar onde achar necessário.
Só uma dica...
Abs!
Não entendo praticamente nada de VBA, qualquer coisa que tiver que fazer de cor, creio que eu não lembro.
O que eu costumo fazer para descobrir este tipo de coisa (Mudar a cor de fundo, fonte, etc...), é gravar um macro (Ferramentas >>> Macros >>> Gravar novo Macro) e depois visualizar o código gerado por ele (Ferramentas >>> Macros >>> Editar Macro)
Se vc gravar um macro, e pintar uma célula durante a gravação, ele vai lhe gerar o código de pintar uma célula, que com certeza funcionará na versão do Office que vc utiliza, já que foi gravado nele mesmo.
Depois é só pergar o código que ele gerou e utilizar onde achar necessário.
Só uma dica...
Abs!
Sub ColorirCelulas()
For i = 1 To 56
Sheets("Plan1").Activate
Range("A" & i).Select
With Selection.Interior
.ColorIndex = i
.Pattern = xlSolid
End With
Range("B" & i).Value = n
Next i
End Sub
For i = 1 To 56
Sheets("Plan1").Activate
Range("A" & i).Select
With Selection.Interior
.ColorIndex = i
.Pattern = xlSolid
End With
Range("B" & i).Value = n
Next i
End Sub
Como faço para para colocar no lugar de "A" a variável j? Eu tentei:
For i = 1 To 10
For j = 1 To 5
Sheets("Plan1").Activate
Range(j & i).Select
With Selection.Interior
.ColorIndex = i
.Pattern = xlSolid
End With
Range("B" & i).Value = n
Next i
Mas não deu certo. Existe algum modo de fazer isso?
For i = 1 To 10
For j = 1 To 5
Sheets("Plan1").Activate
Range(j & i).Select
With Selection.Interior
.ColorIndex = i
.Pattern = xlSolid
End With
Range("B" & i).Value = n
Next i
Mas não deu certo. Existe algum modo de fazer isso?
Meu caro...esse parametro é uma letra...n existe coordenada de célula no excel 11 e sim A1 entendeu, por isso deu errado
O q vc pode fazer é assim:
Dim Coluna(5) as string 'exemplo
Coluna(1) = "A"
Coluna(2) = "B"
Coluna(3) = "C"
Coluna(4) = "D"
Coluna(5) = "E"
Daàcoloca seu código assim
For i = 1 To 10
For j = 1 To 5
Sheets("Plan1").Activate
Range(Coluna(j) & i).Select 'ele vai pegar a letra correspondente ao numero j
With Selection.Interior
.ColorIndex = i
.Pattern = xlSolid
End With
Range("B" & i).Value = n
Next i
tenta ae
Deixa eu ver se entendi:
Quer dizer que só posso usar no primeiro parametro apenas as letras referentes as colunas, mesmos que estas estejam contidas em uma variável, fora isso sem chance?
Quer dizer que só posso usar no primeiro parametro apenas as letras referentes as colunas, mesmos que estas estejam contidas em uma variável, fora isso sem chance?
Exatamente..todo excel trabalha com coordenada fechada: ou uma célula (G5) ou um grupo (A1:G4)...se vc n passar tais parametros..ele n consegue executar o processo
sendo q a primeira é a letra da coluna e a segunda é o numero da linha
boa sorte e sucesso
Tópico encerrado , respostas não são mais permitidas