აირჩიეთ საქმე VBA აღწერილობა. აირჩიეთ ფილიალის ოპერატორი

მაგალითი აირჩიეთ შემთხვევითი ოპერატორი

აქ ნათლად არ აფერხებს მაგალითს, თუ როგორ შეესაბამება SELECT- ის სტრუქტურა რეალურად.

აირჩიეთ საქმე objrol l offi l m.tepe

საქმე "სლაიდჰოვა"

intslade \u003d intslyd + 1

საქმე "ფერი უარყოფითი"

introlyegental \u003d introlyegeneegal + 1

საქმე "უარყოფითი"

intcbnegal \u003d intcbnegal + 1

Mgabox " უცნობი ტიპი ფილმები. "

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

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

ამ მაგალითში საქმის ოპერატორის პირველი გამოყენება ეკვივალენტურია, თუ objrolrof film.type \u003d "Slide" მაშინ, I.E. თუ ობიექტის რაუნდის ქონება არის "სლაიდი", პროგრამა ასრულებს შემდეგ განცხადებას, წინააღმდეგ შემთხვევაში, მეორე ადგილზეა.

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

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

კომპიუტერი + მობილური ტელეფონი: ეფექტური ურთიერთქმედება ავტორი ქალი გოლტზმან ვიქტორ იოსიფოვიჩი

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

წიგნიდან Unix: პროცესების ურთიერთქმედება ავტორი ქალი სტივენსი უილიამ რიჩარდ

მაგალითი: Posix გაგზავნა რიგები და აირჩიეთ ფუნქცია Descriptor შეტყობინება რიგი ( გაცნობის ცვლადი Mqd_t) არ არის "ჩვეულებრივი" დესკრიპტორი და არ შეიძლება გამოყენებულ იქნას შერჩეული და გამოკითხვა ფუნქციები (თავი 6). მიუხედავად ამისა, ისინი შეიძლება გამოყენებულ იქნას არხზე და MQ_notify ფუნქციით. (Მსგავსი

VBA წიგნიდან Teapots ავტორი Cummings Steve.

წიგნის Firebird მონაცემთა ბაზის შემქმნელი სახელმძღვანელო By Brry Helen

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

წიგნიდან გუნდის ჭურვი სცენარის ენაზე პროგრამირების ხელოვნება ავტორი Cooper Mendel

წიგნიდან Si ენის სახელმძღვანელო Prata Stephen ავტორი

წიგნიდან Linux და Unix: პროგრამირების ჭურვი. დეველოპერის სახელმძღვანელო. Teinsley David.

წიგნიდან C + + დამწყებთათვის ავტორი Lippman Stenna

მაგალითი 10-24. გამოიყენეთ საქმე #! / ბინ / ბაშეჩო; Echo "დააჭირეთ ღილაკს გასაღები და შემდეგ დაბრუნების გასაღები." წაიკითხეთ KeyPress "$ Keypress") Echo "წერილი ქვედა საქმეში"; ) ECHO "წერილი ზედა რეგისტრაციაში"; ) ეხო "ციფრი"; *) Echo "პუნქტუაციის ნიშანი, სივრცე ან რაღაც"; ESAC # ნებადართულია

მდებარეობა Unix Book: ქსელის განაცხადის განვითარება ავტორი ქალი სტივენსი უილიამ რიჩარდ

მაგალითი 10-25. შექმნის შემთხვევაში #! / BIN / BASH # უხეში მაგალითი მონაცემთა ბაზარის დასუფთავების ეკრანი "ECHO სია ------" echo "აირჩიეთ პირი, რომელიც თქვენ დაინტერესებული ხართ:" ECHOECHO "[E] ფურგონები, როლანდ" ეხო "[J] პირობა, მილდრედ "ეხო": მეტის, ჯული "ეხო" [Z] Anea, Morris "Echoead Personcase" $ Person "# გთხოვთ გაითვალისწინოთ: ცვლადი ხდება ციტატებით.

ავტორის წიგნიდან

მაგალითი 10-26. საქმის ოპერატორი საშუალებას გაძლევთ გამოიყენოთ ბრძანებები ანალიზის ცვლადის #! / Bin / Bash # "შემთხვევაში" .Case $ (Arch) # ARCH ORDS- ში, აპარატების Aphitecut.I386 ) Echo "CPU 80386"; I486) ECHO "მანქანა დაფუძნებულია

ავტორის წიგნიდან

მაგალითი A-18. პრემიერ-მინისტრობის თაობა მოდულის განყოფილების ოპერატორის გამოყენებით (BIN / BASH # Primes.SH: პრემიერ ნომრის თაობა, მასშტაბის გამოყენების გარეშე. # ავტორი: სტეფანე ჩაზელასი. ეს სცენარი არ იყენებს კლასს ალგორითმს " Devolo Eratosthene ", # + ნაცვლად

ავტორის წიგნიდან

გაფართოების IF ოპერატორი გამოყენებით სხვა მარტივი ფორმა თუ ოპერატორი არის ის, რაც ჩვენ უბრალოდ ვსაუბრობთ: თუ (გამოხატვა) ოპერატორი, როგორც წესი, გამოხატვის ქვეშ აქ არის პირობითი გამოხატულება, შედარებით ორი ღირებულების ღირებულებები (მაგალითად x\u003e Y

ავტორის წიგნიდან

18.8.2. საქმის ოპერატორის აღსრულების შეწყვეტა განიხილავს შემდეგ მაგალითს. სკრიპტში, უსასრულო ციკლი ხორციელდება, სანამ მომხმარებელი 5-ზე მეტია, ვიდრე ციკლის გაწყვეტა და დაბრუნების მიზნით ბრძანების ხაზი თარჯიმანი გამოყენებული გუნდის შესვენება. $ PG

ავტორის წიგნიდან

ავტორის წიგნიდან

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

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

ოპერატორი "თუ ... მაშინ" ვიზუალური ძირითადი

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

სინტაქსის ოპერატორი თუ ... მაშინ. Ეს არის:

თუ მდგომარეობა 1 მაშინ.
COUNDEND1- ის ქმედებები კმაყოფილია
სხვასაც მდგომარეობა 2 მაშინ.
COUNDEND 2- ის ქმედებები 2 კმაყოფილია
სხვა.
ქმედებები იმ შემთხვევაში, თუ პირობები არ შესრულდება
Დაასრულე თუ

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

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

თუ ActiveCell.Value.< 5 Then ActiveCell.Interior.Color = 65280 "Ячейка окрашивается в зелёный цвет ElseIf ActiveCell.Value < 10 Then ActiveCell.Interior.Color = 49407 "Ячейка окрашивается в оранжевый цвет Else ActiveCell.Interior.Color = 255 "Ячейка окрашивается в красный цвет End If

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

ოპერატორი "აირჩიეთ საქმე" Visual Basic- ში

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

სინტაქსის ოპერატორი აირჩიეთ საქმე. Ეს არის:

აირჩიეთ საქმე. გამოთქმა
საქმე მნიშვნელობა 1
ქმედებები იმ შემთხვევაში, თუ გამოხატვის შედეგი შეესაბამება ღირებულებას 1
საქმე მნიშვნელობა 2
გამოხატვის შედეგად მოქმედებები შეესაბამება ღირებულებას

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

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

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

აირჩიეთ საქმე ActiveCell.Value საქმეა<= 5 ActiveCell.Interior.Color = 65280 "Ячейка окрашивается в зелёный цвет Case 6, 7, 8, 9 ActiveCell.Interior.Color = 49407 "Ячейка окрашивается в оранжевый цвет Case 10 ActiveCell.Interior.Color = 65535 "Ячейка окрашивается в жёлтый цвет Case 11 To 20 ActiveCell.Interior.Color = 10498160 "Ячейка окрашивается в лиловый цвет Case Else ActiveCell.Interior.Color = 255 "Ячейка окрашивается в красный цвет End Select

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

საქმე არის.<= 5 ასე რომ, დახმარებით სიტყვით საქმეა. შეიძლება შემოწმდეს, თუ ის აკმაყოფილებს ღირებულებას გამონათქვამები მდგომარეობა თვალსაზრისით <=5 .
საქმე 6, 7, 8, 9 ასე რომ თქვენ შეგიძლიათ შეამოწმოთ თუ არა ღირებულების მატჩები გამონათქვამები ერთ-ერთი ჩამოთვლილი ღირებულებით. ჩამოთვლილი ღირებულებები გამოყოფილია მძიმით.
საქმე 10. ასე რომ შეამოწმეს თუ არა ღირებულება მატჩები გამონათქვამები განსაზღვრული ღირებულებით.
საქმე 11-დან 20-მდე ამ გზით, თქვენ შეგიძლიათ ჩაწეროთ გამოხატვის შემოწმება თუ არა ღირებულება აკმაყოფილებს გამონათქვამები მდგომარეობა თვალსაზრისით 11-დან 20-მდე (უთანასწორობის ექვივალენტი "11<=значение<=20”).
საქმე სხვა მომწონს ეს, სიტყვის დახმარებით სხვა., მიუთითეთ ქმედებები იმ შემთხვევაში, თუ ღირებულება გამონათქვამები არ შეესაბამება რომელიმე ჩამოთვლილ ვარიანტს საქმე.

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

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

აღნიშნული პროცედურა ერთმანეთს რამდენიმე პირობითი გარდამავალი ოპერატორის იყენებს. უნდა ითქვას, რომ ასეთი პროცედურა მხოლოდ Excel- ში მუშაობს, რადგან იყენებს application.inputbox მეთოდი (იხ. მასპინძელი პროგრამები). ეს მეთოდი არ აძლევს მომხმარებელს ფუნქციის გაშვებისას, გარდა რიცხვების გარდა.

თუ მომხმარებელი არ შედის ნომერზე, მაშინ შეტყობინება იღებს ამას.



თუ მომხმარებელი არ შედის არაფერს, ის შეცდომას შეცდომას იღებს.




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


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



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


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

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

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


უპირობო გარდამავალი ოპერატორი

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

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


Სინტაქსი:

Goto ხაზი


ხაზი - ნებისმიერი დასაშვები ლეიბლი ან რიგის რიცხვი იმავე პროცედურაში ან ფუნქციაში, რომელიც შეიცავს Goto განცხადებას.

დღევანდელ ფოსტაში ჩვენ ვიმსჯელებთ VBA- ს შესახებ. VBA Select Case შეიძლება გამოყენებულ იქნას კომპლექსური Excel- ის Instad Nested- ის შემთხვევაში. ეს ხდის VBA- ს კოდს უფრო სწრაფად, რათა გავიგოთ და გავიგოთ.

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

თუ გახსოვთ ჩვენი ბოლო პოსტი ჩვენ ვისაუბრეთ, "როგორ შეგიძლია".

VBA- ის სინტაქსი აირჩიეთ განცხადება:

სინტაქსი არის:

აირჩიეთ საქმე
საქმის ღირებულება
კოდექსი შეასრულოს მდგომარეობის დროს \u003d value_1
საქმის ღირებულება _2
კოდექსის შესასრულებლად \u003d value_2
საქმის ღირებულება _3.
კოდი შეასრულოს მდგომარეობის დროს \u003d value_3
საქმე სხვა
კოდექსი, როდესაც ყველა სხვა საქმეა ყალბი
დასრულდება აირჩიეთ.

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

'Value_1', 'value_2' და 'value_3' არის "მდგომარეობის" შესაძლო შედეგები. როდესაც ამ ღირებულებების ვინმე შეესაბამება "მდგომარეობას", მაშინ მისი შესაბამისი ბლოკი შეასრულებს.

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

VBA- ში შერჩევის შემთხვევაში:

ახლა მოდით გადაადგილება რამდენიმე პრაქტიკული მაგალითები საქმის განცხადებები.

მაგალითი 1:აირჩიეთ განცხადება გამოხატვისას.

ქვემოთ მოცემულ მაგალითში, ჩვენ შევეცადეთ პირობები (I.E. A \u003d B) აირჩიეთ განაცხადის შესახებ. თუ ეს მართალია მაშინ "ჭეშმარიტი" ბლოკი შესრულდება და თუ ეს ყალბი არის მაშინ "ყალბი" ბლოკი შეასრულებს.

Sub select_case_example () შეიტანეთ ღირებულება ცვლადების A \u003d inputbox ("შეიტანეთ ღირებულება:") B \u003d inputbox ("შეიტანეთ ღირებულება B:") "გამოხატვის შეფასება აირჩიეთ A \u003d B საქმე True Msgbox" გამოხატვა არის ჭეშმარიტი "საქმე ცრუ msgbox" გამონათქვამები არის მცდარი "

Შენიშვნა:ამ კოდექსში გამოიყენება მომხმარებლისთვის ღირებულებების მისაღებად.

მაგალითი 2:საქმის განაცხადი ტექსტის სტრიქონების შესამოწმებლად

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

Sub Select_case_Example () "შეიტანეთ ღირებულება ცვლადები Fruit_Name \u003d inputbox (" შეიტანეთ ხილის სახელი: ")" გამოხატვის შეფასება აირჩიეთ საქმე Fruit_name Case "Apple" Msgbox "თქვენ შევიდა Apple" Case "MsgBox" თქვენ შევიდა მანგოს "შემთხვევაში "ნარინჯისფერი" Msgbox "თქვენ შევიდა ნარინჯისფერი" საქმე სხვაგან MsgBox "მე არ ვიცოდი ეს ხილი!" ბოლოს აირჩიეთ SUP SUB

მაგალითი 3:ნომრის შემოწმების შემთხვევაში

ქვემოთ მოცემულ მაგალითში შეამოწმებთ, თუ მომხმარებლის მიერ შეტანილი ნომერი ნაკლებია ან მეტია 5-ზე მეტი.

Sub Select_case_example () "შეიტანეთ ღირებულება ცვლადების NUM \u003d inputbox (" შეიყვანეთ ნებისმიერი რიცხვი 1-დან 10-მდე: ")" გამოხატვის შეფასება აირჩიეთ საქმის პუნქტი< 5 MsgBox "Your Number is less than 5" Case Is = 5 MsgBox "Your Number is Equal to 5" Case Is > 5 Msgbox "თქვენი ნომერი 5-ზე მეტია"

Შენიშვნა:Შეგიძლია გამოიყენო არის.საკვანძო სიტყვის შემთხვევაში, ღირებულებების შედარება.

მაგალითი 4:აირჩიეთ საქმისწარმოება ერთ შემთხვევაში მრავალჯერადი პირობების შესამოწმებლად.

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

Sub Select_case_example () შეიტანეთ ღირებულება ცვლადების NUM \u003d inputbox ("შეიყვანეთ ნებისმიერი რიცხვი 1-დან 10-მდე:") "გამოხატვის შეფასება აირჩიეთ საქმე Num Case 2, 4, 6, 8, 10 MsgBox" Yur ნომერი კი ". საქმე 1, 3, 5, 7, 9 MsgBox "თქვენი ნომერი უცნაურია". Case Msgbox "თქვენი ნომერი არ არის სპექტრი". END აირჩიეთ ბოლო SUB

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

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

აქ ჩვენ შეამოწმებთ უწყვეტ დიაპაზონს, როგორც მდგომარეობას. ჩვენ მომხმარებელს ვთხოვთ, რომ 1-10-მდე რიცხვი შევიდეს, თუ რიცხვი 1-დან 5-მდე (მათ შორის 1-დან 5-მდე) არის მაშინ "საქმე 1-დან 5-მდე" იქნება, თუ მომხმარებლის მიერ მოპოვებული რიცხვი 6-დან 10-მდე (მათ შორის 6 და 10 შორის) მაშინ "საქმე 6-დან 10-მდე" იქნება "ჭეშმარიტი", თუ ორივე წინა შემთხვევაში შესრულდება.

Sub select_case_example () შეიტანეთ ღირებულება ცვლადები NUM \u003d inputbox ("შეიტანეთ ნებისმიერი რიცხვი 1-დან 10-მდე:") "გამოხატვის შეფასება აირჩიეთ საქმე რიცხვი 1-დან 5-მდე MSGBOX" Yur Number 1-დან 5-მდე "6-დან 10-მდე "თქვენი ნომერი 6-დან 10-მდე" შემთხვევაში MsgBox "თქვენი ნომერი არ არის დიაპაზონიდან". END აირჩიეთ ბოლო SUB

ასე რომ, ეს იყო ყველაფერი VBA- ის შესახებ. მოგერიდებათ გაუზიარეთ თქვენი thougoghts ამ თემას.

Ankit Kaul- ის შესახებ.

Ankit არის დამფუძნებელი Excel Trick. ის არის ტექნიკური geek, რომელიც უყვარს ჯდომა წინ მისი მოედანზე ხელმძღვანელობდა მეგობარი გოგონა (მისი PC) მთელი დღის განმავლობაში. : D. Ankit აქვს ძლიერი ვნება სწავლის Microsoft Excel. მისი ერთადერთი მიზანია, რომ თქვენ ბიჭები "Excel Geeks".

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

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

ოპერატორის სტრუქტურა "აირჩიეთ საქმე".

მოდი ვნახოთ, რა არის ოპერატორის განზოგადებული სტრუქტურა და მაინტერესებს, რა არის ეს ( სხვადასხვა მაგალითები კოდექსის პირადი გამოყენება ნაჩვენები იქნება სტატიის ბოლოს):

აირჩიეთ საქმე [შემოწმებული] საქმე [სპეციფიკური] [ზოგიერთი ქმედება] საქმე სხვაგან [X] დასასრული აირჩიეთ

როგორც ნაჭერი [მნიშვნელობა] თქვენ შეგიძლიათ ჩაწეროთ ნებისმიერი ცვლადი ან ქონება, რომლის ღირებულება ან შეგიძლიათ შეამოწმოთ. თქვენ ასევე შეგიძლიათ შეამოწმოთ კონკრეტული საკანში ღირებულება. ამავდროულად, შესაძლებელია არა მხოლოდ ნომრები, არამედ ტექსტებით. და კიდევ boolean ღირებულებები Ჭეშმარიტი და ცრუ ("ჭეშმარიტი" და "ტყუილი"), რა არ არის ყველაფერი კარგად იცის.

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

საქმე 3, 4, 5, "დიახ", "არა"

ნომრები, შეგიძლიათ აირჩიოთ მერყეობს:

საქმე 3-დან 10-მდე "3-დან 10-მდე, მათ შორის 3 და 10 თავად.

ასევე ნომრები, შეგიძლიათ გამოიყენოთ ლოგიკური შედარების ოპერატორი ნაწილაკით " არის.":

საქმეა.< 2 "Меньше 2, НЕ включая 2 Case Is = 3 "Равно 3-м. Избыточная запись, достаточно Case 3 Case Is >\u003d 4 "უფრო მეტია, ვიდრე 4 შემთხვევა<> 0 "არ არის ნულოვანი

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

საქმე ... და ... საქმე არ არის ...

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

საქმე [კონკრეტული მნიშვნელობა] [ზოგიერთი ქმედება]

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

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

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

მაგალითები გამოყენებით.

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

Sub Selectcase_example_1 () Dim X \u003d 1 "თქვენ შეგიძლიათ შეცვალოთ ეს ციფრი და ნახეთ, რა მოხდება. აირჩიეთ x საქმე 1 msgbox" ერთი "საქმე 2 Msgbox" ორი "საქმე 3 Msgbox" სამი "შემთხვევა MSGBOX". ეს არის განსხვავებული "END SELECT END SUB

მეორე მაგალითი აჩვენებს რამდენიმე სახის ჩაწერის ღირებულებებს. Macro- თან წიგნში ფურცლების რაოდენობის მიხედვით, განსხვავებული შეტყობინება გამოჩნდება. გთხოვთ გაითვალისწინოთ, რომ თუ წიგნი 7 წიგნში 7, მაშინ პირველი იმუშავებს " საქმე 7.", მიუხედავად იმისა, რომ მდგომარეობა" საქმე 5-დან 12-მდე"ასევე შესაფერისი, მაგრამ მოგვიანებით.

Sub selectcase_example_2 () "ჩვენ ვაჩვენებთ ცვლადი და გამოვთვალოთ ფურცლების რაოდენობა დღევანდელ წიგნში: dim x როგორც ხანგრძლივი x \u003d dimworkbook.sheets.Count SELECT Case x" წიგნში ფურცლების მიხედვით, ჩვენ გამოვიყენებთ შეტყობინებას . საქმე 1 "თუ 1 ფურცელი, მაშინ ... Msgbox" ერთი ფურცელი წიგნში "საქმე 2, 3, 4" თუ ფურცლები 2 ან 3 ან 4 MsgBox "რამდენიმე ფურცელი წიგნში" საქმე 7 "თუ Sheets 7 MsgBox" ლამაზი ფურცლების რაოდენობა "საქმე 5-დან 12-მდე", თუ 5-დან 12-მდე Msgbox- დან "თითქმის ბროშურა" შემთხვევაში არის\u003e \u003d 14 "თუ ფურცლები უფრო მეტ ან ტოლია 14 MSGBOX" ფურცლები, როგორიცაა Foliant "საქმე" ყველა სხვა შემთხვევაში, კერძოდ 13 Msgbox "Chestov Dozen Sheets" END აირჩიეთ ბოლო SUB

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

Sub Selectcase_example_3 () "ჩვენ ვცდილობთ ცვლადს და მისცეს მას ბოლო ფურცელზე წიგნში: dim shtx როგორც worksheet: setx \u003d thatworkbook.sheets (mpworkbook.sheets.count) აირჩიეთ შემთხვევაში shtx.visible" შეამოწმეთ თუ არა ფურცელი დაფარული ან არ არის ჭეშმარიტი: Msgbox "ბოლო ჩამონათვალი წიგნში ხელმისაწვდომი" "თუ ბოლო ფურცელი ჩანს ყალბი: Msgbox" ბოლო სიაში წიგნში იმალება "" თუ ბოლო ფურცელი დამალულია დასასრული

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

Sub Selectcase_example_4 () "ჩვენ გავაგრძელებთ რამდენიმე ცვლადს: dim x%, y%, z%" ყველა ზედა სამი: x \u003d 3: y \u003d 3: z \u003d 3 აირჩიეთ საქმე ჭეშმარიტი "ჩვენ შეამოწმეთ ყველა ცვლადის თანასწორობა Z \u003d x და y \u003d x: msgbox "ყველა თანაბარი" "თუ ყველა ტოლია სხვაგან: Msgbox" ვინმე განსხვავებულია "" თუ ვინმეს განსხვავებული დასასრული არ არის

მეხუთე მაგალითი გვიჩვენებს, თუ როგორ მეშვეობით მძიმით სწორი ღირებულება " საქმე»თქვენ შეგიძლიათ მიუთითოთ მთელი რიცხვები. დავუშვათ, რომ არსებობს გარკვეული ფუნქცია და ჩვენ შეამოწმებთ თუ არა ჩვენი ნომერი ამ ფუნქციას. პირობით, ჩვენ კმაყოფილი ვართ ნომრებიდან 5-დან (არ არის 5) მინუს უსასრულობისკენ, 12-დან 15-მდე, მათ შორის მთავრდება და 20-მდე (მათ შორის 20), რათა უსასრულობას.

Sub Selectasebase_example_5 () "ჩვენ გაცნობა ცვლადი და მისცეს მას მნიშვნელობა ხელით dim x როგორც ორმაგი X \u003d inputbox (" შეიტანეთ რიცხვითი მნიშვნელობა ცვლადი X ") აირჩიეთ საქმე X" შეამოწმეთ თუ არა ზოგიერთი წარმოსახვითი ფუნქცია განკუთვნილია საქმეზე< 5, Is >\u003d 20, 12 დან 15 "შესაფერისი MSGBOX ღირებულებების დიაპაზონი" ზოგიერთი "შემთხვევაში" არ არის შესაფერისი MSGBOX ღირებულებები "მნიშვნელობა არ შეიძლება გამოყენებულ იქნას ზოგიერთ ფუნქციაში" END SELED END SUB

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

Მადლობა ყურადღებისთვის.

მუხლი მაგალითები, რომანში "Rioran" Voronov for www.syt.