БАЗИ ДАННИ 1 Печат

Бази данни

  1. Организиране и управление на списъци

1.1.  Общи сведения

Данните, които се съхраняват в работната страница на Excel, най-често са организирани в таблици. Таблица, чиито колони съдържат  сходни (еднотипни) данни, снабдени с етикети (имена) се нарича списък.

Всички списъци в Excel имат някои общи черти:

- първият ред в списъка съдържа имената на колоните;

- клетките в една и съща колона съдържат сходни данни;

- клетките в един и същ ред съдържат взаимовсързани данни.

Excel интерпретира списъка като  проста база от данни: редовете представляват  записи, колоните са полета, а имената на колоните - имена на полета (етикети). Изисква се етикетите на колоните да бъдат разположени на един ред от електронната таблица и да заемат първия ред от списъка. Те трябва да бъдат уникални.

В една страница е добре да има само един списък, защото някои от възможностите на  Excel (например филтриране) могат да бъдат използвани само ако в съответната страница има по един списък във всеки  момент.

За да бъде автоматично и правилно разпознат от Excel, списъкът трябва да бъде отделен от всички останали данни в работната таблица поне с по един празен ред и една празна колона.

Списъкът трябва да бъде конструиран така, че всички редове да имат сходни елементи в еднаквите стълбове. При въвеждане на данните не трябва да се вмъкват интервали в началото на клетките - те ще повлияят при работата с данните.

1.2. Поддържане на списъци чрез формуляри за данни

Формулярите за данни са потребителски ориентирано средство за поддържане и работа със списъци - добавяне, търсене, редактиране и изтриване на записи.

Основни елементи на формуляра са: заглавие, полета за данни и командни бутони.

Заглавие на формуляра – заглавна лента в горната част на диалоговия прозорец, която показва името на работната страница, в която  са данните.

Полета за данни – имената на полетата се създават от имената на колонките в списъка. Появяват се подредени в реда, в който са в списъка, отляво надясно. Максималният брой на полетата, които могат да бъдат показвани в един формуляр е 32.

Съдържание на полетата – показва се по два начина:

-                                  полета достъпни за промени - в които данните  се визуализират в прозорчета за редактиране (Edit Box) и съхраняват входни данни. Дължината им е еднаква и се определя от ширината на най-широката колона в списъка;

-                                  резултатни полета – без възможност за редактиране. Това са случаите, когато в  полето е въведена формула и във формуляра за данни се показва резултатът от изчислението на формула, или когато входните данни са защитени.

Командни бутони – за стартиране на операции над данните в списъка:

-                                  добавяне на нов  запис:

-                                  търсене на записи;

-                                  редактиране на записи;

-                                  изтриване на запис;

Ред за работа с формуляри за данни:

- избор на произволна клетка от списъка;

- избор на командата Data/Form. Извежда се  формуляр, съдържащ данните от първия запис на списъка;

Прелистването на записите става с лентата за превъртане или чрез бутони Find Next  (преход към следващият) и Find Prev (преход към предишния).. Всяко поле в текущия запис може да бъде редактирано, стига да не е защитено или резултатно, т.е. да съдържа формула. Редакцията се извършва непосредствено в прозорчето за редактиране, а актуализирането на данните в списъка става или при преминаване към друг запис или с натискане на Enter.

Добавянето на нов запис става с бутон New при положение че не е включена защитата на таблицата с Tools/Protection. В резултат се показва нов празен формуляр и се предоставя възможност за въвеждане на новите данни. В горния десен ъгъл се появява надпис New Record (нов запис). Въвеждат се данните в текущото поле. За преминаване от едно поле към следващото – с клавиш Tab. За връщане към предишни полета -  с комбинацията Shift+Tab.

Замяната на данни в поле с нови – чрез въвеждане на новите данни;

За промяна на част от данните – предвижване със стрелките  и  до мястото на въвеждането и въвеждане.

За въвеждане на данните от предишното поле в текущото (повтарящи се данни) се натиска Ctrl+.

В случаите с числа, които имат значещи начални нули, може да се сложи апостроф (‘) пред първата нула. Апострофът указва на Excel да третира числото като текстов етикет, но самия той не се извежда в базата данни.

След въвеждане на цялата информация на записа се натиска клавиш , Enter или бутона New. Excel поставя въведения запис на последния ред на базата данни  и отваря празен формуляр, в който да се въведе следващия запис.

След въвеждане на всички записи в базата данни се натиска Esc или бутона Close. Работния лист се записва с File/Save

Когато трябва Excel да изчислява определено поле по формула, тази формула трябва да бъде въведена в съответното поле на първия запис. След това се избират двата реда  (имената на полетата и примерния запис) и се създава формуляр. Excel копира формулата от първия запис във всеки нов запис, който се въвежда с формуляра.

Изтриване на запис става с  маркиране и Delete. Изтрит запис не може да бъде възстановен.

1.3. Придвижване в базата данни

За предвижване в базата данни се извършва следното:

-                                  извежда се формуляр на базата данни;

-                                  - използва се някой от посочените по-надолу клавиш или клавишна комбинация в зависимост от случая

Действие

Резултат

Натискане  на , Enter, стрелката в долната част на лентата за предвижване  или бутона Find Next.

Преминава към същото поле на следващия запис в базата данни.

Натискане на , Shift+Enter, стрелката в горната част на лентата за предвижване или бутона Find Prev.

Преминава към същото поле на предишния запис на базата данни.

Натискане PgDn

Преминава с десет реда напред.

Натискане PgUp

Преминава с десет реда назад.

Натискане Ctrl+, Ctrl+PgUp или преместване на плъзгача на лентата за предвижване най-горе.

Преминава към първия запис в базата данни

Натискане Ctrl+, Ctrl+PgDu или преместване на плъзгача на лентата за предвижване най-долу.

Преминава към последния запис на базата данни.

1.3. Търсене на записи

Извършва се чрез последователно преглеждане на записите един по един или чрез задаване на критерий за търсене.

Режим на търсене по критерий:

-избор на произволна клетка от списъка;

- избор на командата Data/Form;

- избор на бутона Criteria от формуляра. Извежда се празен формуляр в който всички полета са достъпни за потребителя. Във всяко едно от тях той може да въведе условие (критерий)  за търсене, включително и за резултатните полета.

Критерият за търсене може да бъде точна стойност (число или текст) или да бъде от тип сравнение посочен по надолу:

оператор

значение

=

равно

>

по-голямо

>=

по-голямо или равно

<

по-малко

<=

по-малко или равно

Различно

В първия случай се търсят записите, за които стойността на съответното поле е равна на зададената. Ако тази стойност е някакъв текст е възможно използването на глобалния символ “*”, който отговаря на произволен брой произволни символи. Когато критерият е тип сравнение се търсят всички записи, които удовлетворяват дефинираното условие.

Ако бъдат въведени критерии в няколко полета едновременно се дефинира съставен критерий - връзката между отделните критерии е от типа And.

За да се смени критерия за търсене , първо се изчиства формуляра за данни, като се натиснат последователно бутоните Criteria и Clear. След това се избират подходящите полета и се заменя съдържанието им с нови условия. (Ако се използват същите полета, няма нужда да се натиска бутона Clear).

Ако е необходимо връщане към избрания запис, без да се използва въведения нов критерий, се натиска бутона Form, който се появява на мястото на бутона Criteria след натискането му.

Всички записи които отговарят на зададения критерий могат да се прегледат един по един чрез бутоните Find Next и Find Prev. Връщането в режим на преглед и редакция става с бутон Form.

1.4. Добавяне на записи

Извършва се с бутон New. В резултат се показва нов празен формуляр и се предоставя възможност за въвеждане на нови данни. Придвижването между прозорчетата за редактиране (Edit box) става с клавиш Tab (напред) и Shift+Tab (назад). или директно с мишката. Въвеждането на данни приключва с натискане на Enter. В резултат Excel добавя записа в края на списъка, като копира в него всички формати и формули на предходния запис. Ако Excel открие данни в реда непосредствено под последния запис се появява съобщение Cannot extend list or database.

Ако е включена защитата на таблицата с командата Tools/Protection, добавянето на записи е невъзможно  В този случай бутонът New не е активен.

1.5. Изтриване на записи

Изтриването на текущия запис се извършва с бутон Delete. Изтрит запис не може да бъде възстановен.

Записи от защитена таблица не могат да бъдат изтрити.

2. Сортиране на данни в списък

Сортирането означава пренареждане на записите в желаната от потребителя последователност. Осигурена е възможност за подреждане на записите едновременно по три признака (полета)  съподчинени помежду си.

За всеки признак се дефинира начинът за сортиране Ascending (възходящ ред) или  Descending (низходящ ред).

При сортиране във възходящ ред Excel спазва следната подредба:

-                                  първо числата, от най-малкото отрицателно към най-голямото положително, в това число датите и часовете, от по-ранните към по-късните.;

-                                  после текстовете, като първо се сортират числата, въведени като текст, а после символите в съответствие с вътрешното им представяне;

-                                  след тях логическите стойности FALSE и TRUE;

-                                  накрая празните клетки.

При сортиране в низходящ ред подреждането е обратно с изключение на празните клетки, които винаги са последни.

Сортирането на записите в базата данни става по следния начин:

-                                  избира се клетката с името на първото поле в базата данни;

-                                  избира се командата Data/Sort. Excel избира клетките със записите на базата данни (без реда с имената на полетата) и отваря диалогов прозорец Sort. По-подразбиране в полето Sort by  е избрано първото поле и е включен радио бутона Ascending (възходящ ред);

-                                  избира се в полето Sort by признакът с най-висок приоритет - името на полето, по което се предвижда първо да се сортират записите на базата данни. Ако първото поле съдържа повтарящи се стойности и трябва да се зададе как да се подреждат един спрямо друг записите в дублиращото се първо поле, се избира второто поле за сортиране от списъка на полето Then by и ако е необходимо, се включва радио бутона Descending (низходящ ред) в дясно от него..

Ако се налага може да бъде избрано и трето поле за сортиране в Then by и след това да се зададе начина на подреждане.

Допълнителни условия относно начина на сортиране могат да се зададат в диалоговия прозорец Sort Options, който се отваря след натискането на бутон Options.

Sort Top To Bottom – сортиране на записите (редовете на списъка);

Sort Left To Right – преподреждане на полетата (колонките) в записите.

Стандартно Excel не прави разлика между главни  и малки букви при сортировката. За да се прави разлика се избира опцията Case Sensitive.

Падащ списък First key sort order – съдържа освен стандартно установен начин за сортиране Normal и възможност за подреждане на данните в ред, дефиниран от потребителя. Обикновено този ред отразява някаква логическа последователност – имена на дните в седмицата, имената на месеците и т.н.. Тези последователности са дефинирани предварително  чрез командата Tools/Options/Custom Lists.

Потребителски дефиниран ред за сортиране може да бъде приложен само спрямо първия (най-старшия) признак на диалоговия прозорец Sort.

Направените дефиниции в диалоговите прозорци Sort и Sort Options се съхраняват и са валидни докато не бъдат променени или докато не бъде избран друг списък за сортиране.

3. Филтриране на данни  в списък

3.1. Общи понятия

Филтрирането е бърз и лесен начин за намиране и работа с определено подмножество от данни. То се осъществява  по критерий, зададен от потребителя - всички записи, които удовлетворяват зададения критерий се показват едновременно на екрана и са достъпни за последваща обработка. Обслужва се от командата Data/Filter/ AutoFilter - за автоматично филтриране и Data/Filter//Advanced Filter - усъвършенствано филтриране.

3.2. Автоматично филтриране -

С избиране на командата Data/Filter/ AutoFilter се появява по един бутон-стрелка в името на всяка колона. Всяка стрелка отваря падащ списък, от който може да бъде избран филтриращия критерий. Списъкът съдържа всички стойности, срещащи се в  съответната колона. Изборът на една от тях предизвиква скриване на всички записи, които не съдържат избраната стойност. Премахването на филтриращият критерий става чрез опцията All, при което всички скрити записи се показват.

Освен съдържащите се в съответната колона стойности, като елементи на падащ списък са включени и допълнителни опции, които разширяват възможностите за автоматично филтриране:

Blanks – за показване на всички записи, които съдържат празна клетка в избраната колона;

NonBlanks – за показване на записите, които имат някаква стойност в този стълб.

Допълнителни възможности за автоматично филтриране предоставят опциите    Top 10 и Custom. Top 10 е приложима само спрямо колони, които съдържат числови стойности. Тя предоставя възможност да бъдат показвани определен брой записи, които имат в избраната си колона най-големите (Top), или най-малките (Bottom) стойности. Броят на записите се задава от потребителя.

Опцията Custom AutoFilter позволява да се задават потребителски критерии от тип сравнение. Дефинирането на критерия става в диалоговия прозорец Custom AutoFilter. В него се избира операторът за сравнение (>,=,<=,,=) и се задава граничната стойност. Стойността може да бъде избрана от падащ списък или да бъде въведена директно. Могат да бъдат едновременно дефинирани два критерия, свързани помежду си с връзка And или Or.

Връзката AND позволява дефинирането на диапазон [a,b](a AND b). В резултат се показват само тези записи, които са в диапазона [a,b] за даденото име на поле.

Връзката OR е полезна, когато се търсят записите, които имат едната от две различни стойности в съответната колона (поле).

Командата AutoFilter може да бъде прилагана неколкократно както над една и съща колона (поле), така и над различни колони. По този начин се филтрират вече филтрирани данни, т.е. връзката между последователно прилаганите филтриращи критерии е от типа AND.

Ако потребителят желае да извърши филтриране само по определени колони (полета), тогава имената на тези колони се избират предварително. След задаване на командата AutoFilter само за тях ще се показват бутоните-стрелка. Ако е необходимо стрелка да се появи само в етикета на една колона е необходимо да се избере името на колоната и първата клетка под нея.

Отменянето на филтъра се извършва с повторно избиране на командата AutoFilter. При това всички  скрити записи се показват , а стрелките в имената на колоните изчезват.

3.3. Усъвършенствано филтриране – Advanced Filter

3.3.1. Общи понятия

По сравнение с автоматичното, усъвършенстваното филтриране Advanced Filter предлага две допълнителни възможности:

-                                  копиране на данните, които удовлетворяват дефинирания критерий (т.е. възможност за генериране на справки);

-                                  дефиниране на т. Н. Изчислителни критерии т.е. в качеството на критерий  се използва резултатът от изчисляването на формула.

Технологията на използването на усъвършенствания филтър изисква предварителна подготовка на област за критерий  и евентуално изходна област.

Област за критерий – описват се условията, по които ще се търсят записите. Областта се състои от два или повече реда. Първият ред съдържа имената на колоните, които ще бъдат проверявани. На втория и евентуално на следващите редове се записват конкретните условия за търсенето. Препоръчва се областта за критерий да бъде разположена под или над списъка за да не бъде скрита при филтрирането.

Областта за изход – необходима е само ако записите, удовлетворяващи филтриращия критерий ще бъдат копирани.

Първият ред от тази област включва имената на колоните в списъка – на всички колони или само на тези от тях, чиито стойности трябва да бъдат изведени. Имената могат да бъдат подредени в същата последователност, в която са в списъка или не. Редовете под първия трябва да бъдат празни, тъй като там ще се копират филтрираните данни.

Тъй като имената на колоните в списъка, в областта за  критерий и в областта за изход трябва да бъдат съвършено еднакви, добре е подготовката на двете области да се извършва с копиране, като по  този начин се осигурява пълна идентичност на имената.

Усъвършенстваното филтриране дава възможност за използване на два типа филтриращи критерии:

-                                  от тип сравнение (сравнителни критерии);

-                                  изчислителни критерии.

3.3.2. Усъвършенстваното филтриране от тип сравнение

Чрез сравнителни критерии се дефинират два вида условия

–                                за съвпадение (точна стойност);

–                                тип сравнение.

В съответствие с това един сравнителен критерий може да представлява

-                                  поредица от символи (текст, число, данни) които се търсят в съответната колона;

-                                  математически израз за сравнение.

Всеки  критерий за дефиниране на условия за филтриране се отнася до една единствена колона в изходния списък. Ако трябва да се съчетаят едновременно  няколко условия, е необходимо да се дефинира съставен критерии, тъй като Advanced Filter не позволява извършването на последователни филтрирания. Връзката между отделните условия – AND или OR се определя чрез начина, по който те се разполагат в областта на критерия:

-                                  ако условията трябва да бъдат изпълнени едновременно (връзка AND)те се разполагат на един ред;

-                                  ако поне едно от условията трябва да бъде изпълнено (връзка OR) те се разполагат на съседни редове.

По  този начин могат да бъдат дефинирани достатъчно гъвкави критерии.

Изчислителните критерии се използват, когато се налага оценяване на стойностите в дадена колона относно някаква стойност, която не се съдържа в списъка. Наричат се още критерии-формула.

Изчислителният критерий е валидна формула, в която операнди могат да бъдат адреси на клетки, които са “външни” за списъка. Той започва със знак “=” и представлява израз от тип  сравнение. Критерият-формула трябва да касае поне една колона в списъка и да включва адреса на клетка от тази колона (не е задължително да е адресът на първата клетка с данни). При филтрирането формулата се преизчислява последователно за всички записи в списъка. Резултатът от нейното калкулиране е TRUE –ако дефинираното условие е изпълнено и False –в противен случай. Записите  , за които резултатът е TRUE се  филтрират. За да се осигури преизчисляването на формулата за всеки запис е необходимо обръщенията към клетките в списъка да бъдат относителни.

Гъвкавостта на заявката за търсене може да се осигури ако на потребителя се предостави възможност сам да дефинира различни ограничителни условия, без за това да бъде необходимо да се пренастройва изчислителния критерий. Това може да стане като във формулата-критерий вместо константи се използват адреси на клетки (например “=AND(J6>=$X$1,J6<=$Y$1)’ – Записи в които J6 е в диапазона, определен  от граничните стойности, въведени в клетки Х1 и Y1). Потребителят в тези клетки ще въвежда различни гранични стойности и по този начин в една и съща формула ще могат да бъдат дефинирани различни условия.

Изчислителните критерии също могат да бъдат използвани самостоятелно или в комбинация. Начинът, по който са разположени в критеиалната област  ( на един или ,на съседни редове) определя типът на връзката – AND или OR. Изчислителните критерии могат да бъдат комбинирани и със сравнителни критерии в една и съща критериална област.

При използване на изчислителните критерии трябва да се имат предвид следните особености:

-                                  формулата трябва да адресира поне една колона в списъка. Като правило в нея се записва относителният адрес на първата клетка в тази колона. Когато във формулата на изчислителен критерий  Excel срещне относителен адрес на клетка, той последователно настройва този адрес към всяка клетка в съответната колона и оценява резултатът от преизчислението на формулата. Абсолютни адреси се използват за адресиране на клетки, чието положение не се мени в процеса на оценяването.

-                                  Даването на етикети на изчислителният критерий в критериалната област е задължително. Той не трябва да съвпада с име на колона от списъка на данни. В противен случай Excel няма да използва формулата като изчислителен критерий, а ще използва върнатата от формулата стойности като сравнителен критерий. Това би довело до неочаквани и неверни резултати.

Филтрирането се стартира с командата Data/Filter/Advanced Filter, в чийто диалогов прозорец Advanced Filter се дефинират  - операцията над данните и използваните области:

Action – операция над данните – може да бъде дефинирано:

Filter the List in-place - само филтриране –– или

Copy to Another Location - копиране на филтрираните записи в областта за изход;

Unique Record Only – опция за създаване на условия за неповторяемост на филтрираните данни. Опцията се използва за проверка и отсяване на дублиращите се записи. Ако бъде избрана без да бъде дефиниран критерий, всички дублиращи се записи ще бъдат скрити.

List Range – входна област . Като първи ред във входната област задължително трябва да се включат имената на колоните, тъй като те идентифицират структурата на записите с данни. По тази  причина имената на колоните в списъка трябва да бъдат уникални.

Criteria Range – област за критерий. Независимо, че в критериалната област могат да бъдат предварително подготвени няколко възможни условия за търсене, в даден момент филтрирането се осъществява по текущо дефинирания критерий. Excel автоматично му присвоява името Criteria.

Copy To – изходна област. Добре е изходната област да се предвиди достатъчно голяма, тъй като е трудно да се предвиди броят на извлечените записи. При недостиг на място се извеждат толкова записи , колкото могат да се поберат в областта и се извежда съобщение дали да се копират и останалите записи или не. От тази гледна точка най-добре е зоната да се обяви като неограничена. Това става като в дефиницията се включи само редът с имената на колоните.  Ако вместо област се укаже само една клетка, Excel копира в областта, започваща от клетката не само филтрираните записи с данни, но и имената на колоните в изходния списък.

Извлечените  записи се копират върху старите, поради което не е необходимо областта за изход да бъде предварително чистена. По тази причина, когато е необходимо да се  съхраняват изходите от различните филтри, за всеки филтър трябва да се подготви и да се дефинира нова изходна област. На  текущо дефинираната изходна областExcel автоматично присвоява името Extract.

Известна особеност в техниката на работа съществува, когато филтрираните записи трябва да се копират в друга работна страница. Тогава е необходимо да се избере клетката от страницата, в която ще се копират записите и след това да се стартира команда Data/Filter/Advanced Filter.

Анулиране на резултатите от Advanced Filter и показване на скритите записи става с командата Data/Filter/Show All.

Когато е установен режим на филтриране – независимо дали с AutoFilter или Advanced Filter много от командите  и възможностите на Excel се прилагат само върху филтрираните записи. Филтрирания списък може да бъде;

-                                  отпечатван – печатат се само показаните на екрана записи;

-                                  форматиран – форматират се само видимите клетки;

-                                  редактиран – изчистват се и се копират само видимите клетки;

-                                  сортиран – пренареждат се само видимите редове;

-                                  обобщаван с бутона за автоматична сума () – сумират се само видимите данни;

-                                  графично интерпретиран – сериите включват само видимите данни.