![]() |
|
Модераторы: mihanik |
![]()
|
|
| slang |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 7.3.2004 Репутация: нет Всего: 0 |
В заданном поле перманентно меняется значение (приходит из другой программы), как сделать архив этих значений на другом листе.
Подскажите, от чего отттолкнутся, хотя-бы! Заранее спасибо. -------------------- Запчасти на иномарки www.avtograd55.ru. Если есть время - зайдите и посоветуйте что исправить и что доработать. |
|||
|
||||
| Staruha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1292 Регистрация: 1.2.2004 Где: Казань Репутация: 13 Всего: 27 |
Запросто
-------------------- Возмездие настигнет |
|||
|
||||
| likhobory |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 466 Регистрация: 17.5.2005 Где: Москва Репутация: 10 Всего: 20 |
+ еще один из возможных вариантов
|
|||
|
||||
| Staruha |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1292 Регистрация: 1.2.2004 Где: Казань Репутация: 13 Всего: 27 |
вот здесь пожалуйста поподробнее.Это что метод какой?
вариантов действительно тьма -------------------- Возмездие настигнет |
||||
|
|||||
| slang |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 7.3.2004 Репутация: нет Всего: 0 |
Сам скрипт работает, т.е. инфа из поля Лист1.А1 вставляется в Лист2.А1, только вот скрипт не работает постоянно, т.е. ошибка в первой строке.
Не могу найти в книжке (здоровая книжка на столе "Office XP разработка приложений") какое имя макросу дать, чтобы он выполнялся при смене инфы в поле Лист1.А1. Как я понял в этом скрипте менятся поле на втором листе, если мы на нем находимся. Как "замутить", чтобы на втором листе менялась информация не зависимо от того где мы находимся в данный момент на другом листе данной книги, в другой книге или Excel, вообще свернут. -------------------- Запчасти на иномарки www.avtograd55.ru. Если есть время - зайдите и посоветуйте что исправить и что доработать. |
|||
|
||||
| Staruha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1292 Регистрация: 1.2.2004 Где: Казань Репутация: 13 Всего: 27 |
Так мы находимся на первом листе. В ячейку А1 вводим значение происходит событие Change.В первый лист надо код вставлять.
А значение можно ввести программно Книга.Лист1.Range("A1") -------------------- Возмездие настигнет |
|||
|
||||
| likhobory |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 466 Регистрация: 17.5.2005 Где: Москва Репутация: 10 Всего: 20 |
метод объекта Range, возвращает диапазон ячеек, соотв. определенному типу, в данном случае - последнюю ячейку |
|||
|
||||
| slang |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 455 Регистрация: 7.3.2004 Репутация: нет Всего: 0 |
Все-таки немного не та строчка
Это событие не происходит при изменении значения в ячейке, если это значение поступает от сторонней программы через DDE Какое событие происходит в моем случае? Выяснил:
Это сообщение отредактировал(а) slang - 14.7.2005, 12:35 -------------------- Запчасти на иномарки www.avtograd55.ru. Если есть время - зайдите и посоветуйте что исправить и что доработать. |
||||
|
|||||
| Staruha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1292 Регистрация: 1.2.2004 Где: Казань Репутация: 13 Всего: 27 |
likhobory
А что этот метод охватывает только указанный столбец или диапазон до первого пустого столбца? -------------------- Возмездие настигнет |
|||
|
||||
| likhobory |
|
||||||||||||||||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 466 Регистрация: 17.5.2005 Где: Москва Репутация: 10 Всего: 20 |
определяем последнюю заполненную ячейку на ЛИСТЕ
LastCell = Activesheet.Range("A1").SpecialCells(xlLastCell) ------------------------------- думаю, есть смысл выложить несколько примеров из закромов; выражаю очередную признательность автору и надеюсь, что он не будет в обиде Авторы: -pashulka- (www.pashulka.nm.ru) - примеры 1-3,5-7 ?????????? - пример 4 ------------------------------- Вариант I. Для поиска последней заполненной ячейки можно воспользоваться методом SpecialCells и специальной константой xlLastCell Пример определения адреса последней заполненной ячейки, а также номера её строки и столбца.
Вариант II. Для поиска последней заполненной ячейки можно воспользоваться свойством UsedRange об'екта Worksheet Пример определения номера строки и столбца последней заполненной ячейки.
Комментарий : Так как свойство UsedRange принадлежит об'екту Worksheet, то использование ссылки на этот об'ект обязательно. Примечание : Все вышеприведённые примеры определяют последнюю ячейку в активном рабочем листе. Естественно, что мы можем ссылаться и на другие рабочие листы, используя при этом их имя, номер (индекс) или имя в среде VBA () Вариант III. Для определения количества заполненных ячеек в смежном диапазоне можно воспользоваться свойством CurrentRegion об'екта Range Пример определения количества строк и столбцов в смежном с ячейкой диапазоне, а также адрес этого диапазона.
Примечание : Особенностью свойства CurrentRegion является то, что он возвращает весь диапазон, но только состоящий из смежных ячеек. Комментарий : важно При определении последней заполненной строки, этот вариант будет корректно работать только при условии, что данные в строке и столбце начинаются с самой первой ячейки и не содержат пустых строк и столбцов. Вариант IV. Для определения номера последней заполненной ячейки в конкретной строке или столбце, а также для определения последней заполненной ячейки можно использовать функцию Find Пример определения номера последней заполненной ячейки в конкретной строке и столбце.
Пример определения номера строки и столбца последней заполненной ячейки.
Примечание : Вышеупомянутый синтаксис может вызвать ошибку, если указанный диапазон не содержат данных. Для того, чтобы этого избежать во всех примерах использован "режим отложенной ошибки" On Error Resume Next Однако можно использовать и другой синтаксис, например :
Вариант V. Для определения номера последней заполненной ячейки в конкретной строке или столбце можно воспользоваться свойством End об'екта Range и специальными константами xlToRight, xlDown Пример определения номера последней заполненной ячейки в конкретной строке и столбце.
Комментарий : важно Этот вариант будет корректно работать только при условии, что данные в строке, или столбце начинаются с самой первой ячейки и не содержат пустых ячеек. Вариант VI. Тот же самый способ, что и предыдущий, но с небольшими изменениями. Пример определения номера последней заполненной ячейки в конкретной строке и столбце.
В зависимости от Вашего кода можно применять различные подварианты, например:
Комментарий : важно Этот вариант будет работать при любых условиях. Вариант VII. Некоторые люди используют для определения последней заполненной строки в определённом столбце стандартную функцию рабочего листа СЧЁТЗ Пример определения номера последней заполненной ячейки в конкретном столбце.
Комментарий : важно Так как функция СЧЁТЗ считает количество непустых ячеек, то этот вариант будет корректно работать только при условии, что данные в столбце начинаются с самой первой ячейки и не содержат пустых ячеек. Важно : Если быть абсолютно точным, то в первых четырёх случаях мы определяем последнюю ячейку, которая вовсе не обязательно должна быть заполнена, так эта ячейка расположена на пересечении последней строки и последнего столбца. Это сообщение отредактировал(а) likhobory - 14.7.2005, 19:55 |
||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||
| Staruha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1292 Регистрация: 1.2.2004 Где: Казань Репутация: 13 Всего: 27 |
Да уж.Поэтому применяю CurrentRegion.Классная вещь просто тащусь -------------------- Возмездие настигнет |
|||
|
||||
![]()
|
| Правила форума "Программирование, связанное с MS Office" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |