Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Private Sub Worksheet_Change(ByVal Target As Rang) - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Private Sub Worksheet_Change(ByVal Target As Rang) (Макросы/Sub)
Private Sub Worksheet_Change(ByVal Target As Rang)
bikalexander Дата: Понедельник, 28.07.2014, 23:58 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: -21 ±
Замечаний: 0% ±

Excel 2010
Вечер добрый,

имеется рабочий код, который на практике не подходит и нужно привязать к кнопке:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)

Dim rngZelle As Range
Dim rngIntersect As Range

Set rngIntersect = Application.Intersect(Target, Range("AD8:AI" & Rows.Count))
If Not rngIntersect Is Nothing Then
      Application.EnableEvents = False
      For Each rngZelle In rngIntersect.Cells
          If IsNumeric(rngZelle.Value) Then
          If IsNumeric(rngZelle.Offset(, -22).Value) Then
              With rngZelle.Offset(, -22)
                  .Value = .Value - rngZelle.Value
              End With
          End If
          End If
      Next
      Set rngZelle = Nothing
      Application.EnableEvents = True
End If
Set rngIntersect = Nothing
End Sub
[/vba]

Может кто посказать?

Заранее спасибо!
[moder]Тема закрыта. Причина: нарушение п.п. 2, 3 Правил форума[/moder]
 
Ответить
СообщениеВечер добрый,

имеется рабочий код, который на практике не подходит и нужно привязать к кнопке:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)

Dim rngZelle As Range
Dim rngIntersect As Range

Set rngIntersect = Application.Intersect(Target, Range("AD8:AI" & Rows.Count))
If Not rngIntersect Is Nothing Then
      Application.EnableEvents = False
      For Each rngZelle In rngIntersect.Cells
          If IsNumeric(rngZelle.Value) Then
          If IsNumeric(rngZelle.Offset(, -22).Value) Then
              With rngZelle.Offset(, -22)
                  .Value = .Value - rngZelle.Value
              End With
          End If
          End If
      Next
      Set rngZelle = Nothing
      Application.EnableEvents = True
End If
Set rngIntersect = Nothing
End Sub
[/vba]

Может кто посказать?

Заранее спасибо!
[moder]Тема закрыта. Причина: нарушение п.п. 2, 3 Правил форума[/moder]

Автор - bikalexander
Дата добавления - 28.07.2014 в 23:58
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Private Sub Worksheet_Change(ByVal Target As Rang) (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!