Сматра се да су цикличне референце у Екцелу погрешан израз. Заправо, често је то тако, али ипак не увек. Понекад се користе свесно. Хајде да сазнамо које су кружне референце, како их креирати, како пронаћи постојеће у документу, како радити с њима, или како их брисати, ако је потребно.

Коришћење кружних референци

Пре свега, хајде да сазнамо шта је циклична референца. Заправо, то је израз који се путем формула у другим ћелијама односи на себе. Такође, може бити веза која се налази у елементу листа, на коју се односи.

Треба напоменути да по савременој верзији Екцел-а аутоматски блокира процес обављања цикличне операције. Ово је због чињенице да су такви изрази у великој мери погрешни, а петље производи константан процес прерачунавања и израчунавања, што ствара додатно оптерећење на систему.

Креирање кружне референце

Сада да видимо како направити најједноставнији циклични израз. Ово ће бити веза која се налази у истој ћелији на коју се односи.

  1. Изаберите елемент листа А1 и напишите следећи израз:

    =A1

    Затим кликните на дугме Ентер на тастатури.

  2. Креирање једноставне кружне референце у Мицрософт Екцелу

  3. Након тога, појављује се дијалошки оквир за упозорење о цикличном изразу. Кликните на дугме "ОК" у њему.
  4. Дијалог за упозорење о кружној линији у програму Мицрософт Екцел

  5. Тако смо добили цикличну операцију на листу у којем се ћелија односи на себе.

Ћелија се односи на Мицрософт Екцел

Хајде мало да компликујемо задатак и креирамо циклични израз из неколико ћелија.

  1. Напишите број било ког елемента листа. Нека буде ћелија А1 , а број 5 .
  2. Број 5 у ћелији у Мицрософт Екцелу

  3. У другој ћелији ( Б1 ) напишемо израз:

    =C1

  4. Веза у ћелији у Мицрософт Екцелу

  5. На следећи елемент ( Ц1 ) напишемо следећу формулу:

    =A1

  6. Једна ћелија се односи на другу у Мицрософт Екцелу

  7. Након тога, вратимо се у ћелију А1 , у којој је постављен број 5 . Ми се позивамо на елемент Б1 :

    =B1

    Притисните тастер Ентер .

  8. Постављање везе у ћелији у програму Мицрософт Екцел

  9. Дакле, циклус је затворен и добили смо класичну цикличку референцу. Након што је прозор упозорења затворен, видимо да је програм означио цикличну везу плавим стрелицама на листу, које се зову стрелице о траговима.

Циклично означавање везе у Мицрософт Екцелу

Сада наставимо да креирамо циклични израз помоћу табеле са примјерима. Имамо сто за продају хране. Састоји се од четири колоне, у којима се назначава назив производа, број продатих производа, цена и висина прихода од продаје цијелог волумена. У табели у последњој колони већ постоје формуле. У њима се приходи израчунавају помножавајући количину по цени.

Израчунавање прихода у таблици у Мицрософт Екцелу

  1. Да бисте поправили формулу у првој линији, изаберите елемент листа са количином првог производа ( Б2 ). Умјесто статичке вриједности ( 6 ), уносићемо ту формулу која ће узети количину робе тако што ће укупни износ ( Д2 ) подијелити по цени ( Ц2 ):

    =D2/C2

    Кликнемо на дугме Ентер .

  2. Убацивање кружне референце у табелу у Мицрософт Екцелу

  3. Добили смо прву цикличну везу, однос у којем се обично означава стрелица трага. Али, као што видите, резултат је погрешан и једнак је нули, пошто је већ речено, Екцел блокира извршење цикличних операција.
  4. Цикличка референца у таблици у Мицрософт Екцелу

  5. Копирајте израз у све остале ћелије у колони са бројем производа. Да бисте то урадили, поставите курсор у доњи десни угао елемента који већ садржи формулу. Курсор се претвара у крст, који се обично назива маркер за пуњење. Затворите леви тастер миша и превуците овај крст до краја табеле.
  6. Филлер у програму Мицрософт Екцел

  7. Као што видите, израз је копиран у све елементе колоне. Али, постоји само један однос означен са стрелицом о траговима. Да напоменемо ово за будућност.

Цикличне везе копиране у таблицу у Мицрософт Екцелу

Проналажење кружних референци

