Я только что получил много проблем и не могу найти решение.
Я сделал довольно большой макрос, который пару лет использовался в Excel 2003. Теперь мой друг обновился до Office 2010, и вдруг макросы не работают должным образом.
Я проследил одну ошибку до этой строки, которая, кажется, отбрасывает десятичные дроби для переменной.
Эта строка:
varHeight = ActiveSheet.Pictures("temp").Height
В Excel 2003 эта строка считывает высоту картинки, называемой "temp", а переменная "varHeight" получает значение 5,25.
Если я попробую то же самое в Excel 2010, переменная «varHeight» получит значение 5. Так что здесь десятичная дробь отбрасывается. Я не понимаю, как это случилось.
Переменная varHeight объявляется этой строкой:
Dim AntalMMPerPixel, IsoHöjd, varHeight As Double
Что я делаю в этом макросе, так это то, что я строю проект, в котором для создания чертежа используем разные картинки. Поэтому я использую высоту этого изображения, чтобы вычислить, где разместить остальные из них.
Я использовал точку останова в коде, чтобы увидеть, какое значение присвоено переменной, как в Excel 2003, так и в Excel 2010.
Какие советы или идеи высоко ценится?
С наилучшими пожеланиями