Notifications
Clear all

Deixar código mais rápido

17 Posts
3 Usuários
0 Reactions
3,312 Visualizações
victorsam
(@victorsam)
Posts: 110
Estimable Member
Topic starter
 
'        Me.lblPri6mes.Caption = Format(Sheets("Total_Ano").Range("D13"), "#,##0.00") 'valor apurado
'        Me.lblUltim6mes.Caption = Format(Sheets("Total_Ano").Range("L13"), "#,##0.00") 'valor gasto
'        Me.lblanual.Caption = Format(Sheets("Total_Ano").Range("E16"), "#,##0.00")

Tentar não é saber, é ter a certeza que vai descobrir

Dicas excel, vba, Access http://vbaedit.blogspot.com.br/

 
Postado : 24/08/2014 3:29 pm
victorsam
(@victorsam)
Posts: 110
Estimable Member
Topic starter
 

considerando que Text pega tbm o formato da celula "fiz o teste"

um loop para pegar os valores ficaria mais ou menos assim:

Sub exemplo()
    With Sheets("Total_Ano")
       Linini = 3    ' ----------------------primeira linha
       col = Cells(1, "V").Column    '--------------------coluna que vai pegar os valores

       For Lab = 381 To 400    '-------------------------Conta da primeira label até a ultima
       Label = "Label" & Lab '-------------junta o Label Com o valor do loop para gerar o nome da label "Label381"

            Me.Controls(Label).Caption = .Cells(Linini, col).Text    ' ----= Me.Label381.Caption = .["V3"].Text 'valor apurado

            Linini = Linini + 1      '---------------------------pula uma linha na planilha
        Next
    End With
End Sub

mas vc vai ter que ter as numerações das labels em sequencia e onde elas pegam o valor tbm
o ideal é renomear as labels para ficarem com um padrão unico

att

Deixa eu ver se entendi:
Tenho que renomear as Labels com a numeração a partir de 381 com esse loop que me passou!?

Tentar não é saber, é ter a certeza que vai descobrir

Dicas excel, vba, Access http://vbaedit.blogspot.com.br/

 
Postado : 02/09/2014 5:47 pm
(@edcronos)
Posts: 1006
Noble Member
 

não, pode ser a partir do 1

eu coloquei como exemplo do trecho de macro que vc postou

é que vc criou as labels e deixou na sequencia de criação
e essa sequencia pode estar quebrada 1,2,5,6
e aí o loop não iria funcionar ou iria alterar labels que não fazem parte das que vc quer

vc pode criar um padrão de nome numerado para facilitar

tipo: (Total_Ano)=Ta
Ta1,Ta2,Ta3...
ou
como vc começa a pegar da linha 3 , pode começar essa numeração com 3 e ir até a ultima linha que pega valor

o loop é ajustável podendo ter até intervalos entre as contagens (step 3) vai contar de 3 em 3 a partir do primeiro valor
mas como falei para se ter a melhor solução tem que se saber como é sua planilha e oq vc precisa pegar dela

ão sei se tem como, mas acho que já vi uma maneira de renomear todos os objetos de um userform , mas não me lembro como é

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 02/09/2014 7:49 pm
Página 2 / 2