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

Вход

Регистрация

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

 

= Мир MS Excel/Отслеживание исправлений - Мир MS Excel

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

Excel 2010
Добрый день. Не могу в толк взять почему у меня макрос ругается на функцию "Отслеживание исправлений"? Помогите разобраться. По разному пробывал... И методом иключения, и удалением наиболее (по моему мнению) "несовместимых"... не получается... А ведь такая удобна штука...=)
К сообщению приложен файл: 12.xlsm (77.5 Kb)
 
Ответить
СообщениеДобрый день. Не могу в толк взять почему у меня макрос ругается на функцию "Отслеживание исправлений"? Помогите разобраться. По разному пробывал... И методом иключения, и удалением наиболее (по моему мнению) "несовместимых"... не получается... А ведь такая удобна штука...=)

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

2010
И почему у меня не ругается?
Знаю! Ее ни в одном из 15 пустых модулей нет!
QwertyBoss, погляжу еще один ваш файл. Но если в нем будет больше 1 модуля, имеющего отношение к вопросу, это будет последний просмотр.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеИ почему у меня не ругается?
Знаю! Ее ни в одном из 15 пустых модулей нет!
QwertyBoss, погляжу еще один ваш файл. Но если в нем будет больше 1 модуля, имеющего отношение к вопросу, это будет последний просмотр.

Автор - RAN
Дата добавления - 25.12.2015 в 21:05
QwertyBoss Дата: Пятница, 25.12.2015, 21:19 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Исправляюся... Удалил (с горем пополам)
К сообщению приложен файл: 3755918.xlsm (68.8 Kb)
 
Ответить
СообщениеИсправляюся... Удалил (с горем пополам)

Автор - QwertyBoss
Дата добавления - 25.12.2015 в 21:19
RAN Дата: Пятница, 25.12.2015, 21:29 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Посмотрел новый файл.
Модулей убавилось.
Функции как не было, так и нет. yes
Я предупреждал...


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеПосмотрел новый файл.
Модулей убавилось.
Функции как не было, так и нет. yes
Я предупреждал...

Автор - RAN
Дата добавления - 25.12.2015 в 21:29
QwertyBoss Дата: Суббота, 26.12.2015, 06:15 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Так я её эту стандартную функцию с панели управления запускаю... с рецензирования, я ни в какой модуль ничего не всшивал...=(. Изв. что не уточнил,что-то каак то вылетело из головы. На будущее, буду иметь ввиду. Ну хоть модули поудалял...


Сообщение отредактировал QwertyBoss - Суббота, 26.12.2015, 09:14
 
Ответить
СообщениеТак я её эту стандартную функцию с панели управления запускаю... с рецензирования, я ни в какой модуль ничего не всшивал...=(. Изв. что не уточнил,что-то каак то вылетело из головы. На будущее, буду иметь ввиду. Ну хоть модули поудалял...

Автор - QwertyBoss
Дата добавления - 26.12.2015 в 06:15
QwertyBoss Дата: Суббота, 26.12.2015, 12:26 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
RAN подсказал отличную идею. Нашёл отличный макрос... (во второй половине). Не могу указать рабочий диапазон. Подскажите плз.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Range("G:G"), Target) Is Nothing Then Else Exit Sub
    Dim a
    Application.EnableEvents = 0
    a = Target.Value
    Application.Undo
    If Target > a Then
    MsgBox "НВЕРНО!!!   ПОДКОРРЕКТИРУЙТЕ ПРОЦЕНТЫ"
    Else
    Target = a
    End If
    'If Target = 1 And Target.Offset(, 1) = 0 Then
    If Target = 1 Then
    Target.Offset(, 1).Select
    MsgBox "Поставьте дату окончания работы"
    End If
    Application.EnableEvents = -1

  
  ' как прописать диапазон колонок "В:H"
    Dim oComment As Comment
    On Error Resume Next
    Set oComment = Target.Comment
    If oComment Is Nothing Then
        Set oComment = Target.AddComment(Target.Text & " " & Format(Now, "dd.mm.yy HH:MM"))
    Else
        oComment.Text oComment.Text & Chr(10) & Target.Text & " " & Format(Now, "dd.mm.yy HH:MM")
        oComment.Shape.TextFrame.AutoSize = True
    End If

End Sub
[/vba]


Сообщение отредактировал QwertyBoss - Суббота, 26.12.2015, 12:27
 
Ответить
СообщениеRAN подсказал отличную идею. Нашёл отличный макрос... (во второй половине). Не могу указать рабочий диапазон. Подскажите плз.
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Range("G:G"), Target) Is Nothing Then Else Exit Sub
    Dim a
    Application.EnableEvents = 0
    a = Target.Value
    Application.Undo
    If Target > a Then
    MsgBox "НВЕРНО!!!   ПОДКОРРЕКТИРУЙТЕ ПРОЦЕНТЫ"
    Else
    Target = a
    End If
    'If Target = 1 And Target.Offset(, 1) = 0 Then
    If Target = 1 Then
    Target.Offset(, 1).Select
    MsgBox "Поставьте дату окончания работы"
    End If
    Application.EnableEvents = -1

  
  ' как прописать диапазон колонок "В:H"
    Dim oComment As Comment
    On Error Resume Next
    Set oComment = Target.Comment
    If oComment Is Nothing Then
        Set oComment = Target.AddComment(Target.Text & " " & Format(Now, "dd.mm.yy HH:MM"))
    Else
        oComment.Text oComment.Text & Chr(10) & Target.Text & " " & Format(Now, "dd.mm.yy HH:MM")
        oComment.Shape.TextFrame.AutoSize = True
    End If