Као што смо видели горе, не све вријеме програм означава однос кружне референце на објекте, чак и ако постоји на листу. С обзиром на то да је велика већина цикличних операција штетна, треба их уклонити. Али за ово морају прво да се нађу. Како то може да се уради ако изрази нису означени линијом стрелица? Хајде да се носимо са овим задатком.

  1. Дакле, ако отворите информациони прозор када покренете Екцел датотеку да садржи кружну везу, требало би да га пронађете. За ово прелазимо на картицу "Формуле" . Кликните на траку на троуглу, која се налази десно од дугмета "Провери грешке" , налази се у оквирима "Формула Депенденциес" . Отвара се мени за померање курсора на ставку "Цикличне везе" . Након тога, следећи мени отвара листу адреса елемената листа у којима је програм пронашао цикличне изразе.
  2. Претраживање кружних референци у Мицрософт Екцелу

  3. Када кликнете на одређену адресу, бира се одговарајућа ћелија на листу.

Идите у ћелију са кружном референцом у програму Мицрософт Екцел

Постоји још један начин да се открије где се налази кружна веза. Порука о овом проблему и адресу елемента који садржи такав израз налази се на левој страни статусне траке, која се налази на дну Екцел прозора. Међутим, за разлику од претходне варијанте, на статусној траци ће се приказивати адресе свих елемената који садрже кружне везе, ако их има пуно, али само једна од њих, која се појавила пре осталих.

Порука о кружној линији у статусној траци у Мицрософт Екцелу

Поред тога, ако сте у књизи која садржи циклични израз, а не на листу где се налази, али с друге стране, у овом случају само ће порука о грешци без адресе бити приказана у статусној траци.

Циклична веза са другим листом у програму Мицрософт Екцел

Лекција: Како пронаћи кружне референце у Екцелу

Исправљање цикличних веза

Као што је горе речено, у већини случајева циклични операције су зло које се треба ослободити. Стога је природно да након откривања цикличне комуникације, неопходно је исправити то да формулу буде у нормалном облику.

Да би се исправила циклична зависност, неопходно је пратити читаву међусобну повезаност ћелија. Чак и ако је провера одредила одређену ћелију, грешка можда није само по себи, већ у другом елементу ланца зависности.

  1. У нашем случају, упркос чињеници да је програм правилно показао на једну од ћелија петље ( Д6 ), стварна грешка лежи у другој ћелији. Изаберите елемент Д6 да бисте сазнали од којих ћелија извлачи вредност. Погледајте израз у траци формуле. Као што видите, вредност у овом елементу лима се формира множењем садржаја ћелија Б6 и Ц6 .
  2. Израз у програму Мицрософт Екцел

  3. Идите у ћелију Ц6 . Изаберите је и погледајте ред формуле. Као што видите, ово је уобичајена статичка вриједност ( 1000 ), која није производ израчунавања формуле. Стога можемо са сигурношћу рећи да наведени елемент не садржи грешку која доводи до стварања цикличних операција.
  4. Статичка вредност у програму Мицрософт Екцел

  5. Идите на следећу ћелију ( Б6 ). Након избора у траци формуле, видимо да садржи израчунани израз ( = Д6 / Ц6 ), који повлачи податке из других елемената табеле, посебно из ћелије Д6 . Стога, ћелија Д6 се односи на податке елемента Б6 и обрнуто, што узрокује фиксацију.

    Циклична референца у ћелији таблице у Мицрософт Екцелу

    Овдје смо релативно израчунали однос, али у стварности постоје случајеви када у процесу прорачунања има много ћелија, а не три елемента, као што и ми имамо. Затим претрага може трајати доста времена, јер морате проучавати сваки елемент цикличности.

  6. Сада морамо схватити која ћелија ( Б6 или Д6 ) садржи грешку. Иако, формално, то није чак ни грешка, већ једноставно прекомјерна употреба референци, што доводи до петље. Током процеса одлучивања које ћелије желите уређивати, потребно је примијенити логику. Не постоји јасан алгоритам деловања. У сваком случају, ова логика ће бити сопствена.

    На примјер, ако у нашој табели укупан износ треба израчунати помножујући количину стварно продате робе по њеној цијени, онда можемо рећи да је веза која израчунава износ од укупне продајне суме очигледно сувишна. Зато га обришемо и заменимо статичком вриједношћу.

  7. Референца се замењује вредностима у Мицрософт Екцелу

  8. Сличну операцију вршимо на свим другим цикличним изразима, ако постоје на листићу. Након што су апсолутно све кружне референце уклоњене из књиге, порука о присуству овог проблема треба нестати са статусне траке.

    Поред тога, ако су циклични изрази потпуно избрисани, можете сазнати помоћу алата за проверу грешке. Идите на картицу "Формуле" и кликните на троугао који већ знамо, десно од дугмета "Провери грешке" у траци са алаткама "Формуле зависности" . Ако ставка "Цикличне везе" није активна у менију, онда смо уклонили све такве предмете из документа. У супротном, мораћете да поступак брисања примените на ставке које су на листи на исти начин као и раније.

Цикличне референце у књизи нису у програму Мицрософт Екцел

Омогућавање цикличних операција

У претходном делу лекције смо углавном говорили како се бавити цикличним референцама или како их наћи. Међутим, раније се разговарало о чињеници да у неким случајевима они, напротив, могу корисно и свесно користити корисник. На пример, ова метода се често користи за итеративне прорачуне у изградњи економских модела. Али проблем је у томе што, без обзира да ли свесно или несвесно користите циклични израз, Екцел ће подразумевано и даље блокирати операцију на њима, како не би проузроковала претерано преоптерећење система. У овом случају, питање присилног онемогућавања такве браве постаје хитно. Да видимо како то учинити.

Блоцк цикличне везе у Мицрософт Екцелу

  1. Пре свега, прелазимо на картицу "Датотека" апликације Екцел.
  2. Прелазак на картицу Датотека у програму Мицрософт Екцел

  3. Затим кликните на ставку "Опције" , која се налази на левој страни прозора који се отвара.
  4. Идите у прозор са опцијама у програму Мицрософт Екцел

  5. Покреће се прозор програма Екцел. Морамо ићи на картицу "Формуле" .
  6. Идите на картицу Формуле у програму Мицрософт Екцел

  7. У прозору се отвара да ће вам бити дозвољено обављати цикличне операције. Прелазимо на десни блок овог прозора, где се налазе поставке Екцел-а. Радићемо са конфигурацијским блоком "Могућности калкулације" , који се налази на самом врху.

    Да бисте дозволили коришћење цикличних израза, морате да потврдите поље поред Енабле Итеративе Цалцулатионс . Поред тога, у истом блоку можете подесити максималан број итерација и релативну грешку. По подразумеваним вредностима, њихове вриједности су једнаке 100 и 0,001 респективно. У већини случајева, не морате да мењате ове параметре, иако можете да извршите измене у наведеним пољима ако је потребно или ако желите. Али овде је неопходно узети у обзир да превише итерација може довести до озбиљног оптерећења програма и система у целини, посебно ако радите са датотеком која садржи многе цикличне изразе.

    Дакле, проверите опцију "Омогућите итеративне прорачуне" , а затим кликните на дугме "ОК" који се налази на дну прозора програма Екцел да би нова подешавања ступила на снагу.

  8. Омогућавање Итеративе Цалцулатионс у Мицрософт Екцелу

  9. Након тога, аутоматски идемо на листу тренутне књиге. Као што видите, у ћелијама у којима се налазе цикличне формуле, сада се вриједности израчунавају исправно. Програм не блокира прорачуне у њима.

Ћелије са цикличним формулима приказују исправне вредности у програму Мицрософт Екцел

Али ипак вреди напоменути да се укључивање цикличних операција не сме злоупотребљавати. Користите ову функцију само ако је корисник потпуно сигуран у њену потребу. Неразумно укључивање цикличних операција не само да може довести до прекомерног радног оптерећења на систему и успорити рачунање док ради са документом, али корисник може ненамјерно унети погрешан циклични израз, који би га по задатку одмах блокирао програм.

Као што видимо, у већини случајева цикличне референце представљају феномен који се мора борити. Да бисте ово урадили, пре свега, требали бисте пронаћи најкрупљенији однос, затим израчунати ћелију гдје је грешка садржана, и на крају, елиминишите га тако што ћете подесити одговарајућа подешавања. Али у неким случајевима, цикличке операције могу бити корисне у прорачунима и свјесно направљене од стране корисника. Али чак и тада, вриједи их користити опрезно, правилно поставити Екцел и знати колики је додавање таквих веза, које када се користе у великим количинама могу успорити систем.