2017-02-20 2 views
-1

У меня есть рабочий лист, который можно ввести клиентом. Например,Вычитайте 2 ячейки из каждого и поместите значение в другую ячейку, которая не редактируется.

значение столбца с должны поступать из колонны B - Колонка A. Всякий раз, когда пользователь вводит значение в обоих столбцах А и В, она должна автоматически отражает столбец C.

Am с использованием VBA код.

Спасибо.

+1

И каков ваш вопрос? – tretom

+0

А что вы пробовали? – R3uK

ответ

0

Предположительно, вы спрашиваете, как снять защиту, а затем вновь защитить рабочий лист, когда пользователь делает записи в колонке A и B. Вы можете сделать это, предполагая, что пользователь вводит значения на «Лист1»:

Option Explicit 

Private Sub Worksheet_Change(ByVal target As Range) 

    If Not Intersect(target, Me.Range("A:B")) Is Nothing Then  
     Application.EnableEvents = False 
     UnprotectSheet1 

     Dim row As Integer 
     row = target.row 

     Cells(row, 3) = Cells(row, 2) - Cells(row, 1) 

     ProtectSheet1 
     Application.EnableEvents = True 
    End If 

End Sub 


Public Sub UnprotectSheet1() 
    Worksheets("Sheet1").Unprotect Password:="password" 
End Sub 


Public Sub ProtectSheet1() 
    With ThisWorkbook.Worksheets("Sheet1") 
    .Protect Password:="password" 
    .EnableSelection = xlUnlockedCells 
    End With 
End Sub 

Этот код должен заходить в раздел кода «Sheet1»

+0

привет спасибо. да я получил его. но теперь моя проблема: Столбец C не должен редактироваться. если я заблокировал столбец, то я не могу делать какие-либо изменения в этом столбце кодом VBA. поэтому пользователь не может редактировать этот столбец. но разработчик может передать значение в столбец c (A-B) с помощью кода VBA. – aaroki

+0

Листы (SheetName) .Range («H1: H100»). Защитите пароль: = PassWord, UserInterfaceOnly: = True. Я пробовал этот код в функции Workbook_Open(). это не работает. – aaroki

+0

Вы имеете в виду Sheets (SheetName) .Range ("C1: C100")? На листе вы можете иметь комбинацию незащищенных и защищенных ячеек. Приведенный выше код должен работать (при условии, что вы знаете пароль). – Amorpheuses

Смежные вопросы