End Sub
[/vba]

Автор - QwertyBoss
Дата добавления - 26.12.2015 в 12:26
RAN Дата: Суббота, 26.12.2015, 12:50 | Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
[vba]
Код
If Not Application.Intersect(Range("G:G"), Target) Is Nothing Then
[/vba]
на мысли не наводит?


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение[vba]
Код
If Not Application.Intersect(Range("G:G"), Target) Is Nothing Then
[/vba]
на мысли не наводит?

Автор - RAN
Дата добавления - 26.12.2015 в 12:50
QwertyBoss Дата: Суббота, 26.12.2015, 13:54 | Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
То что в дело в Range("G:G") эт я понял, но я не могу соеденить два рабочих диапазоня , по отдельности для каждого дейстаия. Т.е. Range("G:G") это для верней части кода, "В:H" для нижней части. Пробывал подобием, но пулучилась кракозябра, пробывал подставить В:H вместо G:G - не устраивает... Не то.
 
Ответить
СообщениеТо что в дело в Range("G:G") эт я понял, но я не могу соеденить два рабочих диапазоня , по отдельности для каждого дейстаия. Т.е. Range("G:G") это для верней части кода, "В:H" для нижней части. Пробывал подобием, но пулучилась кракозябра, пробывал подставить В:H вместо G:G - не устраивает... Не то.

Автор - QwertyBoss
Дата добавления - 26.12.2015 в 13:54
RAN Дата: Суббота, 26.12.2015, 16:00 | Сообщение № 9
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Что "не то"?


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеЧто "не то"?

Автор - RAN
Дата добавления - 26.12.2015 в 16:00
QwertyBoss Дата: Суббота, 26.12.2015, 17:01 | Сообщение № 10
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Цитата
Что "не то"?

