Სარჩევი
გაკვეთილი განიხილავს Excel ISERROR ფუნქციის პრაქტიკულ გამოყენებას და აჩვენებს, თუ როგორ უნდა შეამოწმოთ სხვადასხვა ფორმულები შეცდომებისთვის.
როდესაც თქვენ წერთ ფორმულას, რომელსაც Excel არ ესმის ან არ შეუძლია გამოთვალოს, ის თქვენს ყურადღებას ამახვილებს პრობლემაზე შეცდომის შეტყობინების ჩვენებით. ISERROR ფუნქცია დაგეხმარებათ შეცდომების გამოვლენაში და ალტერნატივის მიწოდებაში, როდესაც შეცდომის აღმოჩენის შემთხვევაში.
ISERROR ფუნქცია Excel-ში
Excel ISERROR ფუნქცია იჭერს ყველა სახის შეცდომებს, მათ შორის #CALC!, #DIV/0!, #N/A, #NAME?, #NUM!, #NULL!, #REF!, #VALUE! და #SPILL!. შედეგი არის ლოგიკური მნიშვნელობა: TRUE, თუ შეცდომა გამოვლინდა, FALSE წინააღმდეგ შემთხვევაში.
ფუნქცია ხელმისაწვდომია Excel 2000-დან 2021 წლამდე და Excel 365-ის ყველა ვერსიაში.
ISERROR-ის სინტაქსი ფუნქცია ასეთი მარტივია:
ISERROR(მნიშვნელობა)სადაც მნიშვნელობა არის უჯრედის მნიშვნელობა ან ფორმულა, რომელიც უნდა შემოწმდეს შეცდომებზე.
Excel ISERROR ფორმულა
ISERROR ფორმულის უმარტივესი ფორმით შესაქმნელად, მიაწოდეთ მითითება იმ უჯრედს, რომლის გამოცდა გსურთ შეცდომებზე. მაგალითად:
=ISERROR(A2)
შეცდომის აღმოჩენის შემთხვევაში, თქვენ მიიღებთ TRUE-ს. თუ შემოწმებულ უჯრედში შეცდომა არ არის, თქვენ მიიღებთ FALSE:
IF ISERROR ფორმულას Excel-ში
მორგებული შეტყობინების დასაბრუნებლად ან შეასრულეთ შეცდომის დადგომისას განსხვავებული გაანგარიშება, გამოიყენეთ ISERROR IF ფუნქციასთან ერთად. ზოგადი ფორმულა ასე გამოიყურება:
IF(ISERROR( ფორმულა(...), ტექსტი_ან_გამოთვლა_თუ_შეცდომა, ფორმულა())ადამიანურ ენაზე თარგმნილია, ნათქვამია: თუ მთავარი ფორმულა შედეგია შეცდომის შემთხვევაში, აჩვენეთ მითითებული ტექსტი ან განახორციელეთ სხვა გამოთვლა, წინააღმდეგ შემთხვევაში დააბრუნეთ ფორმულის ნორმალური შედეგი.
ქვემოთ სურათზე, ჯამის რაოდენობაზე გაყოფა წარმოქმნის რამდენიმე შეცდომას ფასში. სვეტი:
ყველა სხვადასხვა შეცდომის კოდის მორგებული ტექსტით ჩასანაცვლებლად, შეგიძლიათ გამოიყენოთ შემდეგი IF ISERROR ფორმულა:
=IF(ISERROR(A2/B2), "Unknown", A2/B2)
Excel 2007 და უფრო გვიან ვერსიებში, იგივე შედეგის მიღწევა შესაძლებელია ჩაშენებული IFERROR ფუნქციის დახმარებით:
=IFERROR(A2/B2, "Unknown")
ეს უნდა იყოს აღნიშნა, რომ IFERROR ფორმულა ცოტა უფრო სწრაფად მუშაობს, რადგან ის ასრულებს A2/B2 გამოთვლას მხოლოდ ერთხელ. მაშინ როცა IF ISERROR ითვლის ორჯერ - ჯერ იმის დასანახად, წარმოქმნის თუ არა შეცდომას და შემდეგ ისევ არის თუ არა ტესტი FALSE.
IF ISERROR VLOOKUP ფორმულა
ISEROR-ის გამოყენება VLOOKUP-თან ერთად, ფაქტობრივად, IF IS-ის კონკრეტული შემთხვევაა ERROR ფორმულა ზემოთ განხილული. როდესაც VLOOKUP ფუნქცია ვერ პოულობს საძიებო მნიშვნელობას ან ვერ ხერხდება რაიმე სხვა მიზეზის გამო, თქვენ აჩვენებთ მორგებულ ტექსტურ შეტყობინებას ამ სინტაქსის გამოყენებით:
IF(ISERROR(VLOOKUP(…)), " custom_text", VLOOKUP(…))ამ მაგალითისთვის მოდით გადავიყვანოთ დრო საძიებო ცხრილიდან (D3:E10) მთავარ ცხრილამდე (A3:B15). თუ საძიებო მნიშვნელობა (მონაწილის სახელი) არ არსებობსსაძიებო ცხრილი, ჩვენ დავაბრუნებთ "არ არის კვალიფიციური".
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$10, 2, FALSE)), "Not qualified", VLOOKUP(A3, $D$3:$E$10, 2, FALSE))
რჩევა. თუ გსურთ მორგებული ტექსტის ჩვენება მხოლოდ მაშინ, როდესაც ძიების მნიშვნელობა არ არის ნაპოვნი (#N/A შეცდომა) სხვა შეცდომის იგნორირებაში, მაშინ გამოიყენეთ IFNA VLOOKUP ფორმულა Excel 2013-ში და შემდეგში ან IF ISNA VLOOKUP უფრო ძველი ვერსიები.
IF ISERROR INDEX MATCH ფორმულა
როდესაც ეძებთ INDEX MATCH კომბინაციის დახმარებით (ან INDEX XMATCH ფორმულა Excel 365-ში), შეგიძლიათ შეცვალოთ და გაუმკლავდეთ ნებისმიერ შესაძლო შეცდომას იმავე ტექნიკის გამოყენებით - ISERROR ფუნქცია ამოწმებს შეცდომებს და IF აჩვენებს მითითებულ ტექსტს, როდესაც რაიმე შეცდომა ხდება.
IF(ISERROR(INDEX ( return_column , MATCH ( lookup_value , lookup_column , 0)))), " მორგებული_ტექსტი ", INDEX ( დაბრუნების_სვეტი , MATCH ( ძიების_მნიშვნელობა , ძიების_სვეტი , 0)))ვთქვათ, საძიებო ცხრილს აქვს ჯერები პირველ სვეტში. ვინაიდან VLOOKUP ვერ ხედავს მის მარცხნივ, ჩვენ ვიყენებთ INDEX MATCH ფორმულას იმისათვის, რომ გამოვიყვანოთ ჯერები სვეტიდან D:
=INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0))
და შემდეგ, თქვენ ჩადებთ მას ზემოთ ნახსენებ ზოგად ფორმულაში. დაჭერილი შეცდომების ჩანაცვლება თქვენთვის სასურველი ტექსტით:
=IF(ISERROR(INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0))), "Not qualified", INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0)))
შენიშვნა. როგორც IF ISERROR VLOOKUP ფორმულის შემთხვევაში, უფრო ლოგიკურია მხოლოდ #N/A შეცდომების ხაფანგში ჩასმა და არ შენიღბოს პოტენციური პრობლემები თავად ფორმულასთან. ამისათვის შეფუთეთ თქვენი INDEX მათემატიკის ფორმულა IFNA-ში Excel 2013-ში და უფრო მაღალ ვერსიებში ან IF ISNA-ში წინა ვერსიებში.
თუISERROR დიახ/არა ფორმულა
ყველა წინა მაგალითში, IF ISERROR-მა დააბრუნა მთავარი ფორმულის შედეგი, თუ ეს შეცდომა არ არის. თუმცა, მას შეუძლია სხვაგვარადაც იმუშაოს - დააბრუნოს რაღაც შეცდომის შემთხვევაში და სხვა რამე, თუ შეცდომა არ არის.
IF(ISERROR( ფორმულა (...)), " text_if_error " , " text_if_no_error ")ჩვენს სანიმუშო მონაცემთა ბაზაში, დავუშვათ, რომ არ გაინტერესებთ ზუსტი დრო, თქვენ უბრალოდ გსურთ იცოდეთ რომელი მონაწილეები არიან A ჯგუფიდან კვალიფიცირებული და რომელი არა. ამისათვის გამოიყენეთ MATCH ფუნქცია, რათა შევადაროთ A სვეტის სახელი კვალიფიციურ მონაწილეთა სიას სვეტში D და შემდეგ მივაწოდოთ შედეგები ISERROR-ს. თუ სახელი მიუწვდომელია D სვეტში (MATCH აბრუნებს შეცდომას), მიიღეთ IF ფუნქცია "არა" ან "არ არის კვალიფიციური". თუ სახელი გამოჩნდება სვეტში D (შეცდომის გარეშე), დააბრუნეთ "დიახ" ან "კვალიფიცირებული".
=IF(ISERROR(MATCH(A3, $D$3:$D$10, 0)), "No", "Yes" )
როგორ დავთვალოთ შეცდომების რაოდენობა
გარკვეულ სვეტში შეცდომების რაოდენობის მისაღებად, თქვენ უნდა შეამოწმოთ დიაპაზონი და არა მხოლოდ ერთი უჯრედი. ამისთვის სამიზნე დიაპაზონი "მიიტანეთ" ISERROR-ზე და დააბრუნეთ დაბრუნებული ლოგიკური მნიშვნელობები 1-ში და 0-ებში ორმაგი უნარული ოპერატორის გამოყენებით (--). SUM ან SUMPRODUCT ფუნქციას შეუძლია რიცხვების შეკრება და საბოლოო შედეგის მიწოდება.
მაგალითად:
=SUM(--ISERROR(C2:C10))
გთხოვთ გაითვალისწინოთ, რომ ეს ჩვეულებრივ მუშაობს მხოლოდ Excel-ში. 365 და Excel 2021, რომლებიც მხარს უჭერენ დინამიურ მასივებს. Excel 2019-ში და უფრო ადრე, თქვენმასივის ფორმულის შესაქმნელად უნდა დააჭიროთ Ctrl + Shift + Enter (არ აკრიფოთ ხუჭუჭა ფრჩხილები ხელით, ეს არ იმუშავებს!):
{=SUM(--ISERROR(C2:C10))}
ალტერნატიულად, შეგიძლიათ გამოიყენოთ SUMPRODUCT ფუნქცია, რომელიც ამუშავებს მასივებს ბუნებრივად, ამიტომ ფორმულა შეიძლება დასრულდეს ჩვეულებრივი Enter კლავიშით ყველა ვერსიაში:
=SUMPRODUCT(--ISERROR(C2:C10))
განსხვავება ISERROR-სა და IFERROR-ს შორის Excel-ში
როგორც ISERROR და IFERROR ფუნქციები გამოიყენება Excel-ში შეცდომების დასაჭერად და დასამუშავებლად. განსხვავება შემდეგია:
- თავის სუფთა სახით, ISERROR უბრალოდ ამოწმებს არის თუ არა მნიშვნელობა შეცდომა. ის ხელმისაწვდომია Excel-ის ყველა ვერსიაში.
- IFERROR ფუნქცია შექმნილია შეცდომების აღმოსაფხვრელად ან შენიღბვისთვის - შეცდომის აღმოჩენისას ის აბრუნებს თქვენს მიერ მითითებულ სხვა მნიშვნელობას. ის ხელმისაწვდომია Excel 2007 და უფრო მაღალ ვერსიაში.
ერთი შეხედვით, IFERROR ჰგავს IF ISERROR ფორმულის სტენოგრამის ალტერნატივას. თუმცა, უფრო ახლოს რომ შეხედოთ, შეამჩნევთ განსხვავებას:
- IFERROR საშუალებას გაძლევთ მიუთითოთ მხოლოდ value_if_error . თუ შეცდომა არ არის, ის ყოველთვის აბრუნებს შემოწმებული მნიშვნელობის/ფორმულის შედეგს.
- IF ISERROR უზრუნველყოფს მეტ მოქნილობას და საშუალებას გაძლევთ გაუმკლავდეთ ორივე სიტუაციას - რა უნდა მოხდეს შეცდომის შემთხვევაში და რა, თუ შეცდომა არ არის.
აზრის უკეთ საილუსტრაციოდ, განიხილეთ ეს ფორმულები:
=IFERROR(A1, "Calculation error")
=IF(ISERROR(A1), "Calculation error", A1)
ეს ორი ფორმულა ექვივალენტურია - ორივე ამოწმებს ფორმულით დაფუძნებულ მნიშვნელობას A1-ში და დაბრუნება"გაანგარიშების შეცდომა" თუ შეცდომაა, წინააღმდეგ შემთხვევაში - დააბრუნეთ მნიშვნელობა.
მაგრამ რა მოხდება, თუ გსურთ შეასრულოთ გარკვეული გამოთვლა, თუ მნიშვნელობა A1-ში არ არის შეცდომა? IFERROR ფუნქციას არ შეუძლია ამის გაკეთება. IF ISERROR-ის შემთხვევაში, უბრალოდ ჩაწერეთ სასურველი გაანგარიშება ბოლო არგუმენტში. მაგალითად:
=IF(ISERROR(A1), "Calculation error", A1*2)
როგორც ხედავთ, IFERROR ფორმულის ეს გრძელი ვარიაცია, რომელიც ხშირად მოძველებულად ითვლება, მაინც შეიძლება სასარგებლო იყოს :)
ხელმისაწვდომი ჩამოტვირთვები
ISERROR ფორმულის მაგალითები (ფაილი .xlsx)