ᲙომპიუტერებიᲞროგრამული უზრუნველყოფა

VBA Excel: ნიმუში პროგრამები. Macros in Excel

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

რა არის VBA

პროგრამირება Excel კეთდება Visual Basic განაცხადის პროგრამირების ენა, რომელიც თავდაპირველად აგებული ყველაზე ცნობილი ცხრილების Microsoft.

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

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

ობიექტები, კრებული, თვისებები და მეთოდები

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

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

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

შემდეგი რამ - თვისებები. ისინი საჭირო ფუნქცია ნებისმიერი ობიექტი. მაგალითად, იმ Range - არის ღირებულების ან ფორმულა.

მეთოდები - არის ბრძანება დავანახოთ, რომ თქვენ გინდათ. როდესაც წერა კოდი VBA მათ უნდა გამოეყო ობიექტი წერტილი. მაგალითად, როგორც ნაჩვენები იქნება შემდეგ, ძალიან ხშირად, როდესაც პროგრამირების "Excel" გამოყენება საკნების ბრძანება (1,1) .გსურთ. ეს იმას ნიშნავს, რომ ეს არის აუცილებელი, რათა აირჩიოთ საკანში კოორდინატები (1,1), ანუ A1.

თუმცა, ის ხშირად გამოიყენება Selection.ClearContents. მისი განხორციელება იღებენ შინაარსი შერჩეულ საკანში.

როგორ დავიწყოთ

პირველ რიგში, გსურთ შექმნათ ფაილი და შენახვა, მივანიჭოთ სახელი და აირჩიეთ ტიპის «Book Excel მაკრო".

ამის შემდეგ, წასვლა VB პროგრამა, რომელიც არის საკმარისი იმისათვის, რომ გამოიყენოთ კომბინაცია «Alt» key და «F11». შემდეგი:

  • მენიუ ბარი ზედა ფანჯარა, დააწკაპუნეთ ხატი შემდეგი Excel ხატი;
  • Mudule შერჩეული ბრძანება;
  • შენარჩუნება დაწკაპვით ხატი floppy disk;
  • წერენ, ვთქვათ, კოდი მონახაზი.

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

ქვეპროგრამა ()

"ჩვენი კოდი

End Sub

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

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

Macros in Excel

უკან სახელი მალავს პროგრამები დაწერილი Visual Basic for Application ენაზე. ამდენად, პროგრამირების Excel - არის შექმნა მაკრო სასურველ კოდი. ამ შესაძლებლობების, Microsoft ცხრილების თვითმმართველობის ვითარდება, ადაპტაციას მოთხოვნებს კონკრეტული შესახებ. რა შეხება თუ როგორ უნდა შექმნათ მოდულები წერა macros, შესაძლებელია, რომ გააგრძელოს კონკრეტული მაგალითები VBA Excel პროგრამა. ეს არის საუკეთესო იწყება ყველაზე ძირითადი კოდები.

მაგალითი 1

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

ამისათვის:

  • გახსნა tab "ნახვა";
  • გადატანა ხატი "მაკროსების";
  • shake რომ "Record მაკრო";
  • შეავსოთ გახსნილი ფორმა.

სიმარტივის, რომ "მაკრო სახელი" დატოვოს "Makros1" და "Shortcut გასაღები" დევს, მაგალითად, hh (ეს იმას ნიშნავს, რომ თქვენ შეგიძლიათ აწარმოებს პროგრამის მაგალითი იქნება «Ctrl + h» blitz გუნდი). დააჭირეთ Enter.

ახლა, რომ თქვენ დაიწყო ჩაწერა მაკრო, შეადგინოს შინაარსი საკანში სხვა. დაბრუნება ორიგინალური ხატი. დაწკაპეთ "Record მაკრო". ეს ქმედება აღნიშნავს დასრულების აპლეტები.

შემდეგი:

  • ერთხელ მოძრავი სტრიქონი "მაკრო";
  • შერჩეული სია "მაკრო 1";
  • დააჭირეთ "Run" (იგივე მოქმედება იწყება დაიწყო სხარტი კლავიშის «Ctrl + hh»).

შედეგად, ქმედება, რომელიც უკვე შესრულებული დროს ჩაწერა მაკრო.

