Microsoft Excel-д зориулж өөрийн нэмэлтийг хэрхэн үүсгэх вэ

Хэрхэн програмчлахаа мэдэхгүй байсан ч Excel дээр маш олон тооны ердийн даалгавруудын бэлэн VBA макро кодыг олох боломжтой олон газар (ном, вэбсайт, форум) байдаг. Миний туршлагаас харахад ихэнх хэрэглэгчид томьёог утга болгон хөрвүүлэх, нийлбэрийг үгээр харуулах, нүднүүдийг өнгөөр ​​нийлбэрлэх гэх мэт ердийн процессуудыг автоматжуулахын тулд эрт орой хэзээ нэгэн цагт макро цуглуулгаа цуглуулдаг. Эндээс асуудал гарч ирнэ - Visual Basic-ийн макро кодыг ажилдаа ашиглахын тулд хаа нэгтээ хадгалах хэрэгтэй.

Хамгийн хялбар сонголт бол гарын товчлолыг ашиглан Visual Basic засварлагч руу очиж макро кодыг ажлын файлд шууд хадгалах явдал юм. Alt+F11 цэсээр дамжуулан шинэ хоосон модуль нэмнэ Оруулах - Модуль:

Гэсэн хэдий ч энэ арга нь хэд хэдэн сул талуудтай:

  • Хэрэв маш олон файлууд байгаа бөгөөд томьёог утга болгон хувиргах макро гэх мэт макро нь хаа сайгүй шаардлагатай бол та кодыг хуулах хэрэгтэй болно. ном болгонд.
  • Мартаж болохгүй файлыг макро идэвхжүүлсэн форматаар хадгалах (xlsm) эсвэл хоёртын номын форматаар (xlsb).
  • Ийм файлыг нээх үед макро хамгаалалт хүлээн зөвшөөрөх шаардлагатай сэрэмжлүүлэг өгөх бүртээ (сайн эсвэл хамгаалалтыг бүрмөсөн идэвхгүй болгох нь үргэлж хүсээгүй байж болно).

Илүү гоёмсог шийдэл бол бүтээх явдал юм өөрийн нэмэлт (Excel нэмэлт) - таны бүх "дуртай" макронуудыг агуулсан тусгай форматтай (xlam) тусдаа файл. Энэ аргын давуу талууд:

  • Энэ нь хангалттай байх болно нэмэлтийг нэг удаа холбоно уу Excel-д – мөн та түүний VBA процедур болон функцийг энэ компьютер дээрх дурын файлд ашиглаж болно. Ажлын файлуудаа xlsm болон xlsb форматаар дахин хадгалах шаардлагагүй, учир нь. эх код нь тэдгээрт хадгалагдахгүй, харин нэмэлт файлд хадгалагдах болно.
  • Нөхөн сэргээх үйлчилгээ Макро танд бас төвөг учруулахгүй. Нэмэлтүүд нь тодорхойлсноор найдвартай эх сурвалж юм.
  • Хийж чадна тусдаа таб Нэмэлт макро ажиллуулах сайхан товчлууруудтай Excel туузан дээр.
  • Нэмэлт нь тусдаа файл юм. Түүний авч явахад хялбар компьютерээс компьютерт шилжүүлж, хамт ажиллагсадтайгаа хуваалцах эсвэл бүр зарж болно 😉

Өөрийн Microsoft Excel нэмэлтийг бий болгох бүх үйл явцыг алхам алхмаар авч үзье.

Алхам 1. Нэмэлт файл үүсгэ

Microsoft Excel програмыг хоосон ажлын дэвтэрээр нээж, тохирох нэрээр хадгалаарай (жишээлбэл MyExcelAddin) тушаалын хамт нэмэлт хэлбэрээр Файл - Хадгалах эсвэл түлхүүрүүд F12, файлын төрлийг зааж өгнө Excel нэмэлт:

Анхдагч байдлаар Excel нь нэмэлтүүдийг C:UsersYour_nameAppDataRoamingMicrosoftAddIns хавтсанд хадгалдаг боловч зарчмын хувьд та өөрт тохирох бусад хавтсыг зааж өгч болно гэдгийг анхаарна уу.

