როგორ მოვახდინოთ რუტინული ამოცანების ავტომატიზაცია Excel-ში მაკროებით

Excel-ს აქვს მძლავრი, მაგრამ ამავე დროს ძალიან იშვიათად გამოყენებული, მაკროების გამოყენებით მოქმედებების ავტომატური თანმიმდევრობის შექმნის შესაძლებლობა. მაკრო იდეალური გამოსავალია, თუ საქმე გაქვთ იგივე ტიპის დავალებასთან, რომელიც ბევრჯერ მეორდება. მაგალითად, მონაცემთა დამუშავება ან დოკუმენტის ფორმატირება სტანდარტიზებული შაბლონის მიხედვით. ამ შემთხვევაში, თქვენ არ გჭირდებათ პროგრამირების ენების ცოდნა.

უკვე გაინტერესებთ რა არის მაკრო და როგორ მუშაობს იგი? მაშინ თამამად გააგრძელეთ - მაშინ ჩვენ ეტაპობრივად გავაკეთებთ მაკროს შექმნის მთელ პროცესს თქვენთან ერთად.

რა არის მაკრო?

მაკრო Microsoft Office-ში (დიახ, ეს ფუნქცია ერთნაირად მუშაობს Microsoft Office პაკეტის ბევრ აპლიკაციაში) არის პროგრამის კოდი პროგრამირების ენაზე. Visual Basic პროგრამებისთვის (VBA) ინახება დოკუმენტში. უფრო გასაგებად რომ ვთქვათ, Microsoft Office-ის დოკუმენტი შეიძლება შევადაროთ HTML გვერდს, მაშინ მაკრო არის Javascript-ის ანალოგი. ის, რისი გაკეთებაც Javascript-ს შეუძლია ვებ გვერდზე HTML მონაცემებით, ძალიან ჰგავს იმას, რისი გაკეთებაც მაკროს შეუძლია Microsoft Office დოკუმენტის მონაცემებთან.

მაკროს შეუძლია გააკეთოს ყველაფერი, რაც გსურთ დოკუმენტში. აქ არის რამდენიმე მათგანი (ძალიან მცირე ნაწილი):

  • გამოიყენეთ სტილი და ფორმატირება.
  • შეასრულეთ სხვადასხვა ოპერაციები რიცხვითი და ტექსტური მონაცემებით.
  • გამოიყენეთ გარე მონაცემთა წყაროები (მონაცემთა ბაზის ფაილები, ტექსტური დოკუმენტები და ა.შ.)
  • შექმენით ახალი დოკუმენტი.
  • გააკეთეთ ყოველივე ზემოთქმული ნებისმიერ კომბინაციაში.

მაკროს შექმნა - პრაქტიკული მაგალითი

მაგალითად, ავიღოთ ყველაზე გავრცელებული ფაილი CSV. ეს არის მარტივი 10×20 ცხრილი, რომელიც ივსება 0-დან 100-მდე რიცხვებით, სვეტებისა და რიგების სათაურებით. ჩვენი ამოცანაა გადავაქციოთ ეს მონაცემთა ნაკრები პრეზენტაციად ფორმატირებულ ცხრილად და შევქმნათ ჯამები თითოეულ რიგში.

როგორც უკვე აღვნიშნეთ, მაკრო არის კოდი დაწერილი VBA პროგრამირების ენაზე. მაგრამ Excel-ში შეგიძლიათ შექმნათ პროგრამა კოდის ხაზის დაწერის გარეშე, რასაც ჩვენ გავაკეთებთ ახლავე.

მაკროს შესაქმნელად, გახსენით ნახვა (ტიპი) > Macros (მაკრო) > მაკროს ჩაწერა (მაკრო ჩაწერა...)

მიეცით თქვენს მაკროს სახელი (სივრცის გარეშე) და დააწკაპუნეთ OK.

ამ მომენტიდან დაწყებული, დოკუმენტთან დაკავშირებული ყველა თქვენი მოქმედება ჩაიწერება: ცვლილებები უჯრედებში, ცხრილის გადახვევა, ფანჯრის ზომის შეცვლაც კი.

Excel მიუთითებს, რომ მაკრო ჩაწერის რეჟიმი ჩართულია ორ ადგილას. პირველ რიგში, მენიუში Macros (მაკროები) – სტრიქონის ნაცვლად მაკროს ჩაწერა (მაკრო ჩაწერა…) ხაზი გამოჩნდა ჩაწერის შეჩერება (შეაჩერე ჩაწერა).

მეორე, Excel ფანჯრის ქვედა მარცხენა კუთხეში. Ხატი გაჩერება (პატარა კვადრატი) მიუთითებს, რომ ჩართულია მაკრო ჩაწერის რეჟიმი. მასზე დაწკაპუნება შეწყვეტს ჩაწერას. პირიქით, როდესაც ჩაწერის რეჟიმი არ არის ჩართული, არის ხატულა ამ ადგილას მაკრო ჩაწერის გასააქტიურებლად. მასზე დაწკაპუნება იგივე შედეგს მოგცემთ, რაც ჩაწერის მენიუს მეშვეობით ჩართეთ.

ახლა, როდესაც ჩართულია მაკრო ჩაწერის რეჟიმი, მოდით გადავიდეთ ჩვენს ამოცანაზე. უპირველეს ყოვლისა, მოდით დავამატოთ სათაურები შემაჯამებელი მონაცემებისთვის.

Next, enter the formulas in the cells in accordance with the names of the headings (variants of the formulas for the English and versions of Excel are given, cell addresses are always Latin letters and numbers):

  • =SUM(B2:K2) or =SUM(B2:K2)
  • =საშუალო (B2:K2) or =СРЗНАЧ(B2:K2)
  • =MIN(B2:K2) or =MIN(B2:K2)
  • =MAX(B2:K2) or =MAX(B2:K2)
  • =მედიანი (B2:K2) or =მედიანი (B2:K2)

ახლა შეარჩიეთ უჯრედები ფორმულებით და დააკოპირეთ ისინი ჩვენი ცხრილის ყველა რიგში ავტომატური შევსების სახელურის გადათრევით.

ამ ნაბიჯის დასრულების შემდეგ, თითოეულ მწკრივს უნდა ჰქონდეს შესაბამისი ჯამები.

შემდეგი, ჩვენ შევაჯამებთ შედეგებს მთელი ცხრილისთვის, ამისათვის ჩვენ ვაკეთებთ კიდევ რამდენიმე მათემატიკურ ოპერაციას:

შესაბამისად:

  • =SUM(L2:L21) or =SUM(L2:L21)
  • =საშუალო (B2:K21) or =СРЗНАЧ(B2:K21) – ამ მნიშვნელობის გამოსათვლელად საჭიროა ზუსტად ავიღოთ ცხრილის საწყისი მონაცემები. თუ ცალკეული მწკრივების საშუალოს აიღებთ, შედეგი განსხვავებული იქნება.
  • =MIN(N2:N21) or =MIN(N2:N21)
  • =MAX(O2:O21) or =MAX(O2:O21)
  • =მედიანი (B2:K21) or =მედიანი (B2:K21) – განვიხილავთ ცხრილის საწყისი მონაცემების გამოყენებას, ზემოთ აღნიშნული მიზეზის გამო.

ახლა, როდესაც ჩვენ დავასრულეთ გამოთვლები, მოდით გავაკეთოთ გარკვეული ფორმატირება. პირველი, მოდით დავაყენოთ მონაცემთა ჩვენების იგივე ფორმატი ყველა უჯრედისთვის. აირჩიეთ ფურცელზე არსებული ყველა უჯრედი, ამისათვის გამოიყენეთ კლავიატურის მალსახმობი Ctrl + Aან დააწკაპუნეთ ხატულაზე მონიშნეთ ყველა, რომელიც მდებარეობს მწკრივისა და სვეტის სათაურების გადაკვეთაზე. შემდეგ დააწკაპუნეთ მძიმით სტილი (განსაზღვრული ფორმატი) ჩანართი მთავარი (სახლი).

შემდეგი, შეცვალეთ სვეტისა და მწკრივის სათაურების გარეგნობა:

  • თამამი შრიფტის სტილი.
  • ცენტრის გასწორება.
  • ფერის შევსება.

და ბოლოს, მოდით დავაყენოთ ჯამების ფორმატი.

ასე უნდა გამოიყურებოდეს საბოლოოდ:

თუ ყველაფერი მოგეწონებათ, შეწყვიტე მაკროს ჩაწერა.

გილოცავ! თქვენ ახლახან ჩაწერეთ თქვენი პირველი მაკრო Excel-ში.

გენერირებული მაკროს გამოსაყენებლად, ჩვენ უნდა შევინახოთ Excel დოკუმენტი ფორმატში, რომელიც მხარს უჭერს მაკროებს. ჯერ ჩვენ მიერ შექმნილი ცხრილიდან უნდა წავშალოთ ყველა მონაცემი, ანუ ცარიელ შაბლონად ვაქციოთ. ფაქტია, რომ მომავალში, ამ შაბლონთან მუშაობისას, ჩვენ მასში შემოვიტანთ უახლეს და შესაბამის მონაცემებს.

ყველა უჯრედის მონაცემების გასასუფთავებლად, დააწკაპუნეთ მაუსის მარჯვენა ღილაკით ხატულაზე მონიშნეთ ყველა, რომელიც მდებარეობს მწკრივისა და სვეტის სათაურების გადაკვეთაზე და კონტექსტური მენიუდან აირჩიეთ წაშლა (წაშლა).

ახლა ჩვენი ფურცელი მთლიანად გასუფთავებულია ყველა მონაცემისგან, ხოლო მაკრო რჩება ჩაწერილი. ჩვენ უნდა შევინახოთ სამუშაო წიგნი, როგორც მაკრო ჩართული Excel შაბლონი, რომელსაც აქვს გაფართოება XLTM.

მნიშვნელოვანი წერტილი! თუ ფაილს გაფართოებით შეინახავთ XLTX, მაშინ მასში მაკრო არ იმუშავებს. სხვათა შორის, შეგიძლიათ შეინახოთ სამუშაო წიგნი Excel 97-2003 შაბლონად, რომელსაც აქვს ფორმატი XLTის ასევე მხარს უჭერს მაკროებს.

როდესაც შაბლონი ინახება, შეგიძლიათ უსაფრთხოდ დახუროთ Excel.

მაკროს გაშვება Excel-ში

სანამ თქვენს მიერ შექმნილი მაკროს ყველა შესაძლებლობას გამოავლენთ, ვფიქრობ, სწორია ყურადღება მივაქციოთ რამდენიმე მნიშვნელოვან პუნქტს ზოგადად მაკროსთან დაკავშირებით:

  • მაკრო შეიძლება იყოს საზიანო.
  • კიდევ ერთხელ წაიკითხეთ წინა პუნქტი.

VBA კოდი ძალიან ძლიერია. კერძოდ, მას შეუძლია შეასრულოს ოპერაციები ფაილებზე მიმდინარე დოკუმენტის გარეთ. მაგალითად, მაკროს შეუძლია წაშალოს ან შეცვალოს ნებისმიერი ფაილი საქაღალდეში ჩემი დოკუმენტები. ამ მიზეზით, გაუშვით და დაუშვით მაკროები მხოლოდ იმ წყაროებიდან, რომლებსაც ენდობით.

ჩვენი მონაცემთა ფორმატირების მაკრო გასაშვებად, გახსენით შაბლონის ფაილი, რომელიც შევქმენით ამ გაკვეთილის პირველ ნაწილში. თუ თქვენ გაქვთ უსაფრთხოების სტანდარტული პარამეტრები, მაშინ ფაილის გახსნისას ცხრილის ზემოთ გამოჩნდება გაფრთხილება, რომ მაკროები გამორთულია და ღილაკი მათ გასააქტიურებლად. ვინაიდან შაბლონი ჩვენ თვითონ გავაკეთეთ და საკუთარ თავს ვენდობით, ვაჭერთ ღილაკს ჩართეთ შინაარსი (შიგთავსის ჩათვლით).

შემდეგი ნაბიჯი არის ფაილიდან უახლესი განახლებული მონაცემთა ნაკრების იმპორტი CSV (ასეთ ფაილზე დაყრდნობით ჩვენ შევქმენით ჩვენი მაკრო).

CSV ფაილიდან მონაცემების იმპორტისას, Excel-მა შეიძლება მოგთხოვოთ გარკვეული პარამეტრების დაყენება, რათა სწორად გადაიტანოთ მონაცემები ცხრილში.

როდესაც იმპორტი დასრულდება, გადადით მენიუში Macros (მაკროები) ჩანართი ნახვა (ნახვა) და აირჩიეთ ბრძანება მაკროების ნახვა (მაკრო).

დიალოგურ ფანჯარაში, რომელიც იხსნება, ჩვენ დავინახავთ ხაზს ჩვენი მაკროს სახელით FormatData. აირჩიეთ და დააწკაპუნეთ გასაშვებად (შეასრულეთ).

როდესაც მაკრო დაიწყებს გაშვებას, დაინახავთ ცხრილის კურსორის გადახტომას უჯრედიდან უჯრედში. რამდენიმე წამის შემდეგ, იგივე ოპერაციები შესრულდება მონაცემებით, რაც მაკროს ჩაწერისას. როდესაც ყველაფერი მზად იქნება, ცხრილი უნდა გამოიყურებოდეს ისეთივე, როგორც ორიგინალი, რომელიც ხელით დავაფორმატეთ, მხოლოდ უჯრედებში განსხვავებული მონაცემებით.

მოდით შევხედოთ კაპოტის ქვეშ: როგორ მუშაობს მაკრო?

როგორც არაერთხელ აღვნიშნეთ, მაკრო არის პროგრამის კოდი პროგრამირების ენაზე. Visual Basic პროგრამებისთვის (VBA). როდესაც ჩართავთ მაკრო ჩაწერის რეჟიმს, Excel რეალურად ჩაწერს თქვენს მიერ განხორციელებულ ყველა მოქმედებას VBA ინსტრუქციების სახით. მარტივად რომ ვთქვათ, Excel წერს კოდს თქვენთვის.

ამ პროგრამის კოდის სანახავად გჭირდებათ მენიუში Macros (მაკროები) ჩანართი ნახვა (ნახვა) დააწკაპუნეთ მაკროების ნახვა (მაკროები) და დიალოგურ ფანჯარაში, რომელიც იხსნება, დააწკაპუნეთ რედაქტირება (შეცვლა).

ფანჯარა იხსნება. Visual Basic პროგრამებისთვის, რომელშიც დავინახავთ ჩვენ მიერ ჩაწერილი მაკროს პროგრამულ კოდს. დიახ, სწორად გაიგეთ, აქ შეგიძლიათ შეცვალოთ ეს კოდი და კიდევ შექმნათ ახალი მაკრო. ამ გაკვეთილზე ცხრილით შესრულებული მოქმედებები შეიძლება ჩაიწეროს Excel-ში ავტომატური მაკრო ჩაწერის გამოყენებით. მაგრამ უფრო რთული მაკროები, დახვეწილი თანმიმდევრობით და მოქმედებების ლოგიკით, საჭიროებს ხელით პროგრამირებას.

დავამატოთ კიდევ ერთი ნაბიჯი ჩვენს ამოცანას…

წარმოიდგინეთ, რომ ჩვენი ორიგინალური მონაცემთა ფაილი მონაცემები.csv იქმნება ავტომატურად გარკვეული პროცესით და ყოველთვის ინახება დისკზე იმავე ადგილას. Მაგალითად, C:Datadata.csv – ფაილის გზა განახლებული მონაცემებით. ამ ფაილის გახსნისა და მისგან მონაცემების იმპორტის პროცესი ასევე შეიძლება ჩაიწეროს მაკროში:

  1. გახსენით შაბლონის ფაილი, სადაც შევინახეთ მაკრო − FormatData.
  2. შექმენით ახალი მაკრო სახელად ჩატვირთვა მონაცემები.
  3. მაკროს ჩაწერისას ჩატვირთვა მონაცემები ფაილიდან მონაცემების იმპორტი მონაცემები.csv – როგორც გავაკეთეთ გაკვეთილის წინა ნაწილში.
  4. როდესაც იმპორტი დასრულდება, შეწყვიტე მაკროს ჩაწერა.
  5. წაშალეთ ყველა მონაცემი უჯრედებიდან.
  6. შეინახეთ ფაილი, როგორც მაკრო ჩართული Excel შაბლონი (XLTM გაფართოება).

ამრიგად, ამ შაბლონის გაშვებით, თქვენ მიიღებთ წვდომას ორ მაკროზე - ერთი იტვირთება მონაცემებს, მეორე აფორმატებს მათ.

თუ გსურთ შეხვიდეთ პროგრამირებაში, შეგიძლიათ დააკავშიროთ ამ ორი მაკროსის მოქმედება ერთში - უბრალოდ კოდის კოპირებით. ჩატვირთვა მონაცემები კოდის დასაწყისამდე FormatData.

დატოვე პასუხი