ეს აზრი, თუ რამდენად კოდი ჰგავს. ამისათვის, დაბრუნდეს სიმებიანი "მაკროსების" და დააჭირეთ "Edit" ან "Enter". შედეგად, ისინი აღმოჩნდებიან VBA გარემოში. სინამდვილეში, კოდი თავად მდებარეობს ხაზებს შორის მაკრო Makros1 Sub () და End Sub.

თუ გადაწერა უკვე ჩაუტარდა, მაგალითად, საკანში A1 საკანში C1, ერთი ხაზი კოდი გამოიყურება როგორც Range ( "C1"). აირჩიეთ. In თარგმანი, როგორც ჩანს, "Range (" C1 "). აირჩიეთ", სხვა სიტყვებით, რაც გადასვლას VBA Excel, საკანში C1.

აქტიური ნაწილი კოდი ასრულებს ActiveSheet.Paste გუნდი. ეს იმას ნიშნავს, ჩაწერა შინაარსი შერჩეულ საკანში (ამ შემთხვევაში, A1) შერჩეულ საკანში C1.

მაგალითი 2

VBA ციკლის შექმნან სხვადასხვა macros Excel.

VBA ციკლის შექმნან სხვადასხვა macros. დავუშვათ, რომ არსებობს ფუნქცია y = x + x 3 + 3x 2 - cos (x). გსურთ შექმნათ მაკრო მისი გრაფიკა. ეს შეიძლება გაკეთდეს მხოლოდ გამოყენებით VBA ციკლები.

საწყის და საბოლოო ღირებულება არგუმენტი ფუნქციების x1 = 0 და x2 = 10. გარდა ამისა, აუცილებელია, რომ წარმოგიდგინოთ მუდმივი - ღირებულება ნაბიჯი ცვლის არგუმენტი და პირველადი მნიშვნელობა counter.

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

Sub პროგრამა ()

x1 = 1

x2 = 10

shag = 0.1

i = 1

ნუ მიუხედავად იმისა, x1

y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - Cos (x1)

საკნების (i, 1) ღირებულება = x1 (x1 მნიშვნელობა დაწერილი მეხსიერება კოორდინატები (i, 1))

საკნების (i, 2) ღირებულება = y (y მნიშვნელობა წერია საკანში კოორდინატები (i, 2))

i = i + 1 (ძალაშია რაოდენობა);

x1 = x1 + shag (არგუმენტი შეიცვალა ნაბიჯი ზომა);

loop

End Sub.

შედეგად ამ პერსპექტივაში macro "Excel" მიიღოს ორი სვეტი, პირველი რომელიც დაფიქსირებულია ღირებულებების x, და მეორე - წ.

მაშინ დანიშნოს შეუძლია ააშენოს მათ, სტანდარტი "Excel".

მაგალითი 3

განახორციელოს ციკლის VBA Excel 2010, ასევე სხვა ვერსიები, ერთად უკვე შეამცირა Do მიუხედავად იმისა, დიზაინი გამოიყენება.

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

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

იყიდება i = 1, 10 შემდეგი

ბრძანება გადაეცემა "ადამიანის" ენის, როგორც "განმეორებითი 1 დან 10 მდე ერთი".

თუ ამოცანა მიიღოს სვეტი მოედნები, მაგალითად, ყველა უცნაური რიცხვებით შორის 1 და 11, ჩვენ დაწერა:

იყიდება i = 1, 10 ნაბიჯი 1 შემდეგი.

აქ, ნაბიჯ - ნაბიჯ. ამ შემთხვევაში, ეს უდრის ორი. სტანდარტულად, არარსებობის სიტყვა loop იმას ნიშნავს, რომ ერთი ნაბიჯი.

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

ზოგადად, კოდი გამოიყურება ასე:

ქვეპროგრამა ()

იყიდება i = 1 დან 10 ნაბიჯი 1 (შეიძლება ჩაიწეროს მხოლოდ i = 1 დან 10)

საკნების (i, 1) ღირებულება = i ^ 2 (ანუ კვადრატული მნიშვნელობა დაწერილი საკანში (i, 1) i)

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

End Sub.

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

მაგალითი 4

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

განვიხილოთ კონკრეტულ შემთხვევაში. დავუშვათ, რომ თქვენ გსურთ შექმნათ მაკრო "Excel" საკანში ერთად კოორდინატები (1,1) უკვე ჩაწერილი:

1 თუ არგუმენტი ის არის დადებითი

0 თუ არგუმენტი ის არის ნულოვანი;

1, თუ არგუმენტი უარყოფითია.

შექმნა ასეთი მაკრო "Excel" იწყება სტანდარტული გზით, გამოყენება "ცხელი" კლავიში Alt და F11. დამატებითი წერილობითი შემდეგი კოდი:

ქვეპროგრამა ()

x = საკნების (1, 1) .ფასი (ეს ბრძანება ანიჭებს ღირებულება x კოორდინატები საკანში შინაარსი (1, 1))

თუ x> 0, მაშინ საკნების (1, 1) ღირებულება = 1

თუ x = 0, მაშინ საკნების (1, 1) .ფასი = 0

თუ x <0, მაშინ საკნების (1, 1) ღირებულება = -1

End Sub.

იგი რჩება გასაშვებად მაკრო და მიიღონ "Excel" სასურველი მნიშვნელობა არგუმენტი.

VBA ფუნქციები

როგორც თქვენ შეიძლება არ შეამჩნია, ყველაზე ცნობილი პროგრამა Microsoft ცხრილების გამოყენების არ არის ძალიან რთული. მით უმეტეს, თუ იცით, თუ როგორ გამოიყენოთ VBA ფუნქციები. საერთო ჯამში, ამ პროგრამირების ენა შექმნილია სპეციალურად წერა განაცხადების "Excel" და სიტყვა, დაახლოებით 160 ფუნქციები. ისინი შეიძლება დაიყოს რამდენიმე დიდი ჯგუფები. ესენი არიან:

  • მათემატიკური ფუნქციები. გამოყენების მათ არგუმენტი კოსინუსი ღირებულება არის მიღებული, ნატურალური ლოგარითმი, და ასე მთელი ნაწილი.
  • ფინანსური ფუნქციები. იმის გამო, რომ მათი ხელმისაწვდომობა და გამოყენება პროგრამირების Excel, შეგიძლიათ მიიღოთ ეფექტური ინსტრუმენტების ბუღალტრული აღრიცხვისა და ფინანსური დასახლებები.
  • Array დამუშავების ფუნქციები. ესენია Array, IsArray; LBound; UBound.
  • VBA Excel ფუნქციონირებს ხაზი. ეს არის საკმაოდ დიდი ჯგუფი. იგი მოიცავს, მაგალითად, ფართი ფუნქცია შექმნა სიმებიანი რიგი ხარვეზები ტოლია მთელი არგუმენტი ან ASC გადარიცხვები სიმბოლოები ANSI კოდი. ყველა მათგანი ფართოდ გამოიყენება და საშუალებას გაძლევთ მუშაობა სიმებისათვის "Excel" შექმნა განაცხადების ბევრად უფრო ადვილია მუშაობა ამ მაგიდები.
  • მონაცემთა ტიპი კონვერტაციის ფუნქციები. მაგალითად, Cvar ბრუნდება გამოხატვის არგუმენტი, კონვერტაცია მას Variant მონაცემები ტიპის.
  • თარიღი ფუნქციები. ისინი მნიშვნელოვნად გაფართოებას სტანდარტული თვისებები "Excel". ასე რომ, WeekdayName ფუნქცია დააბრუნებს სახელი (სრული ან ნაწილობრივი) დღეს კვირაში მისი ნომერი. კიდევ უფრო სასარგებლო არის ტაიმერი. იგი იძლევა რაოდენობას, რომელიც გავიდა მას შემდეგ, შუაღამისას კონკრეტულ მომენტში დღე.
  • ფუნქცია დააკონვერტიროთ რიცხვითი არგუმენტი სხვადასხვა რაოდენობა სისტემები. მაგალითად, Oct შედეგები octal წარმომადგენლობა ნომერი.
  • გაფორმებით ფუნქციები. ყველაზე მნიშვნელოვანი ეს არის ფორმატი. ის დააბრუნებს Variant გამოხატულება ფორმატირებული მიხედვით მითითებების აღწერა ფორმატში.
  • და სხვ.

შესწავლა თვისებები ეს ფუნქციები და მათი გამოყენება მნიშვნელოვნად გააფართოვონ "Excel".

მაგალითად, 5

შევეცადოთ გადაწყვიტოს უფრო რთული პრობლემები. მაგალითად:

Dan ქაღალდის დოკუმენტი იმ დონის ხარჯები საწარმოს ანგარიში. მოითხოვს:

  • განავითაროს ნიმუში ნაწილი ცხრილური "Excel";
  • მიიღოს VBA პროგრამა, რომელიც ითხოვენ ნედლეული მონაცემები შეავსოთ იგი, განახორციელოს საჭირო გათვლები და შეავსოთ თარგი შესაბამისი საკანში.

განვიხილოთ ერთ-ერთი შემდეგი გადაწყვეტილებები.

შექმნა თარგი

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

ცვლადები

დაწერა პროგრამა ავტომატურად შეავსოთ template, აირჩიეთ notation. ისინი გამოყენებული იქნება ცვლადები:

  • NN- ნომერი მიმდინარე რიგის მაგიდა;
  • TP და TF - დაგეგმილი და ფაქტობრივი ბრუნვა;
  • SF და SP - ფაქტობრივი და დაგეგმილი საერთო ხარჯები;
  • IP და IF - დაგეგმილი და ფაქტიური ხარჯების დონეზე.

ჩვენ აღინიშნოს მიერ იგივე ასო, მაგრამ "პრეფიქსი» itog დაგროვების სულ რომ სვეტი. მაგალითად, ItogTP - რაც შეეხება სვეტი აქვს, როგორც "დაგეგმილი ბრუნვა".

პრობლემის გადაწყვეტა გამოყენებით VBA პროგრამირების

გამოყენება ამ notation, ვიღებთ ფორმულა ეწინააღმდეგება. თუ გსურთ განახორციელოს გაანგარიშებით% ჩვენ (F - P) / P * 100 და ოდენობით - (F - P).

შედეგები ამ გათვლებით შეიძლება იყოს საუკეთესო მხოლოდ იმიტომ, რომ "Excel" ცხრილების შესაბამისი უჯრედების.

შედეგს და პროგნოზი ფაქტობრივად მიღებული ფორმულები ItogP = ItogP + P და ItogF = ItogF + F.

გადახრები გამოიყენოთ = (ItogF - ItogP) / ItogP * 100 თუ გაანგარიშება ხორციელდება როგორც პროცენტული, და თუ საერთო ღირებულება - (ItogF - ItogP).

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

დაწყებამდე, რომ შევქმნათ პროგრამა გსურთ გადარჩენა workbook, მაგალითად, სახელწოდებით "Otchet1.xls".

Press "შექმნა საანგარიშო მაგიდა," თქვენ უნდა დააჭიროთ მხოლოდ 1 დრო შესვლის შემდეგ header ინფორმაცია. თქვენ უნდა იცოდეს, და სხვა წესები. კერძოდ, ღილაკს "Add ხაზი" უნდა დაპრესილი ყოველ ჯერზე შემდეგ შესვლის მაგიდასთან ღირებულებების თითოეული საქმიანობაში. შესვლის შემდეგ ყველა მოთხოვნილი მონაცემების ღილაკს "Finish", და მერე გადახვიდეთ "Excel" ფანჯარა.

ახლა, რომ თქვენ იცით, თუ როგორ უნდა გადაწყვიტოს პრობლემა for Excel ერთად macros. გამოყენების უნარი VBA excel (იხ ნიმუში პროგრამები.) და თქვენ შეიძლება უნდა იმუშაოს გარემოს ყველაზე პოპულარული მომენტში, ტექსტური რედაქტორი "Word". კერძოდ, ჩაწერა, როგორც ჩანს, ამ სტატიის დასაწყისში, ან წერილობით კოდი შექმნათ მენიუში ღილაკები, რომლის მეშვეობითაც ბევრ ოპერაციების ტექსტში შეიძლება გაკეთდეს დაჭერით გასაღებები მორიგე ან მეშვეობით "ნახვა" ხატი და "მაკროსების" tab.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ka.birmiss.com. Theme powered by WordPress.