Алхам 2. Бид үүсгэсэн нэмэлтийг холбоно

Одоо бидний сүүлчийн алхамд үүсгэсэн нэмэлт MyExcelAddin Excel-д холбогдсон байх ёстой. Үүнийг хийхийн тулд цэс рүү очно уу Файл - Сонголтууд - Нэмэлтүүд (Файл - Сонголтууд - Нэмэлтүүд), товчлуур дээр дарна уу Тухай (Явах) цонхны доод талд. Нээгдсэн цонхон дээр товчлуур дээр дарна уу тойм (Үзэх) мөн манай нэмэлт файлын байршлыг зааж өгнө үү.

Хэрэв та бүх зүйлийг зөв хийсэн бол манайх MyExcelAddin боломжтой нэмэлтүүдийн жагсаалтад харагдах ёстой:

Алхам 3. Нэмэлтэд макро нэмнэ үү

Манай нэмэлт нь Excel-д холбогдсон бөгөөд амжилттай ажиллаж байгаа боловч одоогоор нэг ч макро байхгүй байна. Үүнийг дүүргэцгээе. Үүнийг хийхийн тулд Visual Basic засварлагчийг гарын товчлолоор нээнэ үү Alt+F11 эсвэл товчлуураар Visual Basic таб Developer (Хөгжүүлэгч). Хэрэв таб Developer харагдахгүй, дамжуулан харуулах боломжтой Файл - Сонголтууд - Туузны тохиргоо (Файл - Сонголтууд - Туузыг тохируулах).

Редакторын зүүн дээд буланд цонх байх ёстой Төслийн (хэрэв энэ нь харагдахгүй бол цэсээр дамжуулан асаана уу Харах - Төслийн хөтөч):

Энэ цонхонд манайхыг оруулаад бүх нээлттэй ажлын номууд болон Microsoft Excel-ийн нэмэлт програмуудыг харуулдаг. VBAProject (MyExcelAddin.xlam) Үүнийг хулганаар сонгоод цэсээр дамжуулан түүнд шинэ модуль нэмнэ үү Оруулах - Модуль. Энэ модульд бид нэмэлт макронуудынхаа VBA кодыг хадгалах болно.

Та кодыг эхнээс нь бичиж болно (хэрэв та хэрхэн програмчлахаа мэддэг бол), эсвэл бэлэн газраас хуулж авах боломжтой (энэ нь илүү хялбар). Туршилтын хувьд энгийн боловч хэрэгтэй макроны кодыг нэмсэн хоосон модуль руу оруулна уу.

Кодоо оруулсны дараа зүүн дээд буланд байрлах хадгалах товчийг (дискет) дарахаа бүү мартаарай.

Манай макро ТомъёоУтга, таны төсөөлж байгаачлан томъёог урьдчилан сонгосон муж дахь утга болгон хувиргадаг. Заримдаа эдгээр макрог бас нэрлэдэг журам. Үүнийг ажиллуулахын тулд та томьёо бүхий нүднүүдийг сонгоод тусгай харилцах цонхыг нээх хэрэгтэй Макроны табаас Developer (Хөгжүүлэгч — Макро) эсвэл гарын товчлол Alt+F8. Ихэвчлэн энэ цонхонд бүх нээлттэй ажлын номнуудын боломжтой макронууд харагдана, гэхдээ нэмэлт макронууд энд харагдахгүй. Гэсэн хэдий ч бид процедурын нэрийг талбарт оруулж болно макро нэр (Макро нэр)тэгээд товчийг дарна уу Run (гүйх) – мөн манай макро ажиллах болно:

    

Энд та макро хурдан эхлүүлэхийн тулд гарын товчлолыг зааж өгч болно - товчлуур нь үүнийг хариуцдаг Үзүүлэлтүүд (Сонголтууд) өмнөх цонхонд Макро:

Түлхүүрүүдийг хуваарилахдаа том жижиг үсгийн болон гарын байрлалд мэдрэмтгий байдгийг санаарай. Тэгэхээр та хослолыг оноож байгаа бол гэх мэт Ctrl+Й, тэгээд үнэндээ ирээдүйд та байршлыг асаасан эсэхээ шалгаад нэмэлт товчлуур дээр дарах хэрэгтэй болно. Shiftтом үсгийг авахын тулд.

Тохиромжтой болгохын тулд бид цонхны зүүн дээд буланд байрлах хурдан нэвтрэх хэрэгслийн мөрөнд макро товчлуураа нэмж болно. Үүнийг хийхийн тулд сонгоно уу Файл - Сонголтууд - Хурдан нэвтрэх хэрэгслийн самбар (Файл - Сонголтууд - Түргэн хандалтын хэрэгслийн самбарыг өөрчлөх), дараа нь цонхны дээд хэсэгт байрлах унадаг жагсаалтаас сонголтыг сонгоно уу Макроны. Үүний дараа манай макро ТомъёоУтга товчлуураар самбар дээр байрлуулж болно нэмэх (Нэмэх) мөн товчлуураар дүрсийг сонгоно уу Change (Засварлах):

Алхам 4. Нэмэлтэнд функц нэмнэ

гэхдээ макро процедурууд, мөн түүнчлэн функцийн макро эсвэл тэднийг дууддаг UDF (Хэрэглэгчийн тодорхойлсон функц = хэрэглэгчийн тодорхойлсон функц). Нэмэлт дээрээ тусдаа модуль үүсгэцгээе (цэсний команд Оруулах - Модуль) болон дараах функцийн кодыг энд оруулна уу:

Энэ функц нь НӨАТ орсон дүнгээс НӨАТ-ыг гаргахад шаардлагатай гэдгийг харахад хялбар байдаг. Мэдээжийн хэрэг Ньютоны бином биш, гэхдээ энэ нь бидэнд үндсэн зарчмуудыг харуулах жишээ болгон өгөх болно.

Функцийн синтакс нь процедураас өөр гэдгийг анхаарна уу:

  • барилга байгууламжийг ашиглаж байна Функц…. Төгсгөлийн функц оронд нь Дэд … Төгсгөлийн дэд
  • функцийн нэрний дараа түүний аргументуудыг хаалтанд бичнэ
  • функцийн үндсэн хэсэгт шаардлагатай тооцооллыг хийж, үр дүнг функцийн нэр бүхий хувьсагчдад онооно.

Мөн энэ функц шаардлагагүй бөгөөд харилцах цонхоор өмнөх макро процедур шиг ажиллах боломжгүй гэдгийг анхаарна уу Макроны ба товчлуур Run. Ийм макро функцийг ажлын хуудасны стандарт функц болгон ашиглах ёстой (SUM, IF, VLOOKUP...), өөрөөр хэлбэл зүгээр л дурын нүдэнд оруулаад үнийн дүнгийн утгыг НӨАТ-тай аргумент болгон зааж өгнө.

… эсвэл функц оруулахын тулд стандарт харилцах цонхоор оруулна уу (товч fx томьёоны мөрөнд) ангилал сонгох Хэрэглэгчийн тодорхойлсон (Хэрэглэгчийн тодорхойлсон):

Энд байгаа цорын ганц тааламжгүй мөч бол цонхны доод хэсэгт функцийн ердийн тайлбар байхгүй байх явдал юм. Үүнийг нэмэхийн тулд та дараахь зүйлийг хийх хэрэгтэй.

  1. Visual Basic Editor-ийг гарын товчлолоор нээнэ үү Alt+F11
  2. Төслийн самбараас нэмэлтийг сонгоод товчлуурыг дарна уу F2Object Browser цонхыг нээх
  3. Цонхны дээд хэсэгт байрлах унадаг жагсаалтаас нэмэлт төслөө сонгоно уу
  4. Гарч ирсэн функц дээр хулганы баруун товчийг дараад командыг сонгоно уу Үл хөдлөх хөрөнгө.
  5. Цонхонд функцийн тайлбарыг оруулна уу Тодорхойлолт
  6. Нэмэлт файлыг хадгална уу мөн excel-г дахин эхлүүлнэ үү.

Дахин эхлүүлсний дараа функц нь бидний оруулсан тайлбарыг харуулах ёстой:

Алхам 5. Интерфейст нэмэлт таб үүсгэ

Заавал биш боловч тааламжтай мэдрэгчтэй зүйл бол бидний макро ажиллуулах товчлуур бүхий тусдаа таб үүсгэх бөгөөд энэ нь бидний нэмэлтийг холбосны дараа Excel интерфейс дээр гарч ирнэ.

Анхдагч байдлаар харагдах табуудын тухай мэдээлэл нь номонд агуулагдах бөгөөд тусгай XML кодоор форматлагдсан байх ёстой. Ийм кодыг бичих, засах хамгийн хялбар арга бол тусгай программууд - XML ​​редакторуудын тусламжтайгаар юм. Хамгийн тохиромжтой (мөн үнэ төлбөргүй) нэг бол Максим Новиковын хөтөлбөр юм Ribbon XML редактор.

Түүнтэй ажиллах алгоритм нь дараах байдалтай байна.

  1. Нэмэлт XML кодыг засварлахад файлын зөрчил гарахгүйн тулд бүх Excel цонхыг хаа.
  2. Ribbon XML Editor програмыг ажиллуулж, дотор нь манай MyExcelAddin.xlam файлыг нээнэ үү.
  3. Товчлууртай ТАВ зүүн дээд буланд шинэ табын кодын хэсгийг нэмнэ үү:
  4. Та хоосон ишлэл оруулах хэрэгтэй id манай таб болон бүлэг (ямар ч өвөрмөц танигч), мөн дотор хаяг – манай таб болон түүн дээрх товчлууруудын нэрс:
  5. Товчлууртай товч зүүн самбар дээр товчлуурын хоосон код нэмээд шошго нэмнэ үү:

    - шошго товчлуур дээрх текст юм

    - imageMso — энэ бол товчлуур дээрх зургийн нөхцөлт нэр юм. Би AnimationCustomAddExitDialog нэртэй улаан товчлуурын дүрсийг ашигласан. Хэрэв та "imageMso" гэсэн түлхүүр үгсийг хайж байгаа бол бүх боломжтой товчлууруудын нэрийг (мөн хэдэн зуун байдаг!) Интернет дэх олон тооны сайтуудаас олж болно. Эхлэхийн тулд та энд очиж болно.

    - onAction – энэ бол буцаан залгах процедурын нэр юм – манай үндсэн макро ажиллуулах тусгай богино макро ТомъёоУтга. Та энэ процедурыг хүссэнээрээ дуудаж болно. Бид үүнийг хэсэг хугацааны дараа нэмэх болно.

  6. Хэрэгслийн самбарын дээд талд байрлах ногоон тэмдэглэгээ бүхий товчлуурыг ашиглан хийсэн бүх зүйл зөв эсэхийг шалгаж болно. Үүнтэй ижил газарт уян дискний товчлуур дээр дарж бүх өөрчлөлтийг хадгална уу.
  7. Ribbon XML редакторыг хаа
  8. Excel програмыг нээж, Visual Basic засварлагч руу орж, манай макро руу залгах процедурыг нэмнэ үү Алах томъёоЭнэ нь томьёог утгуудаар солихын тулд бидний үндсэн макро ажиллуулдаг.
  9. Бид өөрчлөлтүүдийг хадгалж, Excel рүү буцаж очоод үр дүнг шалгана уу.

Энэ бол бүх зүйл - нэмэлтийг ашиглахад бэлэн байна. Үүнийг өөрийн журам, функцээр дүүргэж, гоёмсог товчлууруудыг нэмээрэй - энэ нь таны ажилд макро ашиглахад илүү хялбар болно.

  • Макро гэж юу вэ, тэдгээрийг ажилдаа хэрхэн ашиглах, Visual Basic дээр макро кодыг хаанаас авах вэ.
  • Excel програм дээр ажлын ном нээх үед хэрхэн дэлгэцийг гаргах вэ
  • Хувийн макро ном гэж юу вэ, түүнийг хэрхэн ашиглах талаар

хариу үлдээх