Autor Tópico: [Problema] Ajuda com excel (Urgente)  (Lida 3450 vezes)

Offline pepito

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« em: Abril 01, 2008, 06:08:07 pm »
será que alguem me pode ajudar?

é o seguinte eu queria saber se é possivel contar quantas celulas é que tem fundo azul, ou seja, eu ja tentei usar a funçao contar mas so aceita valores e eu queria contar as celulas cuja cor de fundo fosse azul.

haverá algum génio em excel por ai?

obrigado.

Tag Adicionada e Tìtulo modificado by Lok.

Offline jpaulino

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #1 em: Abril 03, 2008, 12:11:51 am »
>> haverá algum génio em excel por ai?
Génio não conheco nenhum

Pode ser em VBA (pode não, tem de ser!) ?

E qual é a versão que estás a usar ?
http://vbtuga.blogspot.com/
(VB.NET, ASP.NET, VB6, VBA, SQL Server)

Offline pepito

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #2 em: Abril 03, 2008, 05:49:49 pm »
eu uso o office 2003 e ja agora gostaria de saber fazer das 2 maneiras. por macro ou n

obrigado

Offline jpaulino

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #3 em: Abril 03, 2008, 06:04:27 pm »
Bom como disse na mensagem anterior só em VBA!

Fazes ALT+F11 no Excel e aparece-te um editor. Na janela Projects clicas com o botão direito e inseres um módulo. Copias para lá esta função:

Public Function CountColors(rg As Range, ColorIndex As Integer) As Integer
Dim rng As Range
Dim x As Integer

    For Each rng In rg
      If rng.Interior.ColorIndex = ColorIndex Then
           x = x + 1
      End If
    Next
    CountColors = x
   
End Function

Depois no excel utilizas em qualquer célula do seguinte modo:
=CountColors(Area, CódigoDaCor)
http://vbtuga.blogspot.com/
(VB.NET, ASP.NET, VB6, VBA, SQL Server)

Offline pepito

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #4 em: Abril 03, 2008, 11:18:28 pm »
jpaulino obrigado pela dica mas nao percebi bem a ultima parte, ou seja, nao percebi bem esta parte

Depois no excel utilizas em qualquer célula do seguinte modo:
=CountColors(Area, CódigoDaCor)

fiz tudo direito. inseri um modulo e colei este codigo mas agora como faço para por =CountColors(Area, CódigoDaCor) no excel e pergunto porque eu queria contar o nº de cores num determinado intervalo onde  e como posso fazer isso?

agradecia a ajuda mais uma vez obrigado.

Offline jpaulino

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #5 em: Abril 03, 2008, 11:21:34 pm »
Por exemplo na célula A1 colocas essa formula
=CountColors(B1:B20, 2)

O 2 é o código para uma amarelo.

Mas o que é para ti um intevalo de cores ?
http://vbtuga.blogspot.com/
(VB.NET, ASP.NET, VB6, VBA, SQL Server)

Offline pepito

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #6 em: Abril 04, 2008, 08:17:51 pm »
quando eu falo num intervalo de cores tou a dizer tipo: nas celulas a1:b10 por exemplo tenho 2 celulas com fundo azul e queria ter um outro campo fora desse que me dissesse o nº de celulas com fundo azul ou seja neste caso 2 e caso eu altere esse valor tb tinha obrigatoriamente que alterar

eu tento por aquele codigo =countcolors.... e dá sempre erro que a formula nao existe   :|

Offline jpaulino

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #7 em: Abril 12, 2008, 11:49:45 pm »
Desculpa só responder mas tenho estado ocupado.

Vê este exemplo http://vbtuga.blogspot.com/2008/04/excel-c...-das-clula.html
http://vbtuga.blogspot.com/
(VB.NET, ASP.NET, VB6, VBA, SQL Server)

Offline pepito

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #8 em: Abril 16, 2008, 09:11:58 pm »
ola mais uma vez

desculpa dizer mas mesmo assim nao consegui da maneira como disseste contudo obrigado, no entanto consegui fazer mas apenas conta uma coluna, ver codigo em baixo

Sub cores()
Dim c As Range, rw As Long

For rw = 1 To Cells(Rows.Count, 1).End(xlUp).Row
    If Cells(rw, 1).Interior.ColorIndex = 35 Then c = c + 1
    Next rw
Range("c10") =c
end sub
 

O codigo faz o seguinte:

pesquisa na coluna A, vai ao ultimo valor e sobe, quando encontrar uma cor "35" conta e sobe+ 1 celula e assim sucessivamente.

a celula c10 = resultado final


Nota: funciona 100% no office 2003 testado por mim

Offline jpaulino

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #9 em: Abril 17, 2008, 09:57:01 am »
Queres um exemplo ... http://www.megaupload.com/pt/?d=V9FNIII2


PS: Mas qual é a versão do Excel que estás a usar ?
http://vbtuga.blogspot.com/
(VB.NET, ASP.NET, VB6, VBA, SQL Server)

Offline pepito

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #10 em: Abril 17, 2008, 07:01:52 pm »
office 2003 11.5612.5606

Offline jpaulino

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #11 em: Abril 17, 2008, 07:05:06 pm »
E experimentaste o exemplo ?
http://vbtuga.blogspot.com/
(VB.NET, ASP.NET, VB6, VBA, SQL Server)

Offline pepito

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #12 em: Abril 17, 2008, 07:06:31 pm »
ja sei porque nao funcionava

=CountColors($B$5:$G$14;35) no site nao esta assim está =CountColors(C3:C10;4)

nao dava porque faltava $

obrigada

Offline jpaulino

  • Newbie
  • *
  • Mensagens: 0
  • Karma: +0/-0
    • Ver Perfil
[Problema] Ajuda com excel (Urgente)
« Responder #13 em: Abril 18, 2008, 01:56:37 am »
Ainda não é isso, deve-te faltar qualquer coisa. Os dolar ( $ ) servem para bloquear as células quando copias, ou sejam, se tiveres a formula =A1 na célula B1 e copiares para baixo ele incrementa para A2. Se utilizares os dolares ele fixa a célula.

De qualquer maneira está a funcionar e isso é que interessa.
http://vbtuga.blogspot.com/
(VB.NET, ASP.NET, VB6, VBA, SQL Server)

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49