Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Назначение методов свойств или объектов в строчке кода. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Назначение методов свойств или объектов в строчке кода. (Макросы/Sub)
Назначение методов свойств или объектов в строчке кода.
Юрий_Нд Дата: Вторник, 11.09.2018, 08:24 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 441
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
Доброго дня всем.
Прошу помочь разобраться, что конкретно делает каждый метод свойство или объект в командной строчке кода VBA.
[vba]
Код
Cells(Rows.Count, "R").End(xlUp).Row
[/vba]
То, что делает эта строчка вообще - понятно.
Но как из всех "кирпичиков", которые составляют эту строчку получается то, что она делает, а также назначение каждого "кирпичика" - непонятно.
Также непонятно назначение двух "кирпичиков": "Rows.Count"
Спасибо _______________ Юрий.
что конкретно делает каждый метод свойство или объект в командной строчке кода VBA.


Сообщение отредактировал Юрий_Нд - Вторник, 11.09.2018, 08:27
 
Ответить
СообщениеДоброго дня всем.
Прошу помочь разобраться, что конкретно делает каждый метод свойство или объект в командной строчке кода VBA.
[vba]
Код
Cells(Rows.Count, "R").End(xlUp).Row
[/vba]
То, что делает эта строчка вообще - понятно.
Но как из всех "кирпичиков", которые составляют эту строчку получается то, что она делает, а также назначение каждого "кирпичика" - непонятно.
Также непонятно назначение двух "кирпичиков": "Rows.Count"
Спасибо _______________ Юрий.
что конкретно делает каждый метод свойство или объект в командной строчке кода VBA.

Автор - Юрий_Нд
Дата добавления - 11.09.2018 в 08:24
_Boroda_ Дата: Вторник, 11.09.2018, 09:14 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация: 6478 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
1. Rows - строчки на листе
2. Rows.Count - Строчки.Количество - кол-во строк на листе. Для Excel 2007 и больше - 1048576
3. Cells(Rows.Count, "R") - ячейка R1048576
4. Cells(Rows.Count, "R").End(xlUp) - как бы находясь (не на самом деле, виртуально) в ячейке R1048576, нажимаем Контрл+СтрелкаВверх. Попадаем в первую снизу заполненную ячейку (или, если в столбце R есть умная или сводная таблицы, то в последнюю строку этой таблицы, или, если столбец R не заполнен вообще, то в ячейку R1)
5. Cells(Rows.Count, "R").End(xlUp).Row - п.4.Строка - номер этой строки


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение1. Rows - строчки на листе
2. Rows.Count - Строчки.Количество - кол-во строк на листе. Для Excel 2007 и больше - 1048576
3. Cells(Rows.Count, "R") - ячейка R1048576
4. Cells(Rows.Count, "R").End(xlUp) - как бы находясь (не на самом деле, виртуально) в ячейке R1048576, нажимаем Контрл+СтрелкаВверх. Попадаем в первую снизу заполненную ячейку (или, если в столбце R есть умная или сводная таблицы, то в последнюю строку этой таблицы, или, если столбец R не заполнен вообще, то в ячейку R1)
5. Cells(Rows.Count, "R").End(xlUp).Row - п.4.Строка - номер этой строки

Автор - _Boroda_
Дата добавления - 11.09.2018 в 09:14
Юрий_Нд Дата: Среда, 12.09.2018, 05:05 | Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 441
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
Борода, Большое спасибо за подсказку и за науку. Это именно то, что я и просил. Если Вы не возражаете, обращаюсь ко Всем и прошу также детально расшифровать следующую команду:

