- 22 Abr 2016 às 07:01
#10042

Por engano marquei como resolvido.
Boa tarde.
Desde que encontrei o seu blog, o tenho seguido por curiosidade e tenho apreciado a forma como os casos são expostos e explicados, a pesar de ser um leigo principalmente em relação a Macros, mas cá vou tirado umas por outras, mas é por ser um leigo que estou recorrendo da sua ajuda se possível.
Esbarrei em 3 problemas, quando me propus em fazer uma pequena planilha basicamente para uso pessoal em meu
trabalho.
1º Criar uma macro que me possibilite fazer um histórico (ao fechar o Excel) em outra planilha com nome Histórico, de
todos os movimentos efectuados, tendo em conta que existem células que se auto preenchem e que se encontrão bloqueadas impedindo o preenchimento por parte do usuário, uma vez que a planilha esteja protegida por código, o que será a condição normal.
2º Bloquear linhas já preenchidas ou parcialmente preenchidas (manualmente ou automaticamente) tendo em conta que as células devem ser preenchidas linha a linha e uma vez que se feche o Excel já só seja possível escrever na linha imediatamente seguinte e livre.
3º Não poder fechar a planilha sem o auto preenchimento da célula N111, uma vez que a mesma se preenche após ser introduzido o código na M111.
Em esta planilha já se encontrão 3 macros a funcionar, são elas:
Ambas colocadas em (Este Livro)
1ª - Permite Executar Macros em Planilhas Protegidas
2ª - Permite Salvar Planilha Automaticamente
Private Sub Workbook_Open()
Worksheets("Hormona Original 1").Unprotect Password:=“00000000"
Worksheets("Hormona Original 1").Protect Password:=" 00000000 ", UserInterfaceOnly:=True
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
ThisWorkbook.Save
End Sub
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Colocada em (Folha 1 Hormona Original 1)
1ª - Permite colocar data e hora
Private Sub WorKsheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Cells(Target.Row, 3).Value = Date & " " & Time
End If
If Target.Column = 9 Then
Cells(Target.Row, 10).Value = Date & " " & Time
End If
End Sub
Bem, posto isto gostaria de saber se existe alguma possibilidade de me ajudarem me fornecendo estas macros que necessito e me indicarem como as colocar de forma a trabalharem em conjunto com as outras.
Muito obrigada por o tempo que me dispensarem para esta questão.

Por engano marquei como resolvido.
Boa tarde.
Desde que encontrei o seu blog, o tenho seguido por curiosidade e tenho apreciado a forma como os casos são expostos e explicados, a pesar de ser um leigo principalmente em relação a Macros, mas cá vou tirado umas por outras, mas é por ser um leigo que estou recorrendo da sua ajuda se possível.
Esbarrei em 3 problemas, quando me propus em fazer uma pequena planilha basicamente para uso pessoal em meu
trabalho.
1º Criar uma macro que me possibilite fazer um histórico (ao fechar o Excel) em outra planilha com nome Histórico, de
todos os movimentos efectuados, tendo em conta que existem células que se auto preenchem e que se encontrão bloqueadas impedindo o preenchimento por parte do usuário, uma vez que a planilha esteja protegida por código, o que será a condição normal.
2º Bloquear linhas já preenchidas ou parcialmente preenchidas (manualmente ou automaticamente) tendo em conta que as células devem ser preenchidas linha a linha e uma vez que se feche o Excel já só seja possível escrever na linha imediatamente seguinte e livre.
3º Não poder fechar a planilha sem o auto preenchimento da célula N111, uma vez que a mesma se preenche após ser introduzido o código na M111.
Em esta planilha já se encontrão 3 macros a funcionar, são elas:
Ambas colocadas em (Este Livro)
1ª - Permite Executar Macros em Planilhas Protegidas
2ª - Permite Salvar Planilha Automaticamente
Private Sub Workbook_Open()
Worksheets("Hormona Original 1").Unprotect Password:=“00000000"
Worksheets("Hormona Original 1").Protect Password:=" 00000000 ", UserInterfaceOnly:=True
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
ThisWorkbook.Save
End Sub
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Colocada em (Folha 1 Hormona Original 1)
1ª - Permite colocar data e hora
Private Sub WorKsheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Cells(Target.Row, 3).Value = Date & " " & Time
End If
If Target.Column = 9 Then
Cells(Target.Row, 10).Value = Date & " " & Time
End If
End Sub
Bem, posto isto gostaria de saber se existe alguma possibilidade de me ajudarem me fornecendo estas macros que necessito e me indicarem como as colocar de forma a trabalharem em conjunto com as outras.
Muito obrigada por o tempo que me dispensarem para esta questão.
Editado pela última vez por Kledison em 22 Abr 2016 às 09:22, em um total de 1 vez.
Razão: Correção do título totalmente em Maiúsculo, Regra 2A.