Notifications
Clear all

Contar colunas ( a partir da coluna B)

4 Posts
3 Usuários
0 Reactions
1,146 Visualizações
(@ikardoso)
Posts: 6
Active Member
Topic starter
 

Boa noite a todos.

Pessoal estou tentando criar um código para contar o numero de colunas que contenham dados, porém esta contagem deve partir da coluna B.
Para simplificar, tenho a primeira linha com dados de "A1:K1" e para contar os dados estou usando o codigo abaixo:

u_col = Cells(1, Columns.Count).End(xlToLeft).Column

Até aí tudo OK, ele me infroma que tenho 11 colunas com dados. Porém não posso contar a coluna "A" que na verdade é cabeçalho, sendo assim a contagem deve partir da coluna "B".

Alguém teria uma susgestão ?

Desde já obrigado e boa noite.

 
Postado : 02/12/2015 7:10 pm
(@edcronos2)
Posts: 346
Reputable Member
 

está meio confuso
se é para tirar a coluna A da contagem é só subtrair 1 do total
u_col = Cells(1, Columns.Count).End(xlToLeft).Column -1

 
Postado : 02/12/2015 7:16 pm
(@edivan)
Posts: 119
Estimable Member
 

Olá, bom dia!

Se o problema é só isso basta você fazer como faz mesmo e diminuir 1 do resultado....

Assim a coluna A sairia fora da soma...

Visite meu blog:
programacaopassoapasso.wordpress.com

 
Postado : 03/12/2015 5:55 am
(@edcronos2)
Posts: 346
Reputable Member
 

ola ikardoso
sobre
u_col = Cells(1, Columns.Count).End(xlToLeft).Column
Column não informa a contagem de colunas com dados
informa apenas a ultima coluna achada com dados ou 1 se a linha estiver vazia

para contar colunas se usa Columns.count
tipo

u_col = Cells(1, Columns.Count).End(xlToLeft).Column
total_colunas = range("B" & Line, cells( Line, u_col)).columns.count

tem que ter cuidado pq pode retornar uma valor não proprio
Exp
End(xlToLeft).Column vai parar na coluna que tiver dados ou em 1 coluna "A"
então se vc quer pegar a range que vai de c até a ultima coluna com dados e na linha não tiver dados vc ficaria com uma range tipo "C1:A1"

para evitar esse tipo de problemas se faz uma verificação de a ultima coluna e a primeira que se quer

ci = cells(1,"b").column
if u_col > ci then 
total_colunas = range("B" & Line, cells( Line, u_col)).columns.count
end if
 
Postado : 03/12/2015 6:38 am