Научете как да използвате Excel макроси за автоматизиране на досадни задачи

Съдържание:

Научете как да използвате Excel макроси за автоматизиране на досадни задачи
Научете как да използвате Excel макроси за автоматизиране на досадни задачи

Видео: Научете как да използвате Excel макроси за автоматизиране на досадни задачи

Видео: Научете как да използвате Excel макроси за автоматизиране на досадни задачи
Видео: CS50 2015 - Week 6 - YouTube 2024, Април
Anonim
Една от по-мощните, но рядко използвани функции на Excel е способността много лесно да се създават автоматизирани задачи и персонализирана логика в макросите. Макросите осигуряват идеален начин да спестите време на предвидими, повтарящи се задачи, както и да стандартизирате форматите на документи - много пъти, без да се налага да пишете един ред от код.
Една от по-мощните, но рядко използвани функции на Excel е способността много лесно да се създават автоматизирани задачи и персонализирана логика в макросите. Макросите осигуряват идеален начин да спестите време на предвидими, повтарящи се задачи, както и да стандартизирате форматите на документи - много пъти, без да се налага да пишете един ред от код.

Ако сте любопитни какви са макросите или как да ги създадете, няма проблем - ще ви преведем през целия процес.

Забележка:същият процес трябва да работи в повечето версии на Microsoft Office. Екранните снимки може да изглеждат малко по-различни.

Какво представлява макросът?

Макросът на Microsoft Office (тъй като тази функционалност се отнася за няколко от приложенията на MS Office) е просто код за Visual Basic for Applications (VBA), запазен в документ. За сходна аналогия помислете за документ като HTML и макрос като Javascript. По много по същия начин, по който Javascript може да манипулира HTML в уеб страница, макрос може да манипулира документ.

Макросите са невероятно мощни и могат да направят почти всичко, което твоето въображение може да предизвика. Като (много) кратък списък от функции, които можете да направите с макрос:

  • Прилагане на стил и форматиране.
  • Манипулиране на данни и текст.
  • Комуникирайте с източници на данни (база данни, текстови файлове и др.).
  • Създайте изцяло нови документи.
  • Всяка комбинация, във всякакъв ред, на някое от изброените по-горе.

Създаване на макро: обяснение по пример

Започваме с вашия CSV файл с грамотност. Няма нищо специално тук, само 10 × 20 набор от номера между 0 и 100, както с заглавие на ред, така и с колона. Нашата цел е да изготвим добре форматиран, представяем информационен лист, който да съдържа обобщени суми за всеки ред.

Както казахме по-горе, макрос е VBA код, но едно от хубавите неща за Excel е, че можете да ги създавате / записвате с нулево кодиране - както ще направим тук.
Както казахме по-горе, макрос е VBA код, но едно от хубавите неща за Excel е, че можете да ги създавате / записвате с нулево кодиране - както ще направим тук.

За да създадете макрос, отворете Изглед> Макроси> Записване на макроси.

Задайте на макроса име (без интервали) и кликнете върху OK.
Задайте на макроса име (без интервали) и кликнете върху OK.
Image
Image

След като това стане, всичко на вашите действия са записани - всяка клетка промяна, превъртане действие, промяна на прозореца, вие го име.

Има няколко места, които показват, че Excel е режим на запис. Едното е чрез преглеждане на менюто "Макро" и отбелязването, че Stop Recording е заменила опцията за Record Macro.

Другият е в долния десен ъгъл. Иконата "stop" показва, че е в макро режим, а натискането тук ще спре записа (също така, когато не е в режим на запис, тази икона ще бъде бутонът Record Macro, който можете да използвате, вместо да отидете в менюто Макроси).
Другият е в долния десен ъгъл. Иконата "stop" показва, че е в макро режим, а натискането тук ще спре записа (също така, когато не е в режим на запис, тази икона ще бъде бутонът Record Macro, който можете да използвате, вместо да отидете в менюто Макроси).
Сега, когато записваме нашия макрос, нека да приложим обобщените изчисления. Първо добавете заглавията.
Сега, когато записваме нашия макрос, нека да приложим обобщените изчисления. Първо добавете заглавията.
След това приложийте съответните формули (съответно):
След това приложийте съответните формули (съответно):
  • = SUM (В2: К2)
  • = Средна (В2: К2)
  • = MIN (В2: К2)
  • = MAX (В2: К2)
  • = MEDIAN (В2: К2)
Сега подчертайте всички изчислителни клетки и преместете дължината на всички наши редове за да приложите изчисленията към всеки ред.
Сега подчертайте всички изчислителни клетки и преместете дължината на всички наши редове за да приложите изчисленията към всеки ред.
След като това бъде направено, всеки ред трябва да покаже съответните си резюмета.
След като това бъде направено, всеки ред трябва да покаже съответните си резюмета.
Сега искаме да получим обобщените данни за целия лист, така че да приложим още няколко изчисления:
Сега искаме да получим обобщените данни за целия лист, така че да приложим още няколко изчисления:
съответно:
съответно:
  • = SUM (L2: L21)
  • = СРЕДНО (B2: K21) *Това трябва да бъде изчислено за всички данни, тъй като средната стойност на средните стойности на редовете не е непременно равна на средната стойност на всички стойности.
  • = MIN (N2: N21)
  • = MAX (О2: O21)
  • = MEDIAN (В2: K21) * Изчислява се за всички данни по същата причина, както е посочено по-горе.
След като направите изчисленията, ще приложим стила и форматирането. Първо прилагайте форматиране на общо число във всички клетки, като направите Select All (или Ctrl + A или кликнете върху клетката между заглавките на редовете и колоните) и изберете иконата "Style Style" в менюто Home.
След като направите изчисленията, ще приложим стила и форматирането. Първо прилагайте форматиране на общо число във всички клетки, като направите Select All (или Ctrl + A или кликнете върху клетката между заглавките на редовете и колоните) и изберете иконата "Style Style" в менюто Home.
След това приложете визуално форматиране както на заглавията на редовете, така и на колоните:
След това приложете визуално форматиране както на заглавията на редовете, така и на колоните:
  • Bold.
  • Центрирано.
  • Цвят на запълване на фона.
И накрая, прилагайте някакъв стил на общите суми.
И накрая, прилагайте някакъв стил на общите суми.
Когато всичко свърши, изглежда как изглежда нашият лист с данни:
Когато всичко свърши, изглежда как изглежда нашият лист с данни:
Тъй като сме доволни от резултатите, спрете записването на макроса.
Тъй като сме доволни от резултатите, спрете записването на макроса.
Поздравления - току-що сте създали макрос на Excel.
Поздравления - току-що сте създали макрос на Excel.

За да използваме наскоро записвания макрос, трябва да запазим работната книга на Excel в макро файл с разрешен файлов формат. Преди да направим това обаче, първо трябва да изчистим всички съществуващи данни, така че да не е вграден в нашия шаблон (идеята е, че всеки път, когато използваме този шаблон, ще импортираме най-актуалните данни).

За да направите това, изберете всички клетки и ги изтрийте.

Image
Image

С данните, които вече са изтрити (но макросите все още са включени в файла в Excel), искаме да запазим файла като файл с шаблон с активиран макрос (XLTM). Важно е да се отбележи, че ако запазите това като стандартен шаблон (XLTX) файл, тогава макросите ще го направят не да може да се управлява от него. Алтернативно, можете да запазите файла като файл на наследствен шаблон (XLT), който ще позволи макросите да се изпълняват.

След като запазите файла като шаблон, продължете и затворете Excel.
След като запазите файла като шаблон, продължете и затворете Excel.

Използване на макрос Excel

Преди да покрием как можем да приложим този новозаписан макрос, е важно да се обхванат няколко въпроса за макросите като цяло:

  • Макросите могат да бъдат злонамерени.
  • Вижте горната точка.

Кодът на VBA всъщност е доста мощен и може да манипулира файлове извън обхвата на настоящия документ. Например, макрос може да променя или изтрива произволни файлове в папката My Documents.Поради това е важно да се уверите, че сте само макроси от надеждни източници.

За да използвате нашия макрос за формат на данните, отворете файла на шаблона на Excel, създаден по-горе. Когато го направите, ако приемете, че имате стандартни настройки за защита, ще видите предупреждение в горната част на работната книга, в което се казва, че макросите са деактивирани. Тъй като се доверяваме на макроса, създаден от нас, кликнете върху бутона "Активиране на съдържанието".

След това ще внесем последния набор от данни от CSV (това е източникът на работния лист, използван за създаването на нашия макрос).
След това ще внесем последния набор от данни от CSV (това е източникът на работния лист, използван за създаването на нашия макрос).
За да завършите импортирането на CSV файла, може да се наложи да зададете няколко опции, за да може Excel да го интерпретира правилно (например разделител, налични заглавки и т.н.).
За да завършите импортирането на CSV файла, може да се наложи да зададете няколко опции, за да може Excel да го интерпретира правилно (например разделител, налични заглавки и т.н.).
След като данните ни се импортират, просто отидете в менюто Макроси (под раздела Изглед) и изберете Преглед на макроси.
След като данните ни се импортират, просто отидете в менюто Макроси (под раздела Изглед) и изберете Преглед на макроси.
В резултантния диалогов прозорец виждаме макроса "FormatData", който записвахме по-горе. Изберете го и кликнете върху Изпълни.
В резултантния диалогов прозорец виждаме макроса "FormatData", който записвахме по-горе. Изберете го и кликнете върху Изпълни.
Image
Image

След като стартирате, може да видите курсора да скочи наоколо за няколко минути, но тъй като той ще видите данните, които се манипулират точно както го записвахме. Когато всичко е казано и направено, то трябва да изглежда точно като оригинала - освен с различни данни.

Image
Image

Гледайки под качулката: Какво прави Macro работа

Както споменахме няколко пъти, макрос се задвижва от код за Visual Basic for Applications (VBA). Когато записвате макрос, Excel всъщност превежда всичко, което правите, в съответните си инструкции за VBA. За да го кажете просто - не е нужно да пишете код, защото Excel пише за вас кода.

За да видите кода, който прави макроса ни да се изпълнява, кликнете върху бутона "Редактиране" от диалоговия прозорец "Макроси".

Прозорецът, който се отваря, показва изходния код, записан от нашите действия при създаването на макроса. Разбира се, можете да редактирате този код или дори да създадете нови макроси изцяло в прозореца на кода. Докато записващото действие, използвано в тази статия, вероятно ще отговаря на повечето нужди, по-персонализираните действия или условните действия биха изисквали да редактирате изходния код.
Прозорецът, който се отваря, показва изходния код, записан от нашите действия при създаването на макроса. Разбира се, можете да редактирате този код или дори да създадете нови макроси изцяло в прозореца на кода. Докато записващото действие, използвано в тази статия, вероятно ще отговаря на повечето нужди, по-персонализираните действия или условните действия биха изисквали да редактирате изходния код.

Като ни пример на една стъпка по-нататък …

Хипотетично предполагаме, че файлът с данни за източника, data.csv, се произвежда от автоматизиран процес, който винаги записва файла на същото място (например C: Data data.csv винаги е най-скорошните данни). Процесът на отваряне на този файл и внасянето му може лесно да се превърне в макрос:

  1. Отворете файла на шаблона в Excel, съдържащ нашия макрос "FormatData".
  2. Запишете нов макрос, наречен "LoadData".
  3. С макросписването им импортирайте файла с данни, както обикновено.
  4. След като импортирате данните, спрете да записвате макроса.
  5. Изтрийте всички данни за клетката (изберете всичко, след което изтрийте).
  6. Запазете актуализирания шаблон (не забравяйте да използвате формата на шаблон с активиран макрос).

След като това стане, всеки път, когато шаблонът се отвори, ще има две макроси - една, която зарежда нашите данни, а другата, която ги форматира.

Ако наистина сте искали да си замърсите ръцете с малко редактиране на кода, лесно бихте могли да комбинирате тези действия в един макрос, като копирате кода, създаден от "LoadData", и го вмъкнете в началото на кода от "FormatData".
Ако наистина сте искали да си замърсите ръцете с малко редактиране на кода, лесно бихте могли да комбинирате тези действия в един макрос, като копирате кода, създаден от "LoadData", и го вмъкнете в началото на кода от "FormatData".

Изтеглете този шаблон

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

Изтеглете Excel Macro Template от How-To Geek

Препоръчано: