Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2014, 10:27   #1
FiataliS
Пользователь
 
Регистрация: 11.12.2013
Сообщений: 56
Стрелка Код читает как то не правильно через F8

Добрый день, была проблема с кодом, и просматривал его поэтапно чтобы найти причину, проблему конечно устранил но заметил такую особенность:
Постоянно на одном и том же этапе кода (это встречается несколько раз), идет переход на тело Листа1() и пока полность его не прочитает не продолжает читать код. Дело в том что в модуле который выполняеться нету ссылок и упоминаний тела Листа1()

Это нормально и так и должно быть?
Или можно как то этого избежать?


Код:
Sub Remove_File()

  Application.ScreenUpdating = False
    
Dim sFileNamez As String, sNewFileNamez As String
X = ActiveCell.Row
Range("i" & X).copy
Range("n" & X).PasteSpecial xlPasteValues 'Здесь одно из мест откуда проиcходит переход
Dim Fa$, Ka$, La$, Rezultata$
Искал причину, эти ячейки также не где не упоминаються в теле Листа1()
Знаю как, не знаю что и с чем.

Последний раз редактировалось FiataliS; 23.01.2014 в 10:30.
FiataliS вне форума Ответить с цитированием
Старый 23.01.2014, 10:46   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Если нужен другой лист - укажите какой. А так конечно копирует в активный, или в тот, в модуле которого код (отсюда не видно).
Ну а на листе после вставки вероятно отрабатывают формулы, так и должно быть, если пересчёт не отключен.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 23.01.2014, 10:50   #3
FiataliS
Пользователь
 
Регистрация: 11.12.2013
Сообщений: 56
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
на листе после вставки вероятно отрабатывают формулы, так и должно быть, если пересчёт не отключен.

Согласен с этим, а как можно было бы этот пересчет отключить в конкретном Sub?
Знаю как, не знаю что и с чем.
FiataliS вне форума Ответить с цитированием
Старый 23.01.2014, 11:01   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Запишите рекордером отключение пересчёта - получите код.
Не забудьте в конце включить его назад.
Если брать этот данный кусок кода - тут пересчёт отключать нет нужды

Код:
    Application.Calculation = xlCalculationManual
'код
    Application.Calculation = xlCalculationAutomatic
Вообще желательно сперва запомнить состояние пересчёта, затем его отключить (ну или только если нужно), затем вернуть как было. Ну в общем понятно - смотрим по задаче, но чтоб не было так - у человека пересчёт всегда отключен, а после Вашего кода вдруг всё считается само...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 23.01.2014, 11:32   #5
FiataliS
Пользователь
 
Регистрация: 11.12.2013
Сообщений: 56
По умолчанию

Не знаю в чем проблема, но пересчет не отключается и ошибки не выдает.
Знаю как, не знаю что и с чем.
FiataliS вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программно изменить код страницы(как в Опере через исходный код) igrok111 Работа с сетью в Delphi 7 20.04.2013 23:46
Не правильно читает из файла dimon_medved Общие вопросы C/C++ 0 17.11.2012 00:46
Как правильно применить код? artemavd Общие вопросы Delphi 5 05.06.2012 22:15
Делфи. как правильно вставить код в код? Кушманский Помощь студентам 13 18.03.2012 20:06
Как правильно оформить код? NiKiToZZ- Помощь студентам 5 28.12.2010 12:26