Используйте макросы в Excel на Mac, чтобы сэкономить время и сделать больше

Чтобы произвести впечатление на публику, и выставить себя в роли профессионалов, люди, готовы использовать макросы в таблицах, созданных в такой программе, как Microsoft Excel. image Из-за того, что человек будет использовать макросы, имеется вероятность, что каждая ячейка будет автоматизирована, и не будет возникать особых затруднений. В момент создания самой таблицы и подключения макроса будут записываться необходимые значения. Что собой представляют макросы, и для чего они создаются? Макросы подключить можно в разнообразных программах, от компании Microsoft. Они прекрасно помогают улучшить работы обычного пользователя в любом из утилит. Теперь гражданину не нужно будет выполнять однотипные действия бесконечное число раз, всё существенно изменится, и произойдет это из-за того, что весь процесс будет автоматизирован, и время будет сэкономлено. image Создав макрос, можно быстро выполнить необходимую работу, прекрасно понимая, что в тоже время, ручным способом, это всё создавалось намного тяжелее и дольше. Можно сказать, что макрос состоит из набора инструкций, и они позволяют утилите выполнять заложенные функции. Помимо утилиты, которая предназначена для создания таблиц, многие люди сталкиваются с понятием макроса в Worde, набирая обычный текст. А всё из-за того, что макрос имеет большое число преимуществ. Все процедуры и инструкции объединяются в один сценарий, и он необходим для оптимизации работы. Вызвать процедуру можно из панели инструментов, используя специальные комбинации клавиш. Создание собственных макросов в различных версиях Excel. Во-первых, необходимо открыть документ, и выбрать те ячейки, которые уже были проработаны. Во-вторых, нужно отобразить в ленте «Вкладку разработчика». Чтобы это сделать, необходимо открыть «Файл», выбрать «Параметры», и выставить таки значения, которые имеются на изображении. После активации, необходимо это окно разработчика сделать главным, для этого необходимо выставить значения, как показано на изображении. Теперь имеется возможность перейти к непосредственному созданию макроса. Нужно чётко понимать, что согласившись на его создание, вы согласитесь с тем, что любая из ячеек, указанных в диапазоне, будет выполнять автоматические, однотипные действия, которые задаст сам человек. Чтобы создать макрос, необходимо во вкладке «Окно разработчика» выбрать соответствующую кнопку, и нажать на неё. После того, как вы нажали на кнопку, перед вами появится специальное окно, в нём нужно будет указать название, а также комбинацию клавиш, которые будут её приводить в активное действие. Помимо всего этого, есть возможность написать короткий клочок текста, это необходимо лишь для того, что выделить макрос из всех остальных. Это активно при условии, что у вас имеется много макросов, и с ними вы не хотите запутаться. После этого нажимаем на клавишу OK, и останавливаем полученную запись на панели управления. После того, как действия будут записаны в созданный макрос, нужно не забывать о том, что имеется возможность записать всё в макрос. Чтобы выполнить эту манипуляцию, необходимо нажать на кнопку «Остановить макрос». Как включить работу с макросами? Сначала переходим на вкладку разработчика, и там выбираем меню «Макросы», сразу нажимаем на неё. Выбираем необходимый макрос и нажимаем на такую кнопку, как «Выполнить». Запуск макроса осуществляется с помощью комбинации необходимых клавиш. После того, как вы нажали на кнопку выполнить , все действия пройдут повторно. Создание макросов и их удаление Макросы, в нынешних условиях создаются с помощью языка программирования, а именно помощью Visual Basic. Но, всё настолько элементарно, что разобраться может даже заядлый новичок. Сейчас любой макрос состоит из макрооператоров. Можно сказать, что макрооператоры – набор сведений и действий, необходимых для автоматизации всего процесса. Используя макросы, можно с уверенностью сказать, процесс будет проходить на полном автомате, и вмешательство не будет требоваться ос стороны человека. Чтобы самостоятельно создать макрос, необходимо воспользоваться соответствующей функцией. Используя записывающий макрос, человек, делает всё возможное, чтобы даже при смене информации в ячейке, ничего не сбивалось, а оставалось на высоком уровне. Макрос необходим для повторения действий, и сейчас многие граждане делают всё возможное, чтобы повторять действия, не используя лишних средств. Удалить макрос не составляет никаких ситуаций. Откроется меню разработчика, и выберете там вкладку «Макросы». Дальше выбираем объект, который должен подвергнуться удалению, и просто начинаем незамедлительно сам процесс. После удаления, таблица данных опять будет напоминать школьную программу.

Таблицы Excel являются одним из самых популярных способов хранения и систематизации информации. Если внедрить в Excel макросы, то возможности программы можно расширить практически вдвое. Например, макросы помогают автоматизировать рутинные процессы и ускорить выполнение монотонной работы. Часто пользуются ими специалисты, которые в Excel переводят отчеты из 1С. При помощи внедренного кода их легко привести к единому стандартному шаблону.

Что представляют собой Excel-макросы?

Макросы используются не только в таблицах, но и во всем Microsoft Office. Они представляют собой созданный при помощи Visual Basic for Applications код. Если вы частично знакомы с web-программированием, то можно провести аналогию с Javascript. Excel-макросы делают примерно то же самое, что и Javascript с данными формата HTML.

Небольшая часть того, что может сделать макрос в офисных приложениях:

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

Чем могут быть опасны макросы в Excel?

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

Внедрение вируса происходит во время работы одного из офисных приложений – Word или Excel. После того как вы прекратите работу, в них будет начата автономная работа вируса и заражение им всей системы.

Еще один способ работы вредоносного макроса – посредничество для внедрения угроз в систему. В этом случае он является своеобразными воротами для внедрения и генерирования троянского ПО. Им уже будет управлять не видоизменённый макрос, а сама операционная система, а следовательно, угроза становится более масштабной. Не всегда получается вылечить такие вирусы, иногда приходится полностью менять Windows OC или жесткий диск ПК (в зависимости от задач, которые ставил хакер при написании кода).

Вы можете выбрать любой способ защиты от таких макросов. Наиболее популярно повышение уровня безопасности Excel, но в этом случае программа может перестать поддерживать ваши авторские, полезные макросы. Не стоит доверять файлам из неизвестных источников, так как они могут оказаться зараженными. Даже макрос, полученный с ПК вашего коллеги, может таить в себе угрозу. Если знакомый дал вам для работы файл, поддерживающий использование макросов, то, перед тем как разрешить системе его использование, уточните, каким образом он получил этот макрос.

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

Как записать макросы в Excel

Наиболее простой способ создания макроса – программирование прямо в Excel. Для этого вам понадобится таблица с внесенными данными и немного знаний, чтобы включить запись такого кода в программе.

Создание начинается с меню «Вид». В нем нужно выбрать позицию «Макросы» и команду «Записать Макрос». Далее нужно задать имя без пробелов, например, «Format» (если код будет отвечать за изменение формата текста или ячеек).

После чего все ваши действия будут автоматически записаны и преобразованы в код макроса. Снизу в документе появится кнопка с небольшим квадратом («Стоп»), нажатием на которую вы сможете остановить запись. Так можно автоматически записать в Excel макросы, примеры которых вы сможете разбирать дальше в процессе обучения.

Как включить макросы в Excel

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

При последующем обращении к документу, чтобы включить в Excel макросы, необходимо сначала разрешить их использование во всплывающей верхней строке. Затем нужно импортировать данные, которые будут редактироваться макросом из обычной таблицы формата CSV. По окончании импорта необходимо снова обратиться к меню «Вид», выбрать там «Макросы» и найти в списке имя сделанного вами кода. В конце нажмите кнопку «Выполнить». После чего вы увидите, как программа по заданному вами ранее алгоритму выполняет расчеты и форматирование документа.

Как увидеть программный код макроса?

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

Для этого нужно последовательно выполнить команды:

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

Как начать работу макроса по клику на ячейку

