|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.03.2009, 17:48 | #1 |
Пользователь
Регистрация: 14.08.2008
Сообщений: 64
|
Цикл в скрипте
Простенький вопрос, есть цикл который проходит по ячейкам, как определить что значения кончились и ячейка пустая и завершить цикл сразу же.
|
21.03.2009, 18:00 | #2 |
Форумчанин
Регистрация: 23.11.2008
Сообщений: 237
|
Не совсем понял, что вы имеете ввиду; возможно попробуйте в формуле использовать функцию "ЕСЛИ" (в меню ВСТВКА) , выведите данные в следующую ячейку если значения не кончились, а если закончились — в другую. Если информация пригодилась, можете добавить отзыв.
Если мой ответ вам понравился, поставьте позитивный отзыв
|
21.03.2009, 18:38 | #3 |
Пользователь
Регистрация: 14.08.2008
Сообщений: 64
|
нет я не про то спрашивал, я вообще про скрипт т.е VBA. Но я уже разобрался, точнее помогли ))
Если подскажите, то поставлю отзыв =)) почему в строке ColumnA = Объекты.Cells(P, 1).Value Екзель ругается на Объекты если написать ColumnA = Cells(P, 1).Value то все работает. Пишет что обьект requied т.е. требуется, но такой лист есть он называется Объекты Последний раз редактировалось SoFuWa; 21.03.2009 в 18:47. |
21.03.2009, 19:07 | #4 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
ColumnA = Sheets("Объекты").Cells(P, 1).Value
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
21.03.2009, 19:44 | #5 |
Пользователь
Регистрация: 14.08.2008
Сообщений: 64
|
Спасибо так работает.
Я цикл переделал, а он не работает тоже вот такой код Sub счетчик() Dim NumberMain As Integer Dim Owners As Integer Dim Intermediaries As Integer Dim ColumnA As Variant Dim ColumnP As Variant Dim ColumnQ As Variant NumberMain = 0 Owners = 0 Intermediaries = 0 For P = 1 To 100000 ColumnA = Cells(P, 1).Value If IsEmpty(ColumnA) Then P = 100000 Else NumberMain = NumberMain + 1 Next P For o = 1 To 100000 ColumnP = Cells(o, 16).Value If IsEmpty(ColumnP) Then o = 100000 Else Owners = Owners + 1 Next o For k = 1 To 100000 ColumnQ = Cells(k, 17).Value If IsEmpty(ColumnQ) Then k = 100000 Else Intermediaries = Intermediaries + 1 Next k End Sub Я таким способом сделал, чтоб определялись пустые ячейки. Но при запуске никакого эффекта, раньше было через for и все работало, а теперь вообще не работает, комп даже не задумывается, а там работы на несколько минут БД большая. Помогите пожалуста |
21.03.2009, 20:29 | #6 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Вот это:
Код:
Код:
Код:
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 21.03.2009 в 20:32. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помощь в скрипте | Eretic | JavaScript, Ajax | 5 | 02.12.2008 14:48 |
Помощь в скрипте | Kreaman | PHP | 5 | 29.11.2008 20:27 |
Ошибка в скрипте | Qsajeal | PHP | 11 | 03.06.2008 12:22 |
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) | Mr.User | Помощь студентам | 9 | 23.11.2007 01:34 |