Bom dia,
Estou desenvolvendo uma planilha para gerenciar o preenchimento de várias informações diárias corriqueiras do dia dia.
Personalizei uma forma de cadastro como várias validações de dados, vários bloqueios para evitar o preenchimento equivocado. No código abaixo se refere ao botão cadastrar, preciso de ajuda para que na planilha que recebe as informações cadastradas o usuário que estiver alimentando as informações não consiga preencher as informações para planilha que recebe os dados, só consiga cadastrar informações pela planilha de lançamentos ou seja consiga incluir somente clicando no botão cadastrar.
no segundo código abaixo, consigo bloquear a planilha que recebe os dados, onde bloqueia as informações cadastradas, não permitindo que o usuário consiga alterá-los. Agora meu objetivo é bloquear a planilha para que o usuário não consiga incluir informações.
Sub Cadastro_Troca_Veiculo()
Dim ws As Worksheet
Dim lRow As Long
If Range("O12") = 1 Then
MsgBox "Inclusão Invalida. Essa Troca já foi Cadastrado.", vbCritical, "Atenção"
Exit Sub
Else
If Range("I10") = "" Or Range("l10") = "" Or Range("o10") = "" Or Range("R10") = "" Or Range("U10") = "" Or Range("F13") = "" Or Range("R15") = "" Then
MsgBox " Favor prencher todos os campos especificados com *, caso contrário não será concluido o cadastro.", vbCritical, "Atenção"
Exit Sub
Else
Set ws = ThisWorkbook.Sheets("Troca_Veiculo")
With ws
lRow = .Cells(.Rows.Count, "A").End(xlUp).Row + 1
.Cells(lRow, "A") = Range("E34")
.Cells(lRow, "B") = Range("F34")
.Cells(lRow, "c") = Range("G34")
.Cells(lRow, "d") = Range("H34")
.Cells(lRow, "e") = Range("I34")
.Cells(lRow, "f") = Range("J34")
.Cells(lRow, "g") = Range("K34")
.Cells(lRow, "h") = Range("L34")
.Cells(lRow, "i") = Range("M34")
.Cells(lRow, "J") = Range("N34")
.Cells(lRow, "K") = Range("O34")
End With
MsgBox "Dados gravados com sucesso!", vbInformation
Call Limpar_Troca_Veiculo
Range("I10").Select
End If
End If
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim rCell As Range
With Me.Sheets("Troca_Veiculo")
.Unprotect "9928"
.Cells.Locked = False
For Each rCell In .UsedRange
If Len(Trim(rCell)) > 0 Then
rCell.Locked = True
End If
Next rCell
.Protect "9928"
End With
Postado : 16/02/2015 8:28 am