Допустим, вы хотите, чтобы при выделении ячейки А1 запускалась работа макроса. Чтобы выбранная в Excel ячейка макрос запускала, необходимо в первый модуль добавить программный код:

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

Где можно научиться работать с макросами

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

Сейчас для изучения всех возможностей Excel создано немало специальных курсов, которые идут по несколько недель, но вам потребуется для их посещения выезжать в учебный центр или присутствовать на вебинарах (что не всегда удобно из-за разницы во времени). Но более действенный и простой способ научиться создавать макросы в Excel – самоучитель с примерами. Вы можете заниматься по нему в любое удобное для вас время, а пошаговые учебники помогут разрабатывать разные варианты: от самых простых кодов до наиболее сложных. Microsoft Excel — это универсальный табличный редактор, при помощи которого можно решить множество сложных задач.

Примеры

Существуют коды, которые позволяют добиться автоматизации различных задач. Итак, в качестве примера рассмотрим макрос вставки строки. Выглядит он следующим образом:

Sub Макрос1()

Rows(2).EntireRow.Insert

End Sub

Похожие статьи

С помощью макросов вы можете автоматизировать часто повторяющиеся процессы в Excel и сэкономить много времени.

К функции макросов в Excel перейдите через вкладку «Вид». Справа найдите кнопку «Макросы». Также вы можете получить доступ в данной функции с помощью сочетания клавиш [Alt] + [F8].

Для того чтобы создать макрос, откройте меню «Макросы» и вызовите команду «Запись макроса…». В окне «Запись макроса» задайте имя и сочетание клавиш, например, [Ctrl] + [R], — с помощью этого сочетания вы потом будете запускать макрос. Целесообразным может быть и описание принципа работы макроса. Подтвердите ввод с помощью «ОК».

На нижней линейке окна программы Excel слева рядом с «Готово» вы теперь увидите квадратный значок записи. Если подвести к нему курсор мыши, появится текст «Идет запись макроса. Щелкните, чтобы остановить запись». Затем произведите нужные настройки в документе. Когда все будет готово, нажмите на кнопку остановки записи, чтобы сохранить макрос.

Если вы хотите создать макрос, который в дальнейшем будет автоматически подгонять поля страницы, то сначала вам нужно ввести в окне «Запись макроса» сочетание клавиш, а потом запустить запись.

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

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

Фото: компания-производитель

Поделиться ссылкой

Описание

[iMacros] Создание макросов и их применение в Excel. Написание макросов Excel

Курс «Создание макросов и их применение в Excel. Написание макросов Excel» вы можете скачать практически бесплатно.

Вебинар 1. Минимум необходимой теории 7 сентября (четверг) с 19:00 до 21:00 (МСК)

Наша задача научиться трём способам написания макросов:

  • с помощью макрорекордера (только как помощника)
  • используя чужой код (где брать и как изменять под себя)
  • сами с нуля (посвятим бОльшую часть времени)

Редактор VBE Макросы пишут в редакторе Visual Basic Editor и наша задача научиться эффективно использовать его для решения своих задач. На вебинаре узнаем из каких окон состоит, как настроить под себя (какие панелии окно добавить, а какие лучше убрать).

Объектная модель Excel

90% макросов что-то делают с ячейками (Cells), диапазонами (Range), листами (WorkSheets) и excel-файлами (Workbooks), нам предстоит разобраться с иерархией этих объектов. Также узнаем их основные свойства и методы.

Домашнее задание

Пишем с нуля макросы, которые:

  • создаёт оглавление Excel-файла с большим количеством листов
  • записывает информацию о пользователе, который открывает файл

Вебинар 2. Изменяем, копируем, удаляем через VBA 11 сентября (понедельник) с 19:00 до 21:00 (МСК) Практический вебинар

3 варианта копирования

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

5 способов удаления

Вы замечали, что вариантов удаления несколько:

  • удалить только значения (ClearContents),
  • очистить форматы (ClearFormats),
  • удалить комментарий (ClearComments),
  • удалить всё сразу (Clear),
  • да ещё и со смещением (Delete)

