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

Вход

Регистрация

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

 

= Мир MS Excel/как обьеденить макросы - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » как обьеденить макросы (Макросы Sub)
как обьеденить макросы
runik Дата: Понедельник, 16.12.2013, 19:43 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Есть два простых макроса,По одному работают,а вместе выдают ошибку
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
   If Not Intersect([B1], Target) Is Nothing Then
     If IsNumeric([B1]) Then
       [A1] = Choose([B1], [A1], 0)
     End If
   End If
End Sub
[/vba]
и
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)  
   If Target.Count > 1 Then Exit Sub  
   If Not Application.Intersect(Range("F1"), Target) Is Nothing Then  
      If Target.Address = "$F$1" Then  
         If Range("F1") = Range("E1") Then  
            MsgBox "Проверьте ДАТУ "  
             
         End If  
      End If  
    End If  
End Sub  
[/vba]
Помоги пожалуйста
 
Ответить
СообщениеЕсть два простых макроса,По одному работают,а вместе выдают ошибку
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
   If Not Intersect([B1], Target) Is Nothing Then
     If IsNumeric([B1]) Then
       [A1] = Choose([B1], [A1], 0)
     End If
   End If
End Sub
[/vba]
и
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)  
   If Target.Count > 1 Then Exit Sub  
   If Not Application.Intersect(Range("F1"), Target) Is Nothing Then  
      If Target.Address = "$F$1" Then  
         If Range("F1") = Range("E1") Then  
            MsgBox "Проверьте ДАТУ "  
             
         End If  
      End If  
    End If  
End Sub  
[/vba]
Помоги пожалуйста

Автор - runik
Дата добавления - 16.12.2013 в 19:43
Wasilich Дата: Понедельник, 16.12.2013, 20:03 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
Есть два простых макроса,По одному работают,а вместе выдают ошибку
Просто сложите в одну процедуру SUB...
 
Ответить
Сообщение
Есть два простых макроса,По одному работают,а вместе выдают ошибку
Просто сложите в одну процедуру SUB...

Автор - Wasilich
Дата добавления - 16.12.2013 в 20:03
RAN Дата: Понедельник, 16.12.2013, 20:05 | Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
[vba]
Код
Private Sub Worksheet_Change (ByVal Target As Range)
[/vba]
на листе может быть только 1.
Объединяйте коды внутри процедуры.

PS
[vba]
Код
If Not Application.Intersect(Range("F1"), Target) Is Nothing Then   
     If Target.Address = "$F$1" Then
[/vba]
Масло маслим?


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
Private Sub Worksheet_Change (ByVal Target As Range)
[/vba]
на листе может быть только 1.
Объединяйте коды внутри процедуры.

PS
[vba]
Код
If Not Application.Intersect(Range("F1"), Target) Is Nothing Then   
     If Target.Address = "$F$1" Then
[/vba]
Масло маслим?

Автор - RAN
Дата добавления - 16.12.2013 в 20:05
runik Дата: Понедельник, 16.12.2013, 20:49 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Масло маслим?

а как лучше?
при вводе в F1 цифру 8 должно выйти сообщение


Сообщение отредактировал runik - Понедельник, 16.12.2013, 20:55
 
Ответить
Сообщение
Масло маслим?

а как лучше?
при вводе в F1 цифру 8 должно выйти сообщение

Автор - runik
Дата добавления - 16.12.2013 в 20:49
RAN Дата: Понедельник, 16.12.2013, 20:56 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Если F1 входит в изменяемый диапазон...

Если адрес изменяемого диапазона $F$1 ...

Как лучше? :)

Или вы можете придумать ситуацию, когда адрес диапазона будет F1, и F1 не будет входить в этот диапазон?


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеЕсли F1 входит в изменяемый диапазон...

Если адрес изменяемого диапазона $F$1 ...

Как лучше? :)

Или вы можете придумать ситуацию, когда адрес диапазона будет F1, и F1 не будет входить в этот диапазон?

Автор - RAN
Дата добавления - 16.12.2013 в 20:56
Wasilich Дата: Вторник, 17.12.2013, 00:24 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
Масло маслим?
Ну не понимает человек что ты имел в виду. Нет бы просто объяснить, что эти две проверки для данного случая одно и тоже. Я же говорил, что не всегда понятно тем кто знает что мы не знаем. :D
runik, сложить две процедуры в одну, это значит сделать так:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)   
   If Target.Count > 1 Then Exit Sub   
   If Not Application.Intersect(Range("F1"), Target) Is Nothing Then   
       If Range("F1") = Range("E1") Then   
           MsgBox "Проверьте ДАТУ "   
       End If   
   End If   
   If Not Intersect([B1], Target) Is Nothing Then
      If IsNumeric([B1]) Then
         [A1] = Choose([B1], [A1], 0)
      End If
   End If
End Sub
[/vba]
 
Ответить
Сообщение
Масло маслим?
Ну не понимает человек что ты имел в виду. Нет бы просто объяснить, что эти две проверки для данного случая одно и тоже. Я же говорил, что не всегда понятно тем кто знает что мы не знаем. :D
runik, сложить две процедуры в одну, это значит сделать так:
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)   
   If Target.Count > 1 Then Exit Sub   
   If Not Application.Intersect(Range("F1"), Target) Is Nothing Then   
       If Range("F1") = Range("E1") Then   
           MsgBox "Проверьте ДАТУ "   
       End If   
   End If   
   If Not Intersect([B1], Target) Is Nothing Then
      If IsNumeric([B1]) Then
         [A1] = Choose([B1], [A1], 0)
      End If
   End If
End Sub
[/vba]

Автор - Wasilich
Дата добавления - 17.12.2013 в 00:24
runik Дата: Вторник, 17.12.2013, 10:41 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Wasilic, Спасибо !!!
 
Ответить
СообщениеWasilic, Спасибо !!!

Автор - runik
Дата добавления - 17.12.2013 в 10:41
Мир MS Excel » Вопросы и решения » Вопросы по VBA » как обьеденить макросы (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

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