[vba]
Код
Set FoundTable = Columns("A:N").Find(Cells(j, "R"), , xlValues, xlWhole)
[/vba]
Насколько я понимаю,
1. Columns("A:N")
- в колонках от A до N;
2. Find(Cells(j, "R")
- найти (обязательный параметр) значение, содержащееся в ячейке с адресом Rj.
3. , ,
- ... прошу продолжить ...
4. xlValues,
- ... прошу продолжить ...
5. xlWhole
- ... прошу продолжить ...
6. Columns("A:N").Find(Cells(j, "R"), , xlValues, xlWhole)
- (чисто фантазирую) в результате выполнения этой команды, мы находим адрес ячейки, содержащей значение Find(Cells(j, "R").
7. Set FoundTable =
- найденный адрес ячейки по команде Columns("A:N").Find(Cells(j, "R"), , xlValues, xlWhole) присваивается переменной FoundTable.

Спасибо ____________ Юрий.
п.с. Еще бы хотелось найти ссылку поддержки Microsoft, где дается определение всем xlValues, xlWhole и другим xl... .


Сообщение отредактировал Юрий_Нд - Среда, 12.09.2018, 09:06
 
Ответить
СообщениеБорода, Большое спасибо за подсказку и за науку. Это именно то, что я и просил. Если Вы не возражаете, обращаюсь ко Всем и прошу также детально расшифровать следующую команду:

[vba]
Код
Set FoundTable = Columns("A:N").Find(Cells(j, "R"), , xlValues, xlWhole)
[/vba]
Насколько я понимаю,
1. Columns("A:N")
- в колонках от A до N;
2. Find(Cells(j, "R")
- найти (обязательный параметр) значение, содержащееся в ячейке с адресом Rj.
3. , ,
- ... прошу продолжить ...
4. xlValues,
- ... прошу продолжить ...
5. xlWhole
- ... прошу продолжить ...
6. Columns("A:N").Find(Cells(j, "R"), , xlValues, xlWhole)
- (чисто фантазирую) в результате выполнения этой команды, мы находим адрес ячейки, содержащей значение Find(Cells(j, "R").
7. Set FoundTable =
- найденный адрес ячейки по команде Columns("A:N").Find(Cells(j, "R"), , xlValues, xlWhole) присваивается переменной FoundTable.

Спасибо ____________ Юрий.
п.с. Еще бы хотелось найти ссылку поддержки Microsoft, где дается определение всем xlValues, xlWhole и другим xl... .

Автор - Юрий_Нд
Дата добавления - 12.09.2018 в 05:05
_Boroda_ Дата: Среда, 12.09.2018, 09:08 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация: 6478 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
3, 4, 5 - запишите макрорекодером процесс поиска через Контрл F, попробуйте записать поиск с разными параметрами и все сразу понятно станет
6. как раз этот самый поиск и есть. Результатом является не имя ячейки, а сама найденная ячейка
7. не имя ячейки присваивается, а сама ячейка. То есть FoundTable - это теперь не просто переменная, а именно ячейка и работать с ней нужно как с ячейкой, как если бы Вы работали, например, с Range("A1"). Где-то выше по идее должно быть написано [vba]
Код
Dim FoundTable As Range
[/vba] - как раз речь о том, что FoundTable - переменная типа Range


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение3, 4, 5 - запишите макрорекодером процесс поиска через Контрл F, попробуйте записать поиск с разными параметрами и все сразу понятно станет
6. как раз этот самый поиск и есть. Результатом является не имя ячейки, а сама найденная ячейка
7. не имя ячейки присваивается, а сама ячейка. То есть FoundTable - это теперь не просто переменная, а именно ячейка и работать с ней нужно как с ячейкой, как если бы Вы работали, например, с Range("A1"). Где-то выше по идее должно быть написано [vba]
Код
Dim FoundTable As Range
[/vba] - как раз речь о том, что FoundTable - переменная типа Range

Автор - _Boroda_
Дата добавления - 12.09.2018 в 09:08
StoTisteg Дата: Среда, 12.09.2018, 10:32 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
_Boroda_, у меня тут есть идея переименовать эту тему во что-то вроде "Что значит эта строка кода?" и закрепить. Ибо тема для новичков полезная и потенциально безразмерная...


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщение_Boroda_, у меня тут есть идея переименовать эту тему во что-то вроде "Что значит эта строка кода?" и закрепить. Ибо тема для новичков полезная и потенциально безразмерная...

Автор - StoTisteg
Дата добавления - 12.09.2018 в 10:32
Юрий_Нд Дата: Четверг, 13.09.2018, 07:50 | Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 441
Репутация: 19 ±
Замечаний: 0% ±

Excel 2013
И всё-таки, прошу прощения у Бороды, можно ли где-нибудь
Цитата Юрий_Нд, 12.09.2018 в 05:05, в сообщении № 3 ()
найти ссылку поддержки Microsoft, где дается определение всем xlValues, xlWhole и другим xl... .
 
Ответить
СообщениеИ всё-таки, прошу прощения у Бороды, можно ли где-нибудь
Цитата Юрий_Нд, 12.09.2018 в 05:05, в сообщении № 3 ()
найти ссылку поддержки Microsoft, где дается определение всем xlValues, xlWhole и другим xl... .

Автор - Юрий_Нд
Дата добавления - 13.09.2018 в 07:50
Pelena Дата: Четверг, 13.09.2018, 08:48 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 19163
Репутация: 4412 ±
Замечаний: ±

Excel 365 & Mac Excel
Объектная модель Excel
https://docs.microsoft.com/ru-ru....t-model
Конкретно метод Find
https://docs.microsoft.com/ru-ru/office/vba/api/excel.range.find

Можно прямо в коде выделить свойство или метод и нажать клавишу F1


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеОбъектная модель Excel
https://docs.microsoft.com/ru-ru....t-model
Конкретно метод Find
https://docs.microsoft.com/ru-ru/office/vba/api/excel.range.find

Можно прямо в коде выделить свойство или метод и нажать клавишу F1

Автор - Pelena
Дата добавления - 13.09.2018 в 08:48
китин Дата: Четверг, 13.09.2018, 08:49 | Сообщение № 8
Группа: Модераторы
Ранг: Экселист
Сообщений: 7013
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
Конкретно метод Find

или ТУТ
[offtop]говорила мне мама: учи не только русский матерный, но и английский тоже :D


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщение
Конкретно метод Find

или ТУТ
[offtop]говорила мне мама: учи не только русский матерный, но и английский тоже :D

Автор - китин
Дата добавления - 13.09.2018 в 08:49
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Назначение методов свойств или объектов в строчке кода. (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!