То, чо на любое изменение в диапазоне "В:H" , будут сообщения MsgBox "НВЕРНО!!! ПОДКОРРЕКТИРУЙТЕ ПРОЦЕНТЫ", MsgBox "Поставьте дату окончания работы" и условия, а это никак не относится к ячейкам "В:Е".
Как то так... =(
Если только ... указать что меняются только числа. Надо подумать...


Сообщение отредактировал QwertyBoss - Суббота, 26.12.2015, 17:04
 
Ответить
Сообщение
Цитата
Что "не то"?

То, чо на любое изменение в диапазоне "В:H" , будут сообщения MsgBox "НВЕРНО!!! ПОДКОРРЕКТИРУЙТЕ ПРОЦЕНТЫ", MsgBox "Поставьте дату окончания работы" и условия, а это никак не относится к ячейкам "В:Е".
Как то так... =(
Если только ... указать что меняются только числа. Надо подумать...

Автор - QwertyBoss
Дата добавления - 26.12.2015 в 17:01
RAN Дата: Суббота, 26.12.2015, 17:23 | Сообщение № 11
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
То, чо на любое изменение в диапазоне "В:H" , будут сообщения MsgBox "НВЕРНО!!!

И как такое сотворить? Надо подумать...

Может поделитесь?


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
То, чо на любое изменение в диапазоне "В:H" , будут сообщения MsgBox "НВЕРНО!!!

И как такое сотворить? Надо подумать...

Может поделитесь?

Автор - RAN
Дата добавления - 26.12.2015 в 17:23
QwertyBoss Дата: Суббота, 26.12.2015, 17:38 | Сообщение № 12
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Неужели для каждого диапазона нельзя указать свои условия?
 
Ответить
СообщениеНеужели для каждого диапазона нельзя указать свои условия?

Автор - QwertyBoss
Дата добавления - 26.12.2015 в 17:38
RAN Дата: Суббота, 26.12.2015, 18:14 | Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Да без проблем. Вот объясните мне, дремучему, как вы это неправильно написать умудряетесь?
[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Range("G:G"), Target) Is Nothing Then
    Dim a
    Application.EnableEvents = 0
    a = Target.Value
    Application.Undo
    If Target > a Then
    MsgBox "НВЕРНО!!!   ПОДКОРРЕКТИРУЙТЕ ПРОЦЕНТЫ"
    Else
    Target = a
    End If
    'If Target = 1 And Target.Offset(, 1) = 0 Then
    If Target = 1 Then
    Target.Offset(, 1).Select
    MsgBox "Поставьте дату окончания работы"
    End If
    Application.EnableEvents = -1
end if
If Not Application.Intersect(Range("B:H"), Target) Is Nothing Then
' как прописать диапазон колонок "В:H"
    Dim oComment As Comment
    On Error Resume Next
    Set oComment = Target.Comment
    If oComment Is Nothing Then
        Set oComment = Target.AddComment(Target.Text & " " & Format(Now, "dd.mm.yy HH:MM"))
    Else
        oComment.Text oComment.Text & Chr(10) & Target.Text & " " & Format(Now, "dd.mm.yy HH:MM")
        oComment.Shape.TextFrame.AutoSize = True
    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("G:G"), Target) Is Nothing Then
    Dim a
    Application.EnableEvents = 0
    a = Target.Value
    Application.Undo
    If Target > a Then
    MsgBox "НВЕРНО!!!   ПОДКОРРЕКТИРУЙТЕ ПРОЦЕНТЫ"
    Else
    Target = a
    End If
    'If Target = 1 And Target.Offset(, 1) = 0 Then
    If Target = 1 Then
    Target.Offset(, 1).Select
    MsgBox "Поставьте дату окончания работы"
    End If
    Application.EnableEvents = -1
end if
If Not Application.Intersect(Range("B:H"), Target) Is Nothing Then
' как прописать диапазон колонок "В:H"
    Dim oComment As Comment
    On Error Resume Next
    Set oComment = Target.Comment
    If oComment Is Nothing Then
        Set oComment = Target.AddComment(Target.Text & " " & Format(Now, "dd.mm.yy HH:MM"))
    Else
        oComment.Text oComment.Text & Chr(10) & Target.Text & " " & Format(Now, "dd.mm.yy HH:MM")
        oComment.Shape.TextFrame.AutoSize = True
    End If
end if
End Sub
[/vba]

Автор - RAN
Дата добавления - 26.12.2015 в 18:14
Wasilich Дата: Воскресенье, 27.12.2015, 01:47 | Сообщение № 14
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
[vba]
Код
If Not Application.Intersect(Range("G:G"), Target) Is Nothing Then
[/vba]В диапазон "G:G" входит один столбец "G". В этом столбце и отрабатывает макрос.

[vba]
Код
If Not Application.Intersect(Range("B:H"), Target) Is Nothing Then
[/vba]В диапазон "B:H" входят столбцы "B" "C" "D" "E" "F" "G" "H". В этих всех столбцах будет отрабатывать макрос.

А надо то что?


Сообщение отредактировал Wasilic - Воскресенье, 27.12.2015, 01:48
 
Ответить
Сообщение[vba]
Код
If Not Application.Intersect(Range("G:G"), Target) Is Nothing Then
[/vba]В диапазон "G:G" входит один столбец "G". В этом столбце и отрабатывает макрос.

[vba]
Код
If Not Application.Intersect(Range("B:H"), Target) Is Nothing Then
[/vba]В диапазон "B:H" входят столбцы "B" "C" "D" "E" "F" "G" "H". В этих всех столбцах будет отрабатывать макрос.

А надо то что?

Автор - Wasilich
Дата добавления - 27.12.2015 в 01:47
QwertyBoss Дата: Воскресенье, 27.12.2015, 06:30 | Сообщение № 15
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Всё получилось. спс. Вам. Объясните, почему когда выбираешь "рецензирование" (на панеле быстр.доступа) - исправления - отслеживать исправления - предлагает сохраниться и ... ВСЁ!!! Предупреждение выскакивает "В книге содержатся макросы, написанные на visual basic. Изменить или посмотреть макросы в файлах совместного доступа невозможно". VBA Project is unviewable. Разблокировать не получается. Ни один макрос не работает. ЧТО ЭТО? :o


Сообщение отредактировал QwertyBoss - Воскресенье, 27.12.2015, 07:08
 
Ответить
СообщениеВсё получилось. спс. Вам. Объясните, почему когда выбираешь "рецензирование" (на панеле быстр.доступа) - исправления - отслеживать исправления - предлагает сохраниться и ... ВСЁ!!! Предупреждение выскакивает "В книге содержатся макросы, написанные на visual basic. Изменить или посмотреть макросы в файлах совместного доступа невозможно". VBA Project is unviewable. Разблокировать не получается. Ни один макрос не работает. ЧТО ЭТО? :o

Автор - QwertyBoss
Дата добавления - 27.12.2015 в 06:30
QwertyBoss Дата: Воскресенье, 27.12.2015, 07:08 | Сообщение № 16
Группа: Пользователи
Ранг: Участник
Сообщений: 87
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Цитата
Вот объясните мне, дремучему, как вы это неправильно написать умудряетесь?

Постараюсь писать пограмотней (в данном случае world даст фору exel...). :D


Сообщение отредактировал QwertyBoss - Воскресенье, 27.12.2015, 18:49
 
Ответить
Сообщение
Цитата
Вот объясните мне, дремучему, как вы это неправильно написать умудряетесь?

Постараюсь писать пограмотней (в данном случае world даст фору exel...). :D

Автор - QwertyBoss
Дата добавления - 27.12.2015 в 07:08
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Отслеживание исправлений (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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