Я использую Access 2007, и это поведение можно повторить следующим образом.
1) Создать новый файл accdb базы данных доступа.
2) Открыть базу данных и создать новый модуль vba.
3) Создайте 1-ю подпрограмму sub1:
Sub sub1()
Msgbox Err.Description
End Sub
4) Создайте 2-ю подпрограмму sub2:
Sub sub2(Description as String)
Msgbox Description
End Sub
В этот момент все нормально.
5) Но если я пойду и поменяю sub2так что «Description» читает «description», то есть меняет «D» на «d» следующим образом:
Sub sub2(description as String)
Msgbox description
End Sub
Это также имеет эффект включения и изменяет sub1!Таким образом, теперь sub1 читает:
Sub sub1()
Msgbox Err.description
End Sub
Почему «Err.Description» изменилось на «Err.description»?
Такое поведение, похоже, не влияет на действительную функциональность кода.так что никаких проблем нет.У меня большая проблема в том, что я экспортирую свои модули vba в виде текстовых файлов и помещаю их под контроль SVN.И совсем недавно из-за этого в хранилище было внесено множество бессмысленных «изменений».
Есть идеи, как этого избежать?