Нет подсказок в vba excel

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

Доброго времени суток, Планетяне!

Примеры команд:

    •

Exit Sub/Function

(решено)
    • LBound/UBound
    • ActiveSheet. (после точки нет подсказок)

Позднее связывание не интересует, т.к. там нет подсказок из-за того, что не видна библиотека и это вроде «удалённой» с ней работы.

Изменено: Jack Famous06.09.2019 11:05:50

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Alemox

Пользователь

Сообщений: 2183
Регистрация: 25.02.2013

Да сам такое не раз встречал. Есть только догадки, но сам тоже не знаю причины.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

Alemox, по идее нет подсказки — нет в библиотеке — команда супервстроенная  :D

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Alemox

Пользователь

Сообщений: 2183
Регистрация: 25.02.2013

У меня 2010 офис и все подобные функции описаны в справке, хотя они и не всплывают при быстром наборе.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Hellmaster

Пользователь

Сообщений: 208
Регистрация: 26.03.2019

#5

05.09.2019 17:31:26

Возможно, дело в объекте, который неизвестен на момент редактирования и компиляции типа. Допустим, я пишу

Код
Set v = CreateObject("Excel.Application")

Дальше мне нужно выделить лист и я пишу

Код
v.Sheets("Лист1").select

Свойство Excel.Application.Sheets.Item(индекс) описано как Object, т. е. COM-объект неизвестного на момент редактирования и компиляции типа. Откуда бы среде разработки знать, какие у него могут быть или не быть свойства и методы?

(с)

 

Alemox

Пользователь

Сообщений: 2183
Регистрация: 25.02.2013

По поводу раннего и позднего связывания тут всё понятно почему. Опять же, если раннее связывание, то подсказки всплывают.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#7

06.09.2019 08:27:13

Цитата
Alemox: Есть только догадки

какие?  :)

Цитата
Hellmaster: Возможно, дело в объекте

это, конечно отвечает на вопрос темы, но интересны в первую очередь команды, приведённые в качестве примера в стартовом сообщении. Про позднее связывание всё ясно и тут никаких сюрпризов нет.

Изменено: Jack Famous06.09.2019 08:29:47

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Дмитрий(The_Prist) Щербаков

Пользователь

Сообщений: 14182
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

#8

06.09.2019 09:06:45

Цитата
Jack Famous написал:
интересны в первую очередь команды, приведённые в качестве примера
Цитата
Jack Famous написал:
Exit Sub/Function

а какую подсказку Вы хотите здесь увидеть? Что должно подсказываться? Exit — это глобальный оператор выхода без аргументов. Его правильное применение определяется только на уровне компиляции проекта. Например, если внутри тела Function написать Exit Sub — то при запуске функции VBE скажет, что так нельзя. Но на уровне написания этого Exit после пробела подсказывать не будет, т.к. к этому оператору не привязаны напрямую никакие ключевые аргументы или операторы(как это сделано, скажем, с ключевым As при объявлении переменных).

Цитата
Jack Famous написал:
LBound/UBound

точного утверждения пока не нашел, но предположу, что эти функции относятся к некоей глобальной реализации, которая не может быть однозначно определена(что-то вроде типа Object). Или все проще — они тупо не ассоциированы с описанием :)

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

Дмитрий(The_Prist) Щербаков, спасибо за развёрнутый ответ  :idea:
Про Exit я думал так: когда меняю Sub на Function (или наоборот) в названии, то концевик меняется сам, так неужели при вводе «ex» или хотя бы «exit» нельзя подхватить тип текущей процедуры  :)
А насчёт L/UBound, то просто постоянно попадаюсь на том, что жмякаю напрасно «Ctrl+Space» для появления подсказки. Привычка — вторая натура  :D

Изменено: Jack Famous06.09.2019 09:17:49

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

БМВ

Модератор

Сообщений: 21385
Регистрация: 28.12.2016

Excel 2013, 2016

#10

06.09.2019 09:44:09

Цитата
Jack Famous написал:
Привычка — вторая натура  

Лень!  :D

Цитата
Jack Famous написал:
при вводе «ex» или хотя бы «exit» нельзя подхватить

Если пишущий не помнит что пишет, то … .  :D

Если честно, то любые автоподстановки могут такую злую шутку сыграть… Если не ошибаюсь, то есть раскладка клавиатуры US-INT (Unitedstate International) , При работе с Linux и Cirix был более корректный её проброс. попытался её использовать на рабочем компе, а там есть особенность, при вводе кавычек , первая не появляется пока не появится вторая. Может быть для машинописи это и удобно, но кодить было невозможно, особенно когда была потребность нечетного числа кавычек в строке.  Пока не понял в чем причина, грешил на клаву,

По вопросам из тем форума, личку не читаю.

 

Дмитрий(The_Prist) Щербаков

Пользователь

Сообщений: 14182
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

#11

06.09.2019 09:46:06

Цитата
Jack Famous написал:
Про Exit я думал так

дело в том, что Exit может быть использован не только с Sub и Function. Есть ведь и циклы Do и For, например, где для прерывания цикла так же используется Exit. Поэтому ассоциировать напрямую с чем-то конкретным VBA этот оператор не может без компиляции проекта, чтобы определить все вхождения операторов. Оператор End работает так же, но применяется реже.
Примерно тоже самое, кстати, и с объявлениями. Вы же можете объявить переменную с типом «блаблабла»? Да. Но то, что такого типа нет и не было VBA определит только после компиляции. Но на уровне написания он ничего не скажет про несуществующий тип.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#12

06.09.2019 09:49:47

БМВ, лень — двигатель прогресса  ;)

Цитата
Дмитрий(The_Prist) Щербаков: Exit может быть использован не только с Sub и Function.

точно. Не связал с этим — тогда вопрос по нему отпадает, но вот что с Bound’ами?…

Изменено: Jack Famous06.09.2019 09:50:10

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

Новый прикол:

для такого «вшитого» объекта, как ActiveSheet после точки также нет никаких вариантов…

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Alemox

Пользователь

Сообщений: 2183
Регистрация: 25.02.2013

#14

06.09.2019 11:18:24

Мне кажется что с боундами и прочими тут замешаны какие-то коллекции. Ну например если пишешь Sheets. то после точки вылазит список, если пишешь Sheets(1). то после точки уже ничего не вылазит. Опять же UBound может быть необязательно у объявленного массива, например у SPLIT

Код
Sub kckmckcmd()
Dim i&, Txt$
Txt = "q w e r t y"
For i = 0 To UBound(Split(Txt, , , vbTextCompare))
    Debug.Print Split(Txt, , , vbTextCompare)(i)
Next
End Sub

Ну, а может у них есть внутренние теги, по которым и формируется этот выпадающий список. И при написании некоторых функций их забыли вложить  :) Вот и остались в подвешенном состоянии, не знали в какой момент нужно их появление. Опять же эти функции измеряют размерность массива. А до компиляции ещё неизвестно есть у тебя этот массив в коде или нет. Наличие массива можно определить только после компиляции, тут даже объявление переменных не поможет. В общем загадка.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#15

06.09.2019 11:22:07

Цитата
Alemox: если пишешь Sheets

это вообще интересный персонаж. Его ещё нельзя присвоить типом переменной (только As WorkSheet), хотя обычно в коде полностью заменяет WorkSheet

Изменено: Jack Famous06.09.2019 11:22:17

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Alemox

Пользователь

Сообщений: 2183
Регистрация: 25.02.2013

Я вообще Sheets не использую, это представляет из себя коллекцию рабочих листов. Только Worksheet применяю.

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#17

06.09.2019 11:44:29

Цитата
Alemox: Sheets не использую, это представляет из себя коллекцию рабочих листов

а я думал, что листы диаграмм не входят в WorkSheets, в отличие от Sheets, то есть последняя больше. Тоже стараюсь не использовать.

Изменено: Jack Famous06.09.2019 12:30:27

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Дмитрий(The_Prist) Щербаков

Пользователь

Сообщений: 14182
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

#18

06.09.2019 13:34:43

Цитата
Alemox написал:
это представляет из себя коллекцию рабочих листов

ну вот как раз нет. Коллекция Sheets это коллекция ЛЮБЫХ листов в книге, включая листы диаграмм, листы макросов, рабочие листы. И именно поэтому после ввода точки нет подсказок, т.к. невозможно заранее определить к какому типу листа коллекции обращаемся.
А вот Worksheets это коллекция исключительно РАБОЧИХ листов и все методы и свойства там определены заранее и других быть не может.
Отсюда есть важны вывод: если хотите обратиться ко всем листам книги для сбора именно данных — имеет смысл всегда обращаться именно к Worksheets, чтобы не получить ошибку при обращении к листу диаграммы например, для получения данных ячеек.
Собственно, ActiveSheet несет в себе ту же засаду — это активный лист любого типа, а значит показать все доступные методы этого листа заранее нельзя.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Jack Famous

Пользователь

Сообщений: 10852
Регистрация: 07.11.2014

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

Дмитрий(The_Prist) Щербаков, и снова выручаете)) Спасибо!

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Alemox

Пользователь

Сообщений: 2183
Регистрация: 25.02.2013

#20

06.09.2019 15:07:57

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

Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.

Содержание

  1. Настраиваем свой редактор кода VBE
  2. Вкладка Editor
  3. Параметр Auto Syntax Check
  4. Параметр Require Variable Declaration
  5. Параметр Auto List Members
  6. Параметр Auto Quick Info
  7. Параметр Auto Data Tips
  8. Параметр Auto Indent
  9. Параметр Drag-and-Drop Text Editing
  10. Параметр Default to Full Module View
  11. Параметр Procrdure Separator
  12. Вкладка General
  13. Параметр Error Trapping
  14. Form Grid Settings
  15. Прочие настройки
  16. Другие вкладки
  17. Vba excel как включить подсказки
  18. Настройка среды Visual Basic Editor
  19. Вкладка Editor
  20. Вкладка Editor Format
  21. Вкладка General
  22. Вкладка Docking

Настраиваем свой редактор кода VBE

Вкладка Editor

Можете сразу выставить такие настройки, ниже описывается подробно каждая опция. Основное внимание обращаем на первые 2 параметра, остальное можно оставить по умолчанию.

Параметр Auto Syntax Check

Однозначно отключаем! Параметр отвечает за автоматическую проверку синтаксиса. Во включенном состоянии будет постоянно появляться окно с информацией о синтаксической ошибке. Например, пишешь код, захотел скопировать название переменно или функции из строки выше, а компилятор выводит диалоговое окно, которое необходимо закрыть.

Поэтому смело отключайте. В случае синтаксической ошибки код будет подсвечиваться красным, пропустить невозможно.

Параметр Require Variable Declaration

Я сторонник обязательного декларирования переменных и указания их типов. Во включенном состоянии редактор кода будет включать оператор Option Explicit в создаваемые модули/классы и формы. Это означает, что перед тем как использовать переменную вам потребуется ее явно объявить.

Если явно не объявлять переменные, то они имеют тип Variant (используют больше памяти и работают несколько дольше). В целом явное декларирование переменных — хорошая привычка, которую стоит выработать. Это помогает избежать многих проблем при написании кода и его сопровождения.

Параметр Auto List Members

Этот параметр отвечает за автоматический вывод списка объектов. Когда мы пишем код и ставим точку после объекта, то редактор выводит список доступных свойств и методов у данного объекта. Однозначно включайте эту опцию, она сэкономит время на наборе кода и также подскажет правильный синтаксис если вы его забыли.

Проверить его в действие можно введя, например, текст «Application.»

Вы сможете стрелками вверх вниз выбирать нужный объект и клавишей Tab вставлять в код без ошибок.

Параметр Auto Quick Info

Тоже нужный параметр, который позволит писать код быстрее. Во включенном состоянии VBE будет отображать информацию об аргументах функций, после вставки открывающий скобки «(«.

Параметр Auto Data Tips

Включайте этот параметр он будет отображать значения свойств и методов при наведении на них в режиме отладки кода. Вот так:

Параметр Auto Indent

Параметр отвечает за автоматический отступ текста. Во включенном состоянии при переходе на новую строку будет использоваться тот же отступ, что и для предыдущей строки. Да, конечно не Visual Studio с автоматическим отступом в зависимости от вложенности, но тоже какой никакой плюс.

Да, отступы естественно работают только в том случае если вы используете Tab, а не пробелы. Значение Tab width — ширина одного отступа. Если работаете над кодом совместно, то выставите одинаковое значение на всех компьютерах, чтобы код был единообразным.

Параметр Drag-and-Drop Text Editing

Если вам удобно переносить текст перетаскиванием, то нужно активировать эту опцию. Я обычно пользуюсь сочетанием клавиш копирования и вставки.

Параметр Default to Full Module View

Если отключить данный параметр то можно будет просматривать только одну процедуру или функцию, это не удобно, особенно когда проект большой. Поэтому не отключайте данную опцию.

Параметр Procrdure Separator

Тоже лучше оставить, чтобы визуально отслеживать начало и окончание функций и процедур.

Вкладка General

На данной вкладке стоит обратить внимание на параметр Error Trapping, остальные настройки можно оставить по умолчанию.

Параметр Error Trapping

Опция отвечает за перехват ошибок. В основном потребуется для продвинутых разработчиков, которые пишут не только модули, но также создают классы и пытаются писать в парадигме объектно-ориентированного программирования.

Долгое время не знал о существовании этой опции и старался избегать классов, так как отслеживать в них ошибки было настоящей проблемой. VBE не останавливался на конкретной строке кода в классе, а отображал ошибки только в модулях программы.

Если установить опцию Break in Class Module то в случае возникновения ошибки в классе, редактор остановится на этой строке кода и вы сможете быстрой найти причину ошибки.

Form Grid Settings

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

Прочие настройки

Show ToolTips — отображает подсказки меню редактора кода при наведении на них мышью. Отключать нет смысла.

Collapse Proj. Hides Windows — Скрывает окна проекта при сворачивании. Тоже оставляйте включенной.

Edit and Continue — уведомляет в случае если переменные теряют установленные значения. Особой полезности в этой функции не заметил, смысла включать нет.

Compile — Советую оставить включенной. Автоматическая компиляция кода происходит практически мгновенно. Проверено на проектах с несколькими десятками тысяч строк кода.

Другие вкладки

Про вкладку Editor Format поговорим в отдельной статье, когда будем разбирать создание своей темы редактора.

Вкладка Docking особого интереса не представляет так как отвечает за прикрепление панелей. Там лучше все оставлять по умолчанию.

Источник

Vba excel как включить подсказки

Добрый день, уважаемые участники проекта!

Хочу написать немного о себе и о пути, который привел меня на тренинг.

По специальности я инженер полупроводниковых и микроэлектронных приборов. В рамках получения в/о, изучал Fortran. Имею представления об алгоритме и блок-схемах.

Недавно работаю сотрудником контрольно-аналитического отдела в ЖКХ.

Наш отдел занимается анализом данных. Самостоятельно начал искать пути автоматизации анализа и этот путь привел к ВАМ на тренинг.

На базе бесплатных уроков мне удалось написать программку, которая позволила значительно увеличить производительность труда. Для меня и коллег это было как чудо.

Трудности автоматизации в Excel у меня связаны с отсутствием опыта, низким уровнем владения операторами VBA.

Мне нравятся «чудеса», которым нас учит Дмитрий Быстров. Они позволяют «лениться», учиться, удивляться и удивлять окружающих. Перекладывать тяжелый, рутинный труд по обработке данных на «плечи машин».

Огромная благодарность Дмитрию Быстрову за тренинг, за его отношение к занятиям, к участникам тренинга.

С уважением, участник тренинга, Игорь Фурман.

Около полугода я искала в книгах и интернете удобоваримые обучающие материалы по VBA в Excel, и все было не то, пока однажды совершенно случайно не нашла Ваш сайт! Великолепная подача материала, от простого к сложному, все очень последовательно и логично. Дмитрий, у вас настоящий педагогический талант!

Я просмотрела все бесплатные видеоуроки одним залпом, как сериал. И тут не осталось сомнений, что я нашла человека, который поможет мне разобраться с доселе недостижимой задачей — программированием в Excel. Так я без сомнений, в тот же день, оплатила курс по автоматизации в Excel и безумно этому рада! Обязательно буду заниматься дальше.

Я сейчас решила вернуться на предыдущее место работы, откуда ушла из-за больших объемов. Теперь-то я знаю, как решить эту проблему с помощью Excel, и смогу и работать в интересном месте, и не помирать на работе. Счастье! 🙂 🙂 🙂

Прослушал уже несколько Ваших мастер классов, большое Вам спасибо.

Вы очень понятно все объясняете. Теперь на работе я только и ищу как бы все автоматизировать )))

Сэкономил уже очень много времени используя макросы!

Еще раз большое Вам спасибо!

Буду ждать новые мастер классы!

Ну не знаю, не знаю. Всё намного сложнее, чем казалось раньше. Пока всё идет трудно. Вроде и алгоритм решения задачи понятен, но упираешься в какой нибудь затык, типа «не обратился к объекту» и можешь вечер просидеть над красной строкой и только назавтра где-нить на форуме помогут. Хорошее все-таки дело, эти форумы. По ним и на этот курс Дмитрия вышел. Дмитрию, конечно, отдельный респект. До него программирование казалось тайной за семью печатями. Сейчас взялся Гарбера читать. Дорогу осилит идущий.

Дмитрий, очень рада, что попала на ваш проект. Огромное вам спасибо: за то, что не разочаровали; за профессионализм; за правильно выстроенную методику подачи сложного материала; за советы и поддержку во время выполнения домашних заданий; за грамотную речь; за терпение.

Получила массу полезной информации. Всю преподнесённую информацию пока ещё не «переварила». Но, к счастью, есть ваши ценные видеоуроки.

Успехов вам в делах и в личной жизни! Благодарю.

Источник

Настройка среды Visual Basic Editor

В процессе программирования на VBA в Excel вы будете проводить много времени, работая в окнах VBE. Чтобы сделать редактор более удобным, вам понадобится настройка среды Visual Basic Editor под ваши предпочтения.[1] Находясь в Excel, перейдите в окно VBE, например, нажав Alt+F11. В строке меню окна VBE выберите команду Tools –> Options. Появится диалоговое окно Options (Параметры) с четырьмя вкладками: Editor (Редактор), Editor Format (Формат редактора), General (Общие) и Docking (Прикрепление). Кстати, не путайте это окно с диалоговым окном Параметры Excel программы Excel, которое можно открыть в Excel с помощью команды Файл –> Параметры Excel.

Рис. 1. Вкладка Editor диалогового окна VBE Options (Параметры)

Скачать заметку в формате Word или pdf

Вкладка Editor

На рис. 1 показаны параметры, доступ к которым можно получить, щелкнув на вкладке Editor (Редактор).

Настройка Auto Syntax Check (Автоматическая проверка синтаксиса) определяет, будет ли появляться диалоговое окно, когда VBE обнаружит синтаксическую ошибку в коде VBA. В этом диалоговом окне указывается тип допущенной ошибки. Если отменить установку этого флажка, то VBE выделит синтаксические ошибки, отобразив соответствующие фрагменты кода другим цветом, и вам не придется работать в диалоговых окнах, которые появляются на экране. Начинающим программистам рекомендуется установить эту опцию.

При установленном параметре Require Variable Declaration (Обязательное декларирование переменных) VBE вставляет в начале каждого нового модуля оператор Option Explicit. Если в модуле задан этот оператор, то вы должны явно определить каждую используемую в нем переменную. Таким образом, у вас вырабатывается хорошая привычка, которая, правда, требует дополнительных усилий. Если вы не объявляете переменные, все они имеют тип данных Variant; это достаточно гибко, но неэффективно с точки зрения использования аппаратных ресурсов и скорости выполнения кода. Имейте ввиду, что изменение параметра Require Variable Declaration влияет на новые модули, а не на существующие.

Если выбрана опция Auto List Members (Автоматическая вставка объектов), VBE предоставляет помощь при вводе кода VBA, отображая список элементов текущего объекта. К этим элементам относятся методы и свойства объекта, название которого вводится вручную. Данный параметр весьма полезен, поэтому его рекомендуется всегда активизировать. На рис. 2 показан пример использования этого параметра – VBE отображает список элементов объекта Application. Можете выбрать элемент из списка, чтобы не вводить его с помощью клавиатуры (в результате название элемента будет введено без ошибок).

Рис. 2. Автоматическая вставка объектов при ручном вводе кода

Если включен параметр Auto Quick Info (Отображать краткие сведения), VBE будет отображать информацию об аргументах функций, свойств и методов, названия которых вы вводите с клавиатуры. Рекомендуется всегда оставлять эту настройку включенной. На рис. 3 отображается синтаксис свойства Cells.

Рис. 3. Автоматическое отображение кратких сведений о синтаксисе

Если включен параметр Auto Data Tips, VBE отображает при отладке кода значение переменной, над которой находится указатель мыши. Рекомендуется всегда держать его включенным.

Настройка Auto Indent (Автоматический отступ) определяет, располагает ли автоматически VBE каждую новую строку программы с тем же отступом, который задан для предыдущей строки. Тем, кто использует отступы в программных кодах, советуем всегда обращаться к этому параметру. Вы можете также задать количество символов в отступе (по умолчанию указано значение 4). Используйте клавишу , а не пробел, чтобы задать отступ в коде. При использовании клавиши отступы получаются более «правильными». Кроме того, для отмены отступа в конкретной строке воспользуйтесь комбинацией клавиш . Она может применяться при выделении нескольких строк.

При выборе параметра Drag-and-Drop Text Editing (Включить редактирование перетаскиванием) вы можете копировать и перемещать текст, перетаскивая его с помощью мыши. Если вы любите такой метод работы, оставьте этот параметр включенным. Я никогда не пользуюсь функцией перетаскивания, так как предпочитаю для копирования и вставки обращаться к комбинациям клавиш.

Параметр Default to Full Module View (По умолчанию использовать полный режим просмотра) определяет принцип просмотра процедуры. Если он включен, процедуры в окне кода помещаются в одно окно с полосой прокрутки. Если же он отключен, то вы можете просмотреть в определенный момент только одну процедуру. Рекомендуем активизировать этот параметр.

Когда параметр Procedure Separator (Разделение процедур) включен, в конце каждой процедуры в окне кода отображаются специальные разделители. Если вам нравятся эти визуальные подсказки окончания процедуры, выставляйте данный флажок.

Вкладка Editor Format

Параметры на этой вкладке определяют формат шрифта кода в VBE и некоторые иные свойства (рис. 4).

Рис. 4. Вкладка Editor Format в диалоговом окне Options

Параметр Code Colors (Цвета кода). Предоставляет возможность выбрать цвета кода (текста и фона) и индикатора, который используется для выделения разных элементов программы VBA. Цвета, конечно, выбираются в зависимости от личных предпочтений. Вы можете согласиться с цветами, принятыми по умолчанию. Для разнообразия можете изменить эти настройки.

Параметр Font (Шрифт). Предоставляет возможность указать шрифт, используемый в модулях VBA. Наибольшая эффективность достигается при работе с моноширинным шрифтом (например, Courier New). В таком шрифте все символы имеют одинаковую ширину, что делает программу более удобной для восприятия и анализа, так как все символы одинаково выровнены; кроме того, хорошо видны пробелы между словами.

Список Size (Размер). Определяет размер шрифта кода модулей VBA. Эта настройка зависит от личных предпочтений, которые, в свою очередь, определяются разрешением монитора и вашим зрением. По умолчанию размер задан равным 10.

Параметр Margin Indicator Ваг (Полоса индикатора границы). Отображает вертикальную полосу вдоль левой границы окна кода, на которой высвечиваются всевозможные индикаторы. Его необходимо выставить; в противном случае вы не увидите полезные графические извещения при отладке кода.

Вкладка General

На рис. 5 показаны параметры, доступные на вкладке General (Общие) диалогового окна Options.

Рис. 5. Вкладка General в диалоговом окне Options

Раздел Form Grid Settings (Параметры сетки формы). Находящиеся в этом разделе параметры предназначены для настройки пользовательских диалоговых окон; с их помощью определяются параметры сетки, которая облегчает позиционирование элементов управления в окне UserForm.

Флажок Show ToolTips (Показать подсказки). Определяет поведение кнопок панели инструментов. Рекомендуется всегда его устанавливать.

Флажок Collapse Proj. Hides Windows (Скрывать окна при сворачивании проектов). Установка этого флажка приведет к автоматическому закрытию окон в случае сворачивания проекта в окне Project. Рекомендуется установить этот флажок.

Раздел Edit and Continue (Редактировать и продолжать). Содержит единственный флажок, который может оказаться полезным в процессе отладки. В случае установки этого флажка VBA отображает сообщение, если переменные теряют присвоенные им значения в результате появления каких-либо проблем.

Раздел Error Trapping (Перехват ошибок). Находящиеся в этом разделе параметры определяют, что происходит при возникновении ошибки. Если вы создаете процедуры обработки ошибок, убедитесь в том, что установлен переключатель Break on Unhandled Errors (Остановка при возникновении неисправимой ошибки). При заданном параметре Break on All Errors (Остановка при возникновении любой ошибки) процедуры обработки ошибок игнорируются (вряд ли это нужно).

Раздел Compile (Компиляция). Находящиеся в этом разделе два параметра управляют процессом компиляции кода. Рекомендуется установить оба этих параметра. На современных компьютерах компиляция кода происходит практически мгновенно, если его размеры сравнительно невелики.

Вкладка Docking

На рис. 6 показана вкладка Docking (Прикрепление) диалогового окна Options. Ее параметры определяют поведение нескольких окон редактора VBE. На вкладке отображаются окна, которые могут быть прикреплены. Когда окно прикреплено, оно фиксируется по отношению к одной из границ окна VBE. В результате намного легче найти вспомогательное окно, так как оно отображается в строго определенной области. Если вы отключите все параметры прикрепления, то окна перемешаются между собой, а это усложнит работу. Как правило, идеальным выбором будут настройки по умолчанию.

Рис. 6. Вкладка Docking диалогового окна Options

Для прикрепления окна просто перетащите его в новое место. Например, вам может понадобиться присоединить окно Project Explorer к левой границе окна. Захватите его за заголовок и переместите влево. Отпустите кнопку мыши в момент, когда окно прилипнет к левому краю экрана. Прикрепление окна в VBE всегда было основной проблемой при настройке рабочей среды, однако после многочисленных попыток вам, будем надеяться, все же удастся решить эту задачу.

[1] По материалам книги Джон Уокенбах. Excel 2010. Профессиональное программирование на VBA. – М: Диалектика, 2013. – С. 177–183.

Источник

Материал подан в понятной и доступной форме, даже для начинающих

Хочу поделиться своими впечатлениями о вебинаре 26.06.2018 «Автоматизация заполнения таблиц».

Урок прошел на высоком профессиональном уровне, как и все остальные, в которых я принимал участие. Материал подан в понятной и доступной форме, даже для начинающих.

Все примеры разобраны до мелочей, что заставляет думать об использовании данных программ или написании новых в дальнейшем. Участие в таких уроках очень полезно, особенно новичкам, так как очное присутствие не заменит никакая запись.

Хочу пожелать Дмитрию и его команде продолжать в том же духе, хотя понимаю, что это очень дорогое и хлопотное занятие. А мы всегда поддержим своим вниманием и участием.

Всем остальным хочу пожелать, чтобы через нашу информацию становилось больше участников разных проектов этой команды.

Большое СПАСИБО всем!!!

УРА! Справочник! :)

Добрый день, Дмитрий!

Спасибо, за проведенный онлайн мастер-класс «Видео-справочник по функциям VBA».

Как всегда, доступное изложение материала по принципу от простого к сложному с практическими примерами.

Ранее приобретала тренинги и мастер-классы в записи, поэтому с большинством функций уже была знакома. И всё же, считаю данный мастер класс полезным. Он позволил повторить изученное ранее, систематизировать информацию о функциях (УРА! Справочник!) и, конечно, узнать новое.

Кому будет интересен данный мастер-класс? Думаю, ВСЕМ, кто пытается автоматизировать свои рутинные задачи средствами VBA: новички найдут в нем не только подробное объяснение всех функций, но и увидят, в том числе, возможности применения условий, циклов, массивов; а более продвинутые пользователи получат неоценимый справочник по всем функциям с практическими примерами, что значительно сэкономит время на поиск информации в справочной системе при написании собственных программ.

Елена Гудым о мастер-классе

Всем, кому лень делать рутинную работу, советую прослушать данный мастер-класс!

Хочу оставить свой отзыв о вчерашнем мастер-классе от Дмитрия Быстрова, который состоялся 30 июля 2013г.

Для меня это был первый вебинар в жизни. И, думаю, как и всё первое в жизни он запомнится мне навсегда!

Очень понравилась подача материала — от простого к сложному, да и Дмитрий молодец (объясняет на простом «человеческом» языке).

В общем всем, кому лень делать рутинную работу, советую прослушать данный мастер-класс! Лично для меня эта тема была ОЧЕНЬ актуальна.

P.S. всем, кто осмелиться прослушать данный мастер-класс рекомендую просмотреть бесплатные уроки Дмитрия, очень поможет.

P.S.S. Дмитрий Вам спасибо за науку и терпение, которое Вы вчера проявили по отношению к нам! )))))

Дмитрий Чибрин о мастер-классе

Я смогла структурировать для себя цели оптимизации своей работы и понять конкретно, чего я хочу!

Добрый день!

Сожалею, что не смогла написать свои впечатления сразу после вебинара, но надеюсь сейчас мой комментарий будет не менее полезным для тех, кто не присутствовал на вебинаре.

Во-первых, вебинар полностью оправдал мои ожидания. Дмитрий раскрыл полностью озвученные заранее вопросы и при этом как и в бесплатных уроках провел их на высшем уровне.

Во-вторых, Дмитрий с вниманием выслушывал все вопросы и отвечал на них, даже если они выходили за рамки представленных примеров.

В-третьих, что я считаю самым важным, результатом вебинара — я смогла структурировать для себя цели оптимизации своей работы и понять конкретно, чего я хочу!

Правда, для этого знаний еще не достаточно, но есть к чему стремиться.

С нетерпением жду от Дмитрия новых уроков и вебинаров.

Теперь уже постоянный слушатель :-)

Анна Васильева о мастер-классе

Файл весит в 5,5 раз меньше, открывается легко (не пересчитываются формулы), работает всё быстро!

Ещё раз спасибо! Прошло немного времени после занятий и вот уже есть первые результаты: используя полученные знания на тренинге, работаю над своим большим файлом. В старом виде писала огромное множество формул для расчётов и всяческих проверок, плюс руками надо было протягивать формулы и глазами смотреть в ячейки проверок (в общем пользователь этого файла не смогла аккуратно «вести» его). Именно из-за этого файла в совокупности с возможностями пользовательницы я и решилась на изучение макросов (надоело за неё работать по понедельникам). Теперь все расчёты и проверки я написала в VBA, благодаря Вам. В результате файл весит в 5,5 раз меньше, открывается легко (не пересчитываются формулы), работает всё быстро! Я просто в восторге!!! Осталось немного доработать и отдать в пользование человеку, который с экселем не очень дружит, но теперь и не надо. Думаю, она тоже будет довольна.

А потом я и своих тяжеловесов «причешу» потихоньку.

Всем, кто только принимает решение о прохождении этого тренинга — конечно же ДА, пройти обязательно!!!

Спасибо ещё раз, Дмитрий!

Татьяна Богославская о практическом тренинге

Часто задаваемые вопросы

#1  Как включить вкладку «Разработчик» в Excel 2007?

Для включения в Excel 2007 вкладки «Разработчик» на ленте необходимо:

1. Нажать кнопку «Office» — круглая кнопка в левом верхнем углу Excel

2. Внизу появившегося окна выбрать «Параметры Excel»

3. В разделе «Основные» в группе «Основные параметры работы c Excel» установить флажок «Показывать вкладку «Разработчик» на ленте».

4. Нажать ОК

#2  Как включить вкладку «Разработчик» в Excel 2010 и 2013?

В Excel 2010 включение вкладки «Разработчик» на ленте происходит немного иначе, нежели в Excel 2007. Для этого необходимо:

1. Выбрать вкладку «Файл» в левом верхнем углу окна Excel

2. Далее внизу слева выбрать пункт «Параметры» — откроется окно «Параметры Excel»

3. В левой части этого окна выбираем пункт «Настройка ленты»

4. В правой части окна в списке пунктов ленты необходимо установить флажок в пункте «Разработчик»:

В Excel 2013 включение происходит так же, как и в Excel 2010, лишь немного отличается цвет кнопок и пункт называется «Настроить ленту», а не «Настройка ленты».

#3  Как включить вкладку «Разработчик» в Excel 2016?

В Excel 2016 включение вкладки «Разработчик» на ленте происходит почти так же, как в Excel 2013, только немного визуально отличается интерфейс. Для этого необходимо:

1. Выбрать вкладку «Файл» в левом верхнем углу окна Excel

2. Далее внизу слева выбрать пункт «Параметры» — откроется окно «Параметры Excel»

3. В левой части этого окна выбираем пункт «Настроить ленту»

4. В правой части окна в списке пунктов ленты необходимо установить флажок в пункте «Разработчик»:

#4  Как включить режим относительных ссылок при записи макроса в Excel 2003?

В Excel 2003 режим относительных ссылок при записи макроса включается/выключается специальной кнопкой, как и в более поздних версиях. Но сама кнопка располагается на отдельной маленькой панели инструментов, автоматически (обычно) появляющейся после того, как Вы нажмете кнопку «Записать макрос»:

Если эта микро-панель автоматически не отображается при начале записи макроса — вероятно, ранее она была закрыта нажатием на «крестик».

Открыть ее заново можно в меню «Вид»-«Панели инструментов»-«Остановить запись». Обратите внимание: этот пункт меню будет доступен только в то время, когда идет запись макроса.

#5  Как включить режим относительных ссылок при записи макроса в Excel 2007 и выше?

В Excel 2007, 2010 и более поздних версиях режим относительных ссылок при записи макроса включается/выключается специальной кнопкой, находящейся в левой части ленты на вкладке «Разработчик»:

#6  Как включить стиль ссылок R1C1 в Excel 2007?

Для включения стиля ссылок R1C1 в Excel 2007 необходимо:

1. Нажать кнопку «Office» — круглая кнопка в левом верхнем углу Excel

2. Внизу появившегося окна выбрать «Параметры Excel»

3. Далее слева выбрать раздел «Формулы»

4. В группе «Работа с формулами» установить флажок «Стиль ссылок R1C1»:

#7  Как определить «компоненты» цвета для использования в функции RGB?

Для этого необходимо:

1) Выполнить заливку ячейки нужным цветом

2) Открыть в меню «Цвет заливки — Другие цвета…» окно редактирования цвета

3) На вкладке «Спектр» будут отображены искомые компоненты цвета: красный, зеленый и синий:

#8  Как удалить программный модуль из книги?

Для этого необходимо:

1. В окне «Project Explorer» кликаем на удаляемом модуле правой кнопкой мыши

2. В контекстном меню выбираем пункт «Remove <имя удаляемого модуля>»

3. Появится запрос на сохранение модуля во внешнем (текстовом) файле. Как правило, сохранять этот модуль где-либо нам не нужно, поэтому отвечаем «Нет».

После этого модуль будет удален из книги.

#9  Как удалить макрос из «личной книги макросов»?

Если не получается удалить макрос через меню «Макросы» — можно удалить его вручную в среде разработки VBA:

1. Переходим в среду разработки (Shift+F11)

2. В окне «Project Explorer» находим файл «VBAProject(PERSONAL.XLSB)» (если это окно не открыто — открываем с помощью Ctrl+R)

3. В группе «Modules» в этом файле открываем (двойным кликом) модуль с искомым макросом

4. Удаляем в этом модуле ненужный код.

5. Сохраняем исправленный файл.

Можно также полностью удалить личную книгу макросов. Для этого надо на компьютере произвести поиск файла PERSONAL.XLSB, после чего его удалить (обычно путь к нему будет примерно таким: C:Usersтут имя текущего пользователяAppDataRoamingMicrosoftExcelXLSTART, но может и отличаться)

#10  Как вызвать контекстную подсказку в редакторе кода VBA?

Подсказка со списками свойств и методов обычно появляется автоматически по окончании набора наименования объекта/коллекции и ввода точки. Также контекстная подсказка появляется после набора наименования функции или метода объекта — в этом случае она подсказывает, какие имеются аргументы у данной функции/метода:

Контекстную подсказку можно вызвать и вручную — по нажатию комбинации клавиш Ctrl+Пробел. Результат зависит от того, в каком месте находится курсор в момент вызова подсказки.

Кроме того, ручной вызов контекстной удобен в целях ускорения написания кода: чтобы не дописывать вручную длинные названия объектов или функций, можно набрать первые несколько букв и вызвать подсказку: в открывшемся списке будут показаны все объекты, функции и объявленные переменные, названия которых начинаются с данных букв:

Если подобный объект (функция/переменная/свойство/метод) только один — он сразу же будет подставлен в код.

26 / 26 / 12

Регистрация: 04.02.2013

Сообщений: 250

1

14.09.2013, 11:27. Показов 2252. Ответов 3


Студворк — интернет-сервис помощи студентам

Добрый день!

Обновил Excel 2010 до 2013 и в VBA исчезли подсказки. Кто знает как их вернуть, установить занового?
Под подсказками я имею ввиду F1, например посмотреть какие параметры имеет MsgBox и т.п.



0



761 / 268 / 57

Регистрация: 13.12.2009

Сообщений: 1,067

14.09.2013, 16:17

2

Может отключен интернет?
попробуйте при включенном интернете.



0



5561 / 1367 / 150

Регистрация: 08.02.2009

Сообщений: 4,107

Записей в блоге: 30

14.09.2013, 17:45

3

Не думаю, что всплывающие подсказки (как на рисунке) вылезают через интернет; вот справка да.

Цитата
Сообщение от Roman_rc
Посмотреть сообщение

Обновил Excel 2010 до 2013 и в VBA исчезли подсказки.

Это была производственная необходимость или так, дань моде?

Миниатюры

Как добавить VBA подсказки на Excel 2013
 



0



5561 / 1367 / 150

Регистрация: 08.02.2009

Сообщений: 4,107

Записей в блоге: 30

11.10.2014, 20:22

4

Ну как, Roman_rc, освоили Excel 2013? Чем он лучше? (Я 2003-м обхожусь до сих пор.)



0




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

Модераторы: Akina

Поиск:

Ответ в темуСоздание новой темы
Создание опроса
> Работа редактора Visual Basic, Пропали «всплывающие подсказки»значения 

V

   

Опции темы

flyerTM
Дата 26.9.2007, 23:37 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Шустрый
*

Профиль
Группа: Участник
Сообщений: 54
Регистрация: 20.7.2007

Репутация: нет
Всего: нет

Народ! Жесть, мучаюсь не могу никак базу отладить!
При пошаговом прогоне раньше можно было подведя курсор на переменную 
увидеть во всплывающей подсказке её значение. 
Теперь хоть убей всплывающие подсказки (речь идет о редакторе кода) пропали!!!!
Хотя в меню ToolsOptions…напротив Auto Data Tips ГАЛОЧКА СТОИТ!!!
3 раза весь офис сносил под корень — не помогло!
Думал вирус какой, поменял антивирус — не помогло!
Может я чего в реестре задел случайно, когда там лазил????
Подскажите, плизз!!!!!! 
Магар ставлю тому кто решит проблему!

PM MAIL   Вверх
Akina
Дата 27.9.2007, 09:31 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Советчик
****

Профиль
Группа: Модератор
Сообщений: 20560
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 453

Проверь, что обе галки «Компиляция по запросу» и «Фоновая компиляция» установлены. Проверь, появляются ли подсказки при полной компиляции проекта.

———————

 О(б)суждение моих действий — в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция — Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
bopoha
Дата 27.9.2007, 20:44 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Эксперт
***

Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21

Если ничего не поможет пользуйтесь Watch.

———————

Как создавать приложения на MS Access

PM MAIL WWW ICQ Skype GTalk   Вверх
flyerTM
Дата 29.9.2007, 13:38 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Шустрый
*

Профиль
Группа: Участник
Сообщений: 54
Регистрация: 20.7.2007

Репутация: нет
Всего: нет

Спасибки, конечно, но не помогло, все галочки стоят :(((((
Мне кажется, это уже глюки винды пошли (офис я переустанавливал не один раз).
У меня очень часто бывает при открытии в винде каких-либо окон, они появляются не сверху, а за текущим окном. Думаю может и с этим подсказками то же самое, появляются где-нить под окном БД :((( Фиг знает, может это и бред конечно.
Похоже панет переустановкой винды! :(((
За Watch спасибо, но порой надо просматривать буквально все переменные, так что это не выход.
Магар по-прежнему  на кону smile)

Да и еще, может это как-то связано: когда я открываю любую форму в режиме формы, внизу в строке состояния надпись «Обработка команды…» не пропадает, хотя раньше она появлялалсь при загрузке формы  буквально на секунду и исчезала

Это сообщение отредактировал(а) flyerTM — 29.9.2007, 14:28

PM MAIL   Вверх
bopoha
Дата 2.10.2007, 19:35 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Эксперт
***

Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21

Для просмотра всех переменных есть специальное окно «Locals Windows» в том же пункте «View».

———————

Как создавать приложения на MS Access

PM MAIL WWW ICQ Skype GTalk   Вверх
flyerTM
Дата 2.10.2007, 20:01 (ссылка)
| (нет голосов)
Загрузка ... Загрузка …




Быстрая цитата

Цитата

Шустрый
*

Профиль
Группа: Участник
Сообщений: 54
Регистрация: 20.7.2007

Репутация: нет
Всего: нет

Спасибки, хороший вариант! Но у меня уже все заработало само (появились всплывающие подсказки)! Хотя ничего не делал! Мистика!

PM MAIL   Вверх



















Ответ в темуСоздание новой темы
Создание опроса
Правила форума «MS Access»
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс «транслит» (возле кнопок кодов) если у Вас нет русских шрифтов.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 

0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Access | Следующая тема »

Понравилась статья? Поделить с друзьями:
  • Нет подсветки выделяемого в excel
  • Нет подключения microsoft excel
  • Нет подбора параметра в excel
  • Нет печати таблиц excel
  • Нет перехода между листами в excel