Рассмотрим на примерах все способы.

Определяем последнюю заполненную ячейку

Макросы должны быть универсальными, для этого потребуется каждый раз вычислять диапазон, для которого писать формулу, либо границы копирования и т.д. Расскажу про три способа, которые точно будете использовать в своих кодах:

  • свойство Range.End (когда в столбце все строки заполнены значениями)
  • метод Range.Find (самую последнюю строку/столбец)
  • метод SpecialCells (самую-самую последнюю (даже удалённую) строку/столбец)

Домашнее задание

Пишем с нуля макросы, которые:

  • создаёт оглавление Excel-файла с большим количеством листов
  • записывает информацию о пользователе, который открывает файл

Вебинар 3. Циклы — короли автоматизации 14 сентября (четверг) с 19:00 до 21:00 (МСК) Практический вебинар

Что такое циклы? Почему они короли?

  • For … next (цикл со счётчиком)
  • Do … Loop (с условиями While и Until)
  • For each … (по объектам коллекций WorkSheetsСells и др.)

К примеру, Вам надо заполнить данными 150 договоров по шаблону. Вот мы и запишем пару строк кода как заполнить 1 договор, а циклы повторят процедуру 150 раз. Делая руками, мы бы потратили 2 дня, а макрос за 2 минуты выполнит эту работу.

Основы работы с переменными

Если циклы — это короли, то переменные — их верные помощники. Имя листа, файла, путь сохранения и т.д. — постоянно меняются. Определим для подобных параметров переменные и напишем макрос, который будет использовать универсальный код и выполняться в 2-3 раза быстрее.

Домашнее задание

Пишем с нуля макросы, которые:

  • заполнит 138 договоров ГПХ и отправит их каждому сотруднику на почту
  • из выгрузки продаж за 9 мес. сформирует excel-файлы по зонам ответственности каждого менеджера и директора региона и сохранит в нужную папку

Вебинар 4. Учимся общаться с пользователем 18 сентября (понедельник) с 19:00 до 21:00 (МСК)

Практический вебинар

Скажи мне: Кто ты?

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

  • MsgBox (информационные сообщения),
  • InputBox (получение данных от пользователя)
  • Application.InputBox (продвинутый вариант InputBox)

Мы на практических примерах разберёмся во всех тонкостях.

Работа с файловой системой

Нам следует научиться писать команды, которые будут:

  • создавать и удалять папки (нужно, чтобы макрос смог сохранять результат в нужное место),
  • выводить FileDialog (решили собрать данные с нескольких excel-файлов, вот и надо попросить пользователя указать какие конкретно) и т.д.

Ничего сложного в этой теме нет, пугаться не стоит.

Домашнее задание

Пишем с нуля макросы, которые:

  • создаёт список файлов в папке (покажу два принципиально разных варианта решения задачи)
  • сбор данных из нескольких файлов Excel в один (все из одной папки, по списку файлов, по тем, что выберет пользователь)

Вебинар 5. Функции VBA. + Создание собственных 21 сентября (четверг) с 19:00 до 21:00 (МСК)

Практический вебинар

Макросы на VBA — это Вам не ВПР писать. Тут думать надо! 

Формулы в VBA можно писать несколькими способами, каждый имеет свои особенности, вот нам и надо будет разобраться с:

  • текстом (UCaseLCaseStrConvLeftMidLenInStrRevStrTrim и др.)
  • датой и временем (DateTimeNowWeekDayDateDiffDateAdd и др.)
  • числами (AbsFixIntRound, Rnd, Sgn, Sin, Cos, Tan, Atn и др.)
  • преобразование данных (IsNumericIsDateIsArray, IsObject, IsEmpty и др.)
  • форматами (FormatFormatCurrency/DateTime/Number/Percent)

Function — то тоже макрос, но необычный

Узнаем про отдельный вид макросов — Функции (Function). Расскажу, про принципиальные отличия от обычных, научу писать свои собственные формулы (их нет ни в одной версии Excel):

  • СуммаЯчеекПоЦвету (находит сумму ячеек с определённым цветом заливки)
  • ЛатиницаВРусские и РусскиеВЛатиницу (преобразует буквы)
  • ЧислоИзЯчейки (извлекает из ячейки с текстом число)

Также поделюсь собственными готовыми функциями, которые не надо писать самим, а просто взяли и используете (+можно под свои задачи легко изменить).

WorkSheetFunction — ещё один вариант написания формул VBA

Особый вид функций, который работает быстрее обычных, но имеет свои особенности. К примеру формулу ВПР в ячейку B1 можно написать так:

  • Range(B1).FormulaLocal = =ВПР(A1$D$1:$F$520);
  • Range(B1) = Application.Vup(Сells(1,1)Range($D$1:$F$5)20);
  • Range(B1) = Application.WorksheetFunction.Vlookup(сells(1).
Автор курса: iMacros    У нас Вы можете приобрести всего за 50 руб.

Excel на Mac не всегда был таким же мощным, как в Windows. Макросы действительно не будут работать, если они не были созданы исключительно для Mac.

Начиная с 2013 года Microsoft вернула макросы. Существует два типа макросов: те, которые вы можете создать, быстро записывая свои действия, и те, которые используют VBA для разработки более совершенной автоматизации. В Office 2016 Excel использует одну и ту же кодовую базу на всех платформах. Это изменение облегчит работу макросов на разных платформах.

Итак, давайте посмотрим, как это работает в MacOS.

Включение макросов в Excel на Mac

Работа с макросами в Excel на вашем Mac может быть отключена по умолчанию. Этот параметр объясняется тем, что макросы могут быть потенциальным переносчиком

, Самый простой способ узнать, есть ли у вас разработчик Вкладка доступна на ленте в Excel. Если вы этого не видите, это просто включить.

image

Нажмите на превосходить в строке меню, а затем выберите предпочтения в раскрывающемся списке. В меню нажмите на лента Панель инструментов. В правом списке разработчик должен быть внизу, установите флажок. Наконец, нажмите Сохранить и вы должны увидеть вкладку «Разработчик» в конце ленты.

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

Запись макроса вручную в Excel на Mac

Хотя вы можете кодировать макросы

Это может быть не для всех. Если вы не готовы начать работу с VBA, Excel позволит вам записать шаги для вашего макроса на существующий лист. Нажмите на вкладку Разработчик, чтобы увидеть ваши варианты.

image

Вы ищете третий вариант на ленте, Запись макроса. Нажмите на это, и появится диалоговое окно, позволяющее вам назвать ваш макрос и установить сочетание клавиш. Вы можете настроить свой макрос на Текущая рабочая тетрадь, Новая рабочая книга, или в вашем Личная Макро Книга. Персональная книга макросов находится в вашем профиле пользователя и позволяет вам использовать ваши макросы между вашими файлами.

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

Пример 1: дневной объем продаж и среднечасовой

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

Нам нужно настроить первый лист. Использование этого первого бланка в качестве шаблона для ежедневного копирования на новую вкладку может сэкономить вам время. В первом столбце / строке поставить час / дату. Через верх добавить с понедельника по пятницу.

Затем в первом столбце приведите разбивку почасовых итогов от 8-5. Я использовал 24-часовое время, но вы можете использовать нотацию AM / PM, если хотите. Ваш лист должен соответствовать скриншоту выше.

image

Добавьте новую вкладку и скопируйте в нее свой шаблон. Затем заполните данные о продажах за день. (Если у вас нет данных для заполнения этого листа, вы можете ввести = RANDBETWEEN (10,1000) во всех ячейках, чтобы создать фиктивные данные.) Затем нажмите на разработчик в ленте.

Затем нажмите на Запись макроса. В диалоговом окне введите имя как AverageandSum и оставить его в Эта книга. Вы можете установить клавишу быстрого доступа, если хотите. Вы можете ввести описание, если вам нужно больше подробностей о том, что делает макрос. Нажмите кнопку ОК, чтобы начать настройку макроса.

В нижней части почасовых списков введите Ежедневные итоги. В ячейку рядом с ним введите = СУММ (В2: В10). Затем скопируйте и вставьте это в остальные столбцы. Потом в шапку добавь Средний после последнего столбца. Затем в следующую ячейку вниз введите = Среднее (В2: F2),. Затем вставьте это в ячейки в оставшейся части столбца.

Читайте также:  Почему все больше людей будут использовать Mac, если он будет стоить столько же, сколько Windows [Мнение]

Затем нажмите Остановить запись. Теперь ваш макрос можно использовать на каждом новом листе, который вы добавляете в свою книгу. Как только у вас будет другой лист данных, вернитесь к разработчик и нажмите макрос. Ваш макрос должен быть выделен, нажмите Run, чтобы добавить свои суммы и средние значения.

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

Макросы VBA в Excel на Mac

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

image

Добавьте еще один час и день на лист и запустите макрос. Вы увидите, что макрос перезаписывает ваши новые данные. Чтобы обойти это, мы используем код, чтобы сделать макрос более динамичным с помощью VBA, которая является уменьшенной версией Visual Basic.

, Реализация ориентирована на автоматизацию для Office.

image

Это не так легко подобрать, как Applescript

, но автоматизация Office полностью построена на Visual Basic. Поэтому, как только вы поработаете с ним здесь, вы сможете быстро развернуться и использовать его в других приложениях Office. (Это также может быть очень полезно, если вы застряли на ПК с Windows на работе.)

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

Office 2016 теперь поставляется с полным редактором Visual Basic. Это позволяет вам использовать Object Browser и средства отладки, которые раньше были ограничены версией Windows. Вы можете получить доступ к Обозревателю объектов, перейдя в Вид> Обозреватель объектов или просто нажмите Shift + Command + B. Затем вы можете просмотреть все доступные классы, методы и свойства. Это было очень полезно при создании кода в следующем разделе.

Пример 2: дневной объем продаж и среднечасовое значение с кодом

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

image

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

Окно Visual Basic откроется; вы увидите его в списке как Module2 в браузере проекта. Панель кода будет иметь Sub AverageandSumButton () вверху и несколькими строчками вниз End Sub. Ваш код должен находиться между этими двумя, поскольку это начало и конец вашего макроса.

Шаг 1: Объявление переменных

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

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

Sub AverageandSumButton() Dim RowPlaceHolder As Integer Dim ColumnPlaceHolder As Integer Dim StringHolder As String Dim AllCells As Range Dim TargetCells As Range Dim AverageTarget As Range Dim SumTarget As Range 

Теперь, когда у вас есть все ваши переменные, вам нужно сразу использовать некоторые переменные диапазона. Диапазоны — это объекты, которые содержат разделы рабочего листа в качестве адресов. Переменная Все клетки будет установлен на все активные ячейки на листе, который включает в себя метки столбца и строки. Вы получите это, позвонив ActiveSheet объект, а затем UsedRange имущество.

Проблема в том, что вам не нужны метки, включенные в средние и суммарные данные. Вместо этого вы будете использовать подмножество диапазона AllCells. Это будет диапазон TargetCells. Вы вручную объявляете его диапазон. Его начальный адрес будет ячейкой во втором ряду во втором столбце диапазона.

Читайте также:  Создавайте мощные пользовательские голосовые команды Mac с Yosemite & Automator

Вы называете это, называя AllCells диапазон, используя его ячейки класс, чтобы получить эту конкретную ячейку, используя (2,2). Чтобы получить последнюю ячейку в диапазоне, вы все равно позвоните AllCells. На этот раз с помощью SpecialCells способ получить собственность xlCellTypeLastCell. Вы можете увидеть оба из них в блоке кода ниже.

  Set AllCells = ActiveSheet.UsedRange Set TargetCells = Range(AllCells.Cells(2, 2), AllCells.SpecialCells(xlCellTypeLastCell)) 

Шаг 2: для каждого цикла

Следующие два раздела кода предназначены для каждого

петли. Эти циклы проходят через объект, чтобы воздействовать на каждое подмножество этого объекта. В этом случае вы делаете два из них, один для каждой строки и один для каждого столбца. Поскольку они почти одинаковы, здесь только один из них; но оба находятся в блоке кода. Детали практически идентичны.

Перед тем, как начать цикл для каждой строки, вам нужно установить целевой столбец, в котором цикл записывает среднее значение для каждой строки. Вы используете ColumnPlaceHolder переменная, чтобы установить эту цель. Вы устанавливаете это равным подсчитывать переменная ячейки класс AllCells. Добавьте один к нему, чтобы переместить его справа от ваших данных, добавив +1.

Далее вы собираетесь запустить цикл с помощью Для каждого. Затем вы хотите создать переменную для подмножества, в этом случае, subRow. После В, мы устанавливаем основной объект, который мы анализируем TargetCells. присоединять .Ряды в конце ограничить цикл только каждой строкой, а не каждой ячейкой в ​​диапазоне.

Внутри цикла вы используете метод ActiveSheet.Cells, чтобы установить конкретную цель на листе. Координаты задаются с помощью subRow.Row чтобы получить строку, в которой в данный момент находится цикл. Затем вы используете ColumnPlaceHolder для другой координаты.

Вы используете это для всех трех шагов. Первое вы добавляете .значение после скобок и установить равным WorksheetFunction.Average (subRow). Это записывает формулу среднего значения строки в целевую ячейку. Следующая строка, которую вы добавляете .Стиль и установите это равным «Валюта». Этот шаг соответствует остальной части вашего листа. На последней строке вы добавляете .Font.Bold и установите его равным Правда. (Обратите внимание, что вокруг этой кавычки нет, так как это логическое значение.) Эта строка выделяет шрифт, чтобы итоговая информация выделялась среди остальной части листа.

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

  ColumnPlaceHolder = AllCells.Columns.Count + 1 For Each subRow In TargetCells.Rows ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Value = WorksheetFunction.Average(subRow) ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Style = "Currency" ActiveSheet.Cells(subRow.Row, ColumnPlaceHolder).Font.Bold = True Next subRow RowPlaceHolder = AllCells.Rows.Count + 1 For Each subColumn In TargetCells.Columns ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Value = WorksheetFunction.Sum(subColumn) ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Style = "Currency" ActiveSheet.Cells(RowPlaceHolder, subColumn.Column).Font.Bold = "True" Next subColumn 

Шаг 3: пометьте свои резюме

Далее пометьте новую строку и столбец, установите RowPlaceHolder а также ColumnPlaceHolder снова. Во-первых, используйте AllCells.Row чтобы получить первый ряд в диапазоне, а затем AllCells.Column + 1 чтобы получить последний столбец. Затем вы будете использовать тот же метод, что и цикл, чтобы установить значение «Средние продажи». Вы также будете использовать то же самое .Font.Bold свойство жирным шрифтом вашего нового ярлыка.

image

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

Оба шага находятся в блоке кода ниже. Это конец макроса, отмеченного End Sub. Теперь у вас должен быть весь макрос

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

  ColumnPlaceHolder = AllCells.Columns.Count + 1 RowPlaceHolder = AllCells.Row ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Value = "Average Sales" ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Font.Bold = True ColumnPlaceHolder = AllCells.Column RowPlaceHolder = AllCells.Rows.Count + 1 ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Value = "Total Sales" ActiveSheet.Cells(RowPlaceHolder, ColumnPlaceHolder).Font.Bold = True End Sub 

Что дальше для макросов в Excel на Mac?

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

Visual Basic открывает пользователям Mac Excel возможность углубиться в автоматизацию Office. Visual Basic традиционно был доступен только в Windows. Это позволяет вашим макросам динамически адаптироваться к данным, делая их более универсальными. Если у вас есть терпение, это может стать дверью к более сложному программированию.

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий