Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
Por josevitor007
#56914
Boa tarde a todos. Estou criando um diário de bordo no excel, e gostaria de saber se existe a possibilidade de criar um checkBox com datas pre determinadas para ser deselecionada.

Exemplo, dei check numa caixa na terça feira, e gostaria que automaticamente, na proxima segunda essa caixa não estivesse selecionada.

Agradeço a atenção de todos.
Por babdallas
#56915
Uma possibilidade é guardar o status do checkbox em um label que não apareça (Visble=False) sempre que mudar o checkboxD (evento Change). Então sempre que abrir o formulário, este caption da label que dirá qual checkbox foi carregada pela última vez.
No evento WorkBook_Open, ao abrir a pasta de trabalho, verifique se a data é uma segunda-feira. Se for verifique se o label está verdadeiro. Se tiver mude a propriedade value da checkbox para falso.
Por josevitor007
#56918
Ola, obrigado por responder, mas nao entendi mt bem.

Pra explicar melhor, estou usando os checkbox para dar check em tarefas semanais e mensais. Criei um farol para que aparecesse "Feito" após o Check.

Como são tarefas semanais, gostaria que essa caixa deselecionasse conforme alguma data pré determinada.
Por babdallas
#56919
Este checkbox está em uma planilha ou em um userform?
Seria mais fácil você anexar um exemplo com dados fictícios para ajudar no meu entendimento.
Por josevitor007
#56921
Planilha

Segue exemplo abaixo.
Imagem

A tarefa é feita semanalmente, toda segunda, caso nao seleciono o checkbox a tarefa fica em atraso, se seleciono, fica "OK"

Ai gostaria de programar uma data para o Check deselecionar automaticamente, isso valeria para tarefas mensais tb.
Por babdallas
#56923
OK. Dá para fazer sim. Anexa um pequeno exemplo (não imagem). Será preciso VBA.
Por babdallas
#57043
Vamos supor que seja uma segunda-feira. Se abrir a pasta de trabalho no início do dia, entendo que a tarefa precisa não pode estar selecionada. Então a primeira coisa a fazer é, ao abrir a pasta de trabalho na segunda-feira, usaria o evento WorkBook_Open (ao abrir a pasta de trabalho) para checar se a data é uma segunda. Se for, deixo a tarefa como não realizada deixando a checkbox desmarcada.
Isso atende a sua necessidade?
Por babdallas
#57075
Veja se é isso
Código: Selecionar todos
Private Sub Workbook_Open()
    Dim shpForma        As Shape
    Dim lngUltLin       As Long
    Dim lngCont         As Long

    With Planilha1
        If VBA.Weekday(VBA.Now()) = 2 Then
            lngUltLin = .Cells(.Rows.Count, 2).End(xlUp).Row
            
            'Loop pelas linhas
            For lngCont = 8 To lngUltLin
                'Loop pelos controles
                For Each shpForma In Planilha1.Shapes
                    If shpForma.TopLeftCell.Row = lngCont Then
                        .Cells(lngCont, 11).Value2 = False
                    End If
                Next shpForma
            Next lngCont
        End If
    End With
End Sub
Você não está autorizado a ver ou baixar esse anexo.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord