საუკეთესო VBA სახელმძღვანელო (დამწყებთათვის) რაც თქვენ ოდესმე დაგჭირდებათ

Admin

VBA პროგრამირება პლატფორმა, რომელიც მუშაობს Microsoft Office– ის თითქმის ყველა პროდუქტში, არის ერთ – ერთი ყველაზე მძლავრი ინსტრუმენტი, რომელსაც ნებისმიერს შეუძლია გამოიყენოს ამ პროდუქტების გამოყენების გასაუმჯობესებლად.

დამწყებთათვის ეს VBA სახელმძღვანელო გაჩვენებთ თუ როგორ უნდა დაამატოთ დეველოპერის მენიუ თქვენს ოფისში, როგორ შეიყვანოთ VBA რედაქტორი ფანჯარა და როგორ მუშაობს ძირითადი VBA განცხადებები და მარყუჟები, ასე რომ თქვენ შეგიძლიათ დაიწყოთ VBA– ს გამოყენება Excel, Word, Powerpoint, Outlook და OneNote.

Სარჩევი

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

როგორ ჩართოთ და გამოიყენოთ VBA რედაქტორი

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

თქვენ შეისწავლით თუ როგორ უნდა გააკეთოთ ეს ჩვენი მოწინავე VBA სახელმძღვანელოდან.

  • ნებისმიერი საოფისე პროდუქტის დეველოპერის მენიუს გასააქტიურებლად, აირჩიეთ ფაილი მენიუ და აირჩიეთ Პარამეტრები ნავიგაციის მარცხენა მენიუდან.
  • თქვენ ნახავთ პარამეტრების მენიუს ამომხტარი. აირჩიეთ მორგება ლენტი ნავიგაციის მარცხენა მენიუდან.

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

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

ზოგადი VBA პროგრამირების რჩევები დამწყებთათვის

თქვენ შეამჩნევთ, როდესაც VBA რედაქტორი იხსნება, მარცხენა პანელში ნავიგაციის პარამეტრები განსხვავდება ერთი Office პროგრამისგან.

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

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

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

სად განათავსოთ VBA კოდი

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

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

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

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

VBA IF განცხადებები

IF განცხადება მუშაობს VBA– ში ისევე, როგორც მუშაობს სხვა პროგრამირების ენაზე.

IF განცხადების პირველი ნაწილი განიხილავს თუ არა პირობა ან პირობების სიმართლე. ამ პირობებს შეიძლება შეუერთდეს AND ან OR ოპერატორი მათ ერთმანეთთან დასაკავშირებლად.

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

თუ უჯრედები (2, 2)> 75 მაშინ უჯრედები (2, 3) = "გაივლის" სხვა უჯრედები (2, 3) = "ვერ ხერხდება"

თუ არ გსურთ მთელი განაცხადი ერთ სტრიქონზე, შეგიძლიათ გაყოთ იგი მრავალ ხაზად ხაზების ბოლოს "_" სიმბოლოს დამატებით.

თუ უჯრედები (2, 2)> 75 მაშინ _
უჯრედები (2, 3) = "სხვა"
უჯრედები (2, 3) = "მარცხი"

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

VBA შემდეგი მარყუჟებისთვის

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

ამ შემთხვევაში დაგჭირდებათ FOR მარყუჟი.

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

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

Dim rng როგორც დიაპაზონი, უჯრედი როგორც დიაპაზონი
Dim rowCounter როგორც მთელი რიცხვი

განსაზღვრეთ დიაპაზონის ზომა შემდეგნაირად.

დააყენეთ rng = დიაპაზონი ("B2: B7")
rowCounter = 2

დაბოლოს, თქვენ შეგიძლიათ შექმნათ თქვენი მარყუჟი, რომ გაიაროთ ყველა უჯრედი ამ დიაპაზონში და გააკეთოთ შედარება.

რენგის თითოეული უჯრედისთვისთუ უჯრედი. ღირებულება> 75 მაშინ _ უჯრედები (rowCounter, 3) = "სხვა" უჯრედები (rowCounter, 3) = "ვერ" rowCounter = rowCounter + 1შემდეგი უჯრედი

ერთხელ ეს VBA სკრიპტი გაშვებულია, თქვენ ხედავთ შედეგებს რეალურ ცხრილში.

VBA მიუხედავად იმისა, რომ მარყუჟები

მიუხედავად იმისა, რომ მარყუჟი ასევე ახორციელებს განცხადებების სერიას, ისევე როგორც FOR მარყუჟს, მაგრამ მარყუჟის გაგრძელების პირობა არის მდგომარეობა, რომელიც დარჩა ჭეშმარიტი.

მაგალითად, თქვენ შეგიძლიათ ჩაწეროთ იგივე მარყუჟი ზემოთ, WHILE მარყუჟის გამოყენებით, rowCounter ცვლადის გამოყენებით შემდეგნაირად.

ხოლო rowCounter თუ უჯრედები (rowCounter, 2)> 75 მაშინ _ უჯრედები (rowCounter, 3) = "სხვა" უჯრედები (rowCounter, 3) = "ვერ" rowCounter = rowCounter + 1ვენდ

შენიშვნა: რენგ დათვლა + 2 შეწყვეტის ლიმიტი საჭიროა, რადგან მწკრივის მრიცხველი იწყება 2 -დან და უნდა დასრულდეს მე -7 სტრიქონზე, სადაც მონაცემები მთავრდება. თუმცა, დიაპაზონის რაოდენობა (B2: B7) არის მხოლოდ 6, ხოლო while მარყუჟი დასრულდება მხოლოდ მას შემდეგ, რაც მრიცხველი იქნება მრიცხველზე დიდი - ასე რომ, ბოლო რიგის საზომი მნიშვნელობა უნდა იყოს 8 (ან rng. დათვლა + 2).

თქვენ ასევე შეგიძლიათ შექმნათ while მარყუჟი შემდეგნაირად:

ხოლო rowCounter <= rng. დათვლა + 1

შეგიძლიათ მხოლოდ დიაპაზონის რაოდენობა (6) გაზარდოთ 1 -ით, რადგან მას შემდეგ რაც rowCounter ცვლადი მიაღწევს მონაცემთა ბოლოს (სტრიქონი 7), მარყუჟს შეუძლია დასრულება.

VBA გააკეთე სანამ და გააკეთე სანამ მარყუჟები

გააკეთეთ სანამ და გააკეთეთ სანამ მარყუჟები თითქმის იდენტურია მარყუჟების while, მაგრამ მუშაობენ ოდნავ განსხვავებულად.

  • ხოლო მარყუჟი ამოწმებს არის თუ არა პირობა ჭეშმარიტი მარყუჟის დასაწყისში.
  • Do-while Loop ამოწმებს არის თუ არა პირობა ჭეშმარიტი მარყუჟის განცხადებების შესრულების შემდეგ.
  • Do-სანამ მარყუჟი ამოწმებს თუ არა პირობა ჯერ კიდევ ყალბი მარყუჟის შესრულების შემდეგ.

ამ შემთხვევაში თქვენ გადაწერეთ while მარყუჟი ზემოთ, როგორც Do-while მარყუჟი.

Კეთებათუ უჯრედები (rowCounter, 2)> 75 მაშინ _ უჯრედები (rowCounter, 3) = "სხვა" უჯრედები (rowCounter, 3) = "ვერ"rowCounter = rowCounter + 1Loop while rowCounter 

ამ შემთხვევაში ლოგიკა დიდად არ იცვლება, მაგრამ თუ გსურთ დარწმუნდეთ, რომ ლოგიკური შედარება ხდება ყოველივე ამის შემდეგ განცხადებები გაშვებულია (საშუალებას აძლევს მათ ყველას გაუშვან რაც არ უნდა ერთხელ მაინც), შემდეგ Do-while ან Do-till მარყუჟი სწორია ვარიანტი.

VBA აირჩიეთ შემთხვევის განცხადებები

ლოგიკური განცხადების ბოლო ტიპი, რომელიც უნდა გესმოდეთ თქვენი VBA კოდის სტრუქტურირების დასაწყებად არის Select Case განცხადებები.

ზემოთ მოყვანილი მაგალითის გათვალისწინებით, ვთქვათ, რომ გსურთ გქონდეთ შეფასების მეთოდი, რომელიც არ არის მხოლოდ ჩავარდნილი. ამის ნაცვლად, თქვენ გსურთ მიანიჭოთ ასო A– დან F– მდე.

ამის გაკეთება შეგიძლიათ შემდეგი Select Case განცხადებით:

რენგის თითოეული უჯრედისთვისაირჩიეთ კაზუსი საქმე 95 -დან 100 -მდე უჯრედები (rowCounter, 3) = "A"საქმე 85 -დან 94 -მდე უჯრედები (rowCounter, 3) = "B" საქმე 75 -დან 84 -მდე უჯრედები (rowCounter, 3) = "C" საქმე 65 -დან 74 -მდე უჯრედები (rowCounter, 3) = "D" საქმე 0 -დან 64 -მდე უჯრედები (rowCounter, 3) = "F" დასრულების არჩევაrowCounter = rowCounter + 1შემდეგი უჯრედი

შედეგად მიღებული ცხრილი ამ VBA სკრიპტის გაშვების შემდეგ ჰგავს ქვემოთ.

ახლა თქვენ იცით ყველაფერი რაც თქვენ უნდა იცოდეთ იმისათვის, რომ დაიწყოთ VBA– ს გამოყენება თქვენს Microsoft Office პროგრამებში.

კეთილი იყოს თქვენი მობრძანება Help Desk Geek– ში, ბლოგი სავსე ტექნიკური რჩევებით სანდო ტექნიკური ექსპერტებისგან. ჩვენ გვაქვს ათასობით სტატია და სახელმძღვანელო, რომელიც დაგეხმარებათ ნებისმიერი საკითხის მოგვარებაში. ჩვენი სტატიები წაკითხულია 150 მილიონზე მეტჯერ მას შემდეგ, რაც დავიწყეთ 2008 წელს.

ჩვენ ასევე გვძულს სპამი, გამოწერის გაუქმება ნებისმიერ დროს.

როგორ შევქმნათ ფლაერი Microsoft Word-ში
როგორ შევქმნათ ფლაერი Microsoft Word-ში

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

როგორ დავაფიქსიროთ #N/A შეცდომები Excel-ის ფორმულებში, როგორიცაა VLOOKUP
როგორ დავაფიქსიროთ #N/A შეცდომები Excel-ის ფორმულებში, როგორიცაა VLOOKUP

Microsoft Excel-მა შეიძლება დააბრუნოს შეცდომა, როდესაც თქვენ შეიყვანთ მნიშვნელობას ან ცდილობთ შეა...

როგორ გავასწოროთ მართლწერის შემოწმება, რომელიც არ მუშაობს Word-ში
როგორ გავასწოროთ მართლწერის შემოწმება, რომელიც არ მუშაობს Word-ში

Microsoft Word-ის ჩაშენებული მართლწერის შემოწმება უზრუნველყოფს თქვენს დოკუმენტებს არ შეიცავს ორთო...