🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.pl.openoffice
Article #14546

Re: [Calc] Wyszukiwanie w tekście

#14546
From: JaromirD
Date: Fri, 19 Nov 2010 22:47
73 lines
3389 bytes
Sławomir Załęcki wrote:

> Witam,
> 
> Mam tabelkę (dwie kolumny) z symbolami i liczbami:
> (kol A)	(kol B)
> S345	1275
> N765	2154
> N6F3	1629
> MNS3	1962
> NHS6	2360
> N7HG	1949
> V12A	660
> 8199K	1453
> NN7	1343
> 8450S	2058
> NA3D	1182
> Q340	1347
> BB40	2100
> itd.
> 
> W innym miejscu mam kolumnę z nazwami, np:
> Próbka KT/NHS6/052008
> Próbka PAA/V12A/2009
> Próbka LS/NN7-I/012007
> Wzorzec WZ/W-N765/2009
> Próbka LS/NA3D/2007
> Próbka LS/NN7-II/022007
> itd.
> 
> Obok tej kolumny mam wypisać liczby, które odpowiadają
> wyszukanym symbolom z pierwszej tabeli:
> 
> (kol G)			(kol H)
> Próbka KT/NHS6/052008	2360
> Próbka PAA/V12A/2009	660
> Próbka LS/NN7-I/012007	1343
> Wzorzec WZ/W-N765/2009	2154
> Próbka LS/NA3D/2007	1182
> Próbka LS/NN7-II/022007	1343
> itd.
> 
> używam do tego takiej formuły (potworka) w kolumnie H:
> 
=JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$1;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$2;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST(A$3$;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$4;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$5;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$6;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$7;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$8;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$9;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$10;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$11;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$12;G1));JEŻELI(CZY.BŁ(SZUKAJ.TEKST($A$13;G1));"-";
$B$13);$B$12);$B$11);$B$10);$B$9);$B$8);$B$7);$B$6);$B$5);$B$4);$B$3);$B$2);
$B$1)
> 
> Problem w tym, że tabelka się rozrasta i robi się
> z tego koszmar.
> 
> Czy ktoś ma pomysł jak to uprościć, a nie zagnieżdżać
> w nieskończoność tej formuły?
> 
> Sławek
> 

Po pierwsze, dobrze by było, żebyś w kolumnie A zawsze pisał tę samą ilość 
znaków z kolumny G po ukośniku; 4 chyba wystarczą; mogą być myślniki "-".
Po drugie tajemne zaklęcie ma postać:
=WYSZUKAJ.PIONOWO(MID($G1;SZUKAJ.TEKST("/";$G1;1)+1;4);$A$1:$B$14;2;0)
Idąc od środka:
- szukaj.tekst podaje numer pozycji - licząc od pierwszego znaku - na której 
znajduje się ukośnik w komórce kolumny G
- mid zwraca 4 znaki począwszy od pozycji ukośnika +1 (bo nie chcesz samego 
ukośnika, tylko znaki po nim)
- wyszukaj.pionowo wyszukuje 4 znaki zwracane przez funkcję mid w macierzy 
A1:B14 i zwraca zawartość odpowiedniej komórki w 2. wierszu. Zero na końcu 
jest dlatego, że prawdopodobnie wartości w kolumnie A nie będą posortowane 
alfabetycznie. Jeśli będą, można je pominąć.
Jest to na tyle krótki wzór, że można go wpisać w jedną komórkę.

JaromirD
Technical Details
Message-ID: <ic6uqm$6bl$1@news.onet.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!news.onet.pl!not-for-mail
References: <ic6mk4$2ef1$1@news.mm.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!news.onet.pl!not-for-mail
From: JaromirD <rydberg@q2.pl>
Newsgroups: alt.pl.openoffice
Subject: Re: [Calc] Wyszukiwanie w tekście
Followup-To: alt.pl.openoffice
Date: Fri, 19 Nov 2010 23:47:49 +0100
Organization: http://onet.pl
Lines: 73
Message-ID: <ic6uqm$6bl$1@news.onet.pl>
References: <ic6mk4$2ef1$1@news.mm.pl>
NNTP-Posting-Host: 83.1.100.10
Mime-Version: 1.0
X-Trace: news.onet.pl 1290206870 6517 83.1.100.10 (19 Nov 2010 22:47:50 GMT)
X-Complaints-To: niusy@onet.pl
NNTP-Posting-Date: Fri, 19 Nov 2010 22:47:50 +0000 (UTC)
User-Agent: KNode/4.4.7
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit