броене ....
18 отговора
0 прегледа
броене ....
Здр
В колона B:B съм записал различни думи ...., а в колона C:C
датите от 01.01.2008 до края ан годината .
Въпроса ми е : Как да изброя определена дума по зададена дата ?
Примерно : искам да видя колко пъти се среща думата химикал на дата 23.09.2008 .
В колона B:B съм записал различни думи ...., а в колона C:C
датите от 01.01.2008 до края ан годината .
Въпроса ми е : Как да изброя определена дума по зададена дата ?
Примерно : искам да видя колко пъти се среща думата химикал на дата 23.09.2008 .
Re: броене ....
Пак Excel, и пак VBA...
Сега тотално ме обърка, и вече не знам какво точно правиш. Пишеш, че в колона В имаш дати от 01.01.2008 до 31.12.2008. Сега се оказва, че търсиш колко пъти се повтаря това нещо в една и съща дата!?!? Да разбирам ли, че датите не са поредни, ами една и съща дата може да се повтаря няколко пъти?
Можеш ли да направиш примерен файл, който да огледаме? Може да го качиш някъде на фрий сървър.
Щирлиц
Сега тотално ме обърка, и вече не знам какво точно правиш. Пишеш, че в колона В имаш дати от 01.01.2008 до 31.12.2008. Сега се оказва, че търсиш колко пъти се повтаря това нещо в една и съща дата!?!? Да разбирам ли, че датите не са поредни, ами една и съща дата може да се повтаря няколко пъти?
Можеш ли да направиш примерен файл, който да огледаме? Може да го качиш някъде на фрий сървър.
Щирлиц
Re: броене ....
Не във форума, а в някой free server. Цъкни на сигнатурата ми (Надписа "Щирлиц" най-отдолу), и се регистрирай. Безплатно е, и можеш да си upload file вътре. Сървъра работи само денем, но е достатъчен да ни свърши работа.
Щирлиц
Щирлиц
Re: броене ....
Е, убава работа. ;о) Ми, дай линка де.
В твоята директория само ти си виждаш файловете. За да ги вземе някой друг - трябва да напишеш линка.
Щирлиц
В твоята директория само ти си виждаш файловете. За да ги вземе някой друг - трябва да напишеш линка.
Щирлиц
Re: броене ....
Ахъм. Отворих го. ;о) Май се схванах вече. Горе-долу ми стана ясно какво искаш да постигнеш, но ако го направиш със сорс код на VBA - ще работи бавно. Ще опитам след малко да изровя информация за LOOKUP функциите на Excel. Едно време ги знаех, но с Excel не съм се занимавал отдавна...
Щирлиц
Щирлиц
Re: броене ....
Ми, аз те забравих бре, момко. ;о(( За което се извинявам.
Преправих файла, и съм ти го качил пак там в твоята папка. Разгледай, и ако има нещо неясно - питай.
Новите колони на страница "Данни" по принцип се ползват само служебно от таблицата, и може да се скрият, за да не се пречкат по екрана.
Щирлиц
Преправих файла, и съм ти го качил пак там в твоята папка. Разгледай, и ако има нещо неясно - питай.
Новите колони на страница "Данни" по принцип се ползват само служебно от таблицата, и може да се скрият, за да не се пречкат по екрана.
Щирлиц
Re: броене ....
Благодаря ти Щирлиц !
Може ли да попитам ...
Думичките химикал, бюро и тнт... не ги изписвам на ръка ,те се отпечатват посредством макрос ..... та въпроса ми е дали за това , каквото и да се опечата все нули се изписват , само в " И други..." се отпечатва единица.
Тоест Думичките, които се отпечатват и думичките (заглавията на колоните) не се разпознават.....
А според кода ако отпечатаната думичка е различна от думичките (заглавията на колоните) то да се отпечата 1 в колона "И други"
Може ли да попитам ...
Думичките химикал, бюро и тнт... не ги изписвам на ръка ,те се отпечатват посредством макрос ..... та въпроса ми е дали за това , каквото и да се опечата все нули се изписват , само в " И други..." се отпечатва единица.
Тоест Думичките, които се отпечатват и думичките (заглавията на колоните) не се разпознават.....
А според кода ако отпечатаната думичка е различна от думичките (заглавията на колоните) то да се отпечата 1 в колона "И други"
Re: броене ....
Именно защото все още не знаем какво се опитваш да направиш - нещото става, ама половинчато.
Понеже по начина, по който си го организирал, се получава дублиране на редовете с дати, съм написал мъничък макрос, който изписва в нужната колона "1", ако намери някоя от познатите за него думи, и в последната колона "1", ако думата е различна от всички тях. Ако искаш да добавиш и/или промениш дума - ще се налага редакция на този макрос.
Това решение НЕ Е хубаво. Ако решиш да споделиш по-подробно - може да намерим елегантно решение, при което макроса няма да е нужен, и ще имаш по-голяма гъвкавост на таблицата.
Защо по-голяма гъвкавост!? Ами, защото с този макрос разположението на единиците и нулите е фиксирано. Ако изтриеш колона, или добавиш колона там - макроса няма как да разбере това, и продължава да вписва във фиксираните за него колони.
Дойде ми на ум, че би могло в клетките, които са най-отгоре в колоните с помощните числа ("1" и "0") може да се запишат думичките, които искаш да търсиш, а във самите клетки - формулите: =IF($B2=D$1;1;0)
Тази формула я разполагаш в клетка D2, и я копираш с изтегляне надясно до колона J, и надолу през всички редове, в които има данни. Недостатъка на този начин е, че множеството формули в таблицата раздува файла, и той става голям. И също така когато добавяш нов ред с данни - ще се наложи да копираш формулата надолу.
Е, засега толкова. Пиши пак.
П.П. Ако искаш да сложиш формули в клетките от колона D до колона J - ще трябва да изтриеш макроса, иначе той ще изтрива формулите.
Щирлиц
Понеже по начина, по който си го организирал, се получава дублиране на редовете с дати, съм написал мъничък макрос, който изписва в нужната колона "1", ако намери някоя от познатите за него думи, и в последната колона "1", ако думата е различна от всички тях. Ако искаш да добавиш и/или промениш дума - ще се налага редакция на този макрос.
Това решение НЕ Е хубаво. Ако решиш да споделиш по-подробно - може да намерим елегантно решение, при което макроса няма да е нужен, и ще имаш по-голяма гъвкавост на таблицата.
Защо по-голяма гъвкавост!? Ами, защото с този макрос разположението на единиците и нулите е фиксирано. Ако изтриеш колона, или добавиш колона там - макроса няма как да разбере това, и продължава да вписва във фиксираните за него колони.
Дойде ми на ум, че би могло в клетките, които са най-отгоре в колоните с помощните числа ("1" и "0") може да се запишат думичките, които искаш да търсиш, а във самите клетки - формулите: =IF($B2=D$1;1;0)
Тази формула я разполагаш в клетка D2, и я копираш с изтегляне надясно до колона J, и надолу през всички редове, в които има данни. Недостатъка на този начин е, че множеството формули в таблицата раздува файла, и той става голям. И също така когато добавяш нов ред с данни - ще се наложи да копираш формулата надолу.
Е, засега толкова. Пиши пак.
П.П. Ако искаш да сложиш формули в клетките от колона D до колона J - ще трябва да изтриеш макроса, иначе той ще изтрива формулите.
Щирлиц
Редактирано от Щиpлиц на
Re: броене ....
Здр. Щирлиц !!!
Използвах идеяята която ми даде всичко се получи ,но наистина много бавна стана програмата !!!
Използвах идеяята която ми даде всичко се получи ,но наистина много бавна стана програмата !!!
Re: броене ....
Е, тогава можеш да си върнеш макроса, и ако някъде ти се налага да правиш корекции на колоните - ще трябва да променяш и макроса.
Макроса работи по-бързо, защото сработва само по веднъж на всяка промяна на някоя клетка в таблицата. Докато в случая с формулите в клетките - на Excel се налага да опреснява изчисленията във всички клетки с формули, на всяко вписване на нещо си там. Нормално е, колкото повече са формулите - толкова повече време да му отнеме.
И все пак мисля, че си се насочил към грешно решение за програмата ти. Заслужава си да опиташ с нещо просто, но работещо - VB6. Лесно се отваря и работи с Access база данни, контролите му са по-удобни за работа, и не на последно място - VB6 създава самостоятелно ЕХЕ, което работи без нищо друго. Във варианта, който си започнал - таблицата ти изисква MS Office, и също така ще си зависим до известна степен от версията на Excel. Писал съм доста по-големи проекти под Excel, и мога да го определя само като изгубено време.
Щирлиц
Макроса работи по-бързо, защото сработва само по веднъж на всяка промяна на някоя клетка в таблицата. Докато в случая с формулите в клетките - на Excel се налага да опреснява изчисленията във всички клетки с формули, на всяко вписване на нещо си там. Нормално е, колкото повече са формулите - толкова повече време да му отнеме.
И все пак мисля, че си се насочил към грешно решение за програмата ти. Заслужава си да опиташ с нещо просто, но работещо - VB6. Лесно се отваря и работи с Access база данни, контролите му са по-удобни за работа, и не на последно място - VB6 създава самостоятелно ЕХЕ, което работи без нищо друго. Във варианта, който си започнал - таблицата ти изисква MS Office, и също така ще си зависим до известна степен от версията на Excel. Писал съм доста по-големи проекти под Excel, и мога да го определя само като изгубено време.
Щирлиц
Re: броене ....
Бих се опитал този проект да го направя с VB6, но аз сега тепърва започвам с VB6... много неща не са ми ясни как стават .
Re: броене ....
Като гледам, и VBA не ти е ясно, но все пак полагаш усилия. Прехвърли си усилията към VB6, и бързо ще разбереш кое как.
Щирлиц
Щирлиц