есть задача: все данные веденные в ячейку B2 например, должны сохраняться переводя их следующею ячейку а ячейках A3:A... должно сохранятся время ввода в нижней ячейки.
если у кого есть предложения по оптимизации
здравствуйте!
есть задача: все данные веденные в ячейку B2 например, должны сохраняться переводя их следующею ячейку а ячейках A3:A... должно сохранятся время ввода в нижней ячейки.
если у кого есть предложения по оптимизацииn_panthera
может не правильно задал вопрос. другими словами нужна помощь в решении вот такой задачи не потерять данные веденные в одну ячейку, например если в В2 = 3 то если ведут в В2 другое значение предыдущее должно перейти в В3 а в ячейке А3 должно выводится время записи значения = 3 заранее благодарен
здравствуйте!
может не правильно задал вопрос. другими словами нужна помощь в решении вот такой задачи не потерять данные веденные в одну ячейку, например если в В2 = 3 то если ведут в В2 другое значение предыдущее должно перейти в В3 а в ячейке А3 должно выводится время записи значения = 3 заранее благодаренn_panthera
n_panthera, может хватит уже тормозить? Читайте Правила, выкладывайте пример в файле(не картинку, не фотографию Ваших пальцев, на которых Вы что-то пытаетесь объяснять). Пока модеры не прикрыли тему.
n_panthera, может хватит уже тормозить? Читайте Правила, выкладывайте пример в файле(не картинку, не фотографию Ваших пальцев, на которых Вы что-то пытаетесь объяснять). Пока модеры не прикрыли тему.KuklP
Ну с НДС и мы чего-то стoим! kuklp60@gmail.com WM Z206653985942, R334086032478, U238399322728
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address <> "$B$2" Then Exit Sub Dim a a = Target.Value Application.EnableEvents = 0 Application.Undo [B1:B2].Insert xlToRight, 1 [b2] = a: [b1] = Time Application.EnableEvents = -1 End Sub
[/vba]
В модуль листа: [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address <> "$B$2" Then Exit Sub Dim a a = Target.Value Application.EnableEvents = 0 Application.Undo [B1:B2].Insert xlToRight, 1 [b2] = a: [b1] = Time Application.EnableEvents = -1 End Sub
KuklP, Спасибо за предложенное решение, но есть одно но возможно ли при защищенном листе после ввода в В2 снять программно защиту с листа сделать insert column внести все изменения и заблокировать опять лист
KuklP, Спасибо за предложенное решение, но есть одно но возможно ли при защищенном листе после ввода в В2 снять программно защиту с листа сделать insert column внести все изменения и заблокировать опять листn_panthera
возможно ли при защищенном листе после ввода в В2 снять программно защиту с листа сделать insert column внести все изменения и заблокировать опять лист
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address <> "$B$2" Then Exit Sub Dim a a = Target.Value Application.EnableEvents = 0 Application.Undo ActiveSheet.Unprotect [B1:B2].Insert xlToRight, 1 [b2] = a: [b1] = Time Application.EnableEvents = -1 ActiveSheet.Protect End Sub
[/vba]
[admin]n_panthera, оформляйте коды тегами![/admin]
возможно ли при защищенном листе после ввода в В2 снять программно защиту с листа сделать insert column внести все изменения и заблокировать опять лист
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address <> "$B$2" Then Exit Sub Dim a a = Target.Value Application.EnableEvents = 0 Application.Undo ActiveSheet.Unprotect [B1:B2].Insert xlToRight, 1 [b2] = a: [b1] = Time Application.EnableEvents = -1 ActiveSheet.Protect End Sub
[/vba]
[admin]n_panthera, оформляйте коды тегами![/admin]Serge_007
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address <> "$B$2" Then Exit Sub Dim a a = Target.Value Application.EnableEvents = 0 Application.Undo ActiveSheet.Unprotect [B1:B2].Insert xlToRight, 1 [b2] = a: [b1] = Time Rows("2:2").Locked = -1 Range("B2").Locked = 0 Application.EnableEvents = -1 ActiveSheet.Protect End Sub
[/vba]
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Address <> "$B$2" Then Exit Sub Dim a a = Target.Value Application.EnableEvents = 0 Application.Undo ActiveSheet.Unprotect [B1:B2].Insert xlToRight, 1 [b2] = a: [b1] = Time Rows("2:2").Locked = -1 Range("B2").Locked = 0 Application.EnableEvents = -1 ActiveSheet.Protect End Sub