Notifications
Clear all

Incluir data em formato texto com Caixa de Seleção

7 Posts
3 Usuários
0 Reactions
945 Visualizações
(@pedro-b)
Posts: 0
New Member
Topic starter
 

Estou com alguma dificuldade para fazer o seguinte:

Tenho uma planilha de check list de entrega e gostaria de usar uma Caixa de seleção para marcar a entrega do item listado e que quando esta caixa for marcada automaticamente seja incluída a data da alteração em formato de texto para que não seja alterada a cada vez que abrir o arquivo.
Tentei utilizar a dica abaixo (retirada de um outro site), mas isso não funciona para um recálculo na planilha.

Private Sub Worksheet_SelectionChange(ByVal Alvo As Range)
Dim limite_maximo As Integer
limite_maximo = 69
If Alvo.Cells.Count > 1 Or IsEmpty(Alvo) Then Exit Sub
If Alvo.Column <= 1 And Alvo.Row >= 2 And Alvo.Row <= limite_maximo Then
Application.EnableEvents = False
Alvo.Offset(0, 2).Value = Time()
Application.EnableEvents = True
End If
End Sub

Eu consegui fazer uma macro para que isso aconteça, mas ele fica vinculado a cada uma das caixas de seleção e como vou incluir centenas delas, precisaria de uma macro "genérica", ou seja, que funcione com qualquer caixa inserida dentro de um intervalo pré definido.

Esta é a macro que criei. Se isso puder ser transformado em algo genérico seria muito interessante. Ela copia uma céluna da coluna ao lado da caixa de seleção e cola como texto.

Sub insere_data()
'' insere_data Macro
'

    Range("D4").Select
    Selection.Copy
    Range("E4").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
End Sub

Obrigado!
Pedro

 
Postado : 18/04/2016 8:39 am
(@mprudencio)
Posts: 0
New Member
 

Disponibilize o arquivo como modelo.

 
Postado : 18/04/2016 8:57 am
(@pedro-b)
Posts: 0
New Member
Topic starter
 

Disponibilize o arquivo como modelo.

Anexei uma planilha mais simplificada porque a que eu fiz está com algum problema para abrir. Devem ser as tentativas que eu fiz que acabaram causando algum problema.

Como podes ver na planilha eu inseri uma macro para cada caixa de seleção, mas como são centenas de caixas gostaria de fazer isso de uma forma mais rápida e sem ter que criar uma macro para cada caixa.

O que acontece na planilha é o que eu desejo que aconteça. Quando marco com o mouse uma caixa de seleção a data da alteração seja informada ao lado.

Obrigado!

 
Postado : 18/04/2016 9:42 am
(@mprudencio)
Posts: 0
New Member
 

Se e apenas para inserir a data nao tem necessidade da checkbox... basta uma macro que insira a data com dois cliques por exemplo.

Neste exemplo a data e inserida apenas na coluna A caso vc de dois cliques em qualquer celula da coluna é so ajustar as demais.


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Column = 1 Then
ActiveCell.Value = Date
ActiveCell.Offset(0, 2).Select
End If
End Sub

 
Postado : 18/04/2016 11:07 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde Pedro B,

Vê se ajuda.

Qualquer coisa da o grito.
Abraço

 
Postado : 18/04/2016 11:30 am
(@pedro-b)
Posts: 0
New Member
Topic starter
 

Obrigado aos colegas

 
Postado : 18/04/2016 11:47 am
(@pedro-b)
Posts: 0
New Member
Topic starter
 

Obrigado ao MPrudêncio e ao Bernardo pelas respostas.

Pedro.

 
Postado : 18/04/2016 11:48 am