exfunk 6 excel funkcje w przykladach ebook promocyjny helion pl 7UKDQ5BM2JW4OYZT7Q6SZGRD7MDNC4DOKXGR4AI


IDZ DO
IDZ DO
PRZYKŁADOWY ROZDZIAŁ
PRZYKŁADOWY ROZDZIAŁ
Excel. Funkcje
SPIS TRESCI
SPIS TRESCI
w przykładach
KATALOG KSIĄŻEK
KATALOG KSIĄŻEK
Autor: Krzysztof Masłowski
ISBN: 83-246-0026-4
KATALOG ONLINE
KATALOG ONLINE
Format: B5, stron: 416
ZAMÓW DRUKOWANY KATALOG
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
TWÓJ KOSZYK
Arkusz kalkulacyjny Excel to jedno z najczęSciej wykorzystywanych narzędzi
DODAJ DO KOSZYKA
DODAJ DO KOSZYKA
informatycznych. Z jego możliwoSci korzystają nie tylko księgowi, finansiSci
i handlowcy, ale także naukowcy, którzy stosują go do przeprowadzania złożonych
obliczeń i symulacji. Swoją potęgę Excel pokazuje dopiero wtedy, gdy użytkownik
CENNIK I INFORMACJE
CENNIK I INFORMACJE
sięgnie po funkcje  gotowe mechanizmy obliczeniowe pozwalające na wykonanie
niemal dowolnych działań i operacji obliczeniowych. Łącząc pojedyncze funkcje
ZAMÓW INFORMACJE
ZAMÓW INFORMACJE
w formuły, można szybciej zrealizować praktycznie każde zadanie.
O NOWOSCIACH
O NOWOSCIACH
 Excel. Funkcje w przykładach to książka przedstawiająca zasady stosowania funkcji
w obliczeniach wykonywanych za pomocą arkusza kalkulacyjnego Excel. Czytając ją,
ZAMÓW CENNIK
ZAMÓW CENNIK
poznasz podstawy tworzenia własnych formuł oraz nauczysz się reguł adresowania
komórek i odwoływania się do nich w formułach. Dowiesz się również, jak przypisywać
nazwy komórkom i zakresom oraz jak korzystać z nich podczas obliczeń. Znajdziesz tu
CZYTELNIA
CZYTELNIA
także szczegółowe omówienie poszczególnych funkcji Excela.
FRAGMENTY KSIĄŻEK ONLINE
FRAGMENTY KSIĄŻEK ONLINE
" KolejnoSć operacji w formułach
" Wpisywanie i edycja formuł w komórkach
" Tworzenie i używanie nazw
" Funkcje logiczne
" Funkcje daty i czasu
" Funkcje informacyjne
" Funkcje wyszukiwania
" Funkcje matematyczne
" Funkcje bazy danych
" Funkcje statystyczne
" Funkcje finansowe
Kalkulatory już dawno stały się przeżytkiem.
Wydawnictwo Helion
ul. KoSciuszki 1c DziS najdoskonalszym narzędziem obliczeniowym jest Excel
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Spis treści 5
Spis treści
Wstęp ............................................................................................ 13
Część I Budowanie warsztatu ................................................... 15
Rozdział 1. Podstawy ....................................................................................... 17
Domyślna interpretacja wpisu do komórki ...................................................................... 17
Operatory i kolejność operacji w formułach ................................................................... 21
Operatory odwołania ................................................................................................. 21
Operatory arytmetyczne ............................................................................................ 22
Operator konkatenacji ............................................................................................... 23
Operatory porównania ............................................................................................... 23
Porównanie priorytetów operatorów używanych w formułach ................................ 25
Sprawdzanie kolejności wykonywania operacji w formułach .................................. 25
Dlaczego i do czego używamy funkcji?  przykłady .................................................... 27
Obliczenia w komórkach arkusza ............................................................................. 27
Formatowanie warunkowe ........................................................................................ 29
Sprawdzanie poprawności ......................................................................................... 31
Wprowadzanie formuł do komórek arkusza .................................................................... 32
Wpisywanie formuły z klawiatury ............................................................................ 33
Wprowadzanie formuły przez wskazywanie adresów .............................................. 33
Wprowadzanie funkcji do formuły ........................................................................... 34
Edytowanie formuł .......................................................................................................... 38
Wyświetlanie i znajdowanie formuł ................................................................................ 39
Znajdowanie formuł po ich wyświetleniu ................................................................. 39
Znajdowanie formuł za pomocą okna dialogowego Przejdz do ............................... 39
Obliczenia automatyczne i ręczne ................................................................................... 41
Odwołania do komórek w formułach .............................................................................. 42
Odwołania względne ................................................................................................. 42
Odwołania bezwzględne ........................................................................................... 43
Adresy mieszane ....................................................................................................... 44
Klawisz F4 ................................................................................................................. 45
Adresowanie w trzecim wymiarze ............................................................................ 45
Błędy sygnalizowane przez formuły i funkcje ................................................................ 47
Rozdział 2. Nazwy ............................................................................................ 49
Zasady tworzenia nazw ................................................................................................... 50
Nazwy z odwołaniem bezwzględnym ............................................................................. 50
Standardowe tworzenie nazw .................................................................................... 50
Przypisywanie nazw do istniejących odwołań .......................................................... 51
6 Excel. Funkcje w przykładach
Tworzenie nazw za pomocą paska formuły .............................................................. 52
Tworzenie nazw za pomocą tekstu wpisanego do sąsiednich komórek arkusza ...... 52
Nazwy z odwołaniem względnym ................................................................................... 53
Nazwy formuł .................................................................................................................. 54
Nazwy stałych .................................................................................................................. 55
Modyfikowanie i usuwanie nazw .................................................................................... 56
Modyfikowanie nazwy .............................................................................................. 56
Usuwanie nazw ......................................................................................................... 56
Nazwy na poziomie skoroszytu i nazwy na poziomie arkusza ....................................... 57
Nadawanie nazw na poziomie arkusza ...................................................................... 58
Analiza zależności między nazwami na poziomie arkusza
i na poziomie skoroszytu ........................................................................................ 59
Praktyczny sposób budowania skoroszytów z nazwami na poziomie arkuszy ......... 60
Znajdowanie nazw ........................................................................................................... 60
Wyszukiwanie na liście nazw definiowanych ........................................................... 61
Wyszukiwanie nazw za pomocą paska formuły ....................................................... 61
Znajdowanie nazw przez zmniejszanie skali wyświetlania ...................................... 62
Wklejanie listy nazw ................................................................................................. 62
Znajdowanie nazwanych zakresów za pomocą okna Przechodzenie do ................... 63
Menadżer nazw ................................................................................................................ 64
Rzadko używany operator części wspólnej zakresów ..................................................... 65
Wskazówki kończące część I .......................................................................................... 66
Część II Funkcje ........................................................................ 67
Rozdział 3. Funkcje logiczne ............................................................................ 71
PRAWDA  TRUE ....................................................................................................... 71
FAASZ  FALSE ........................................................................................................... 72
NIE  NOT .................................................................................................................... 72
JEŻELI  IF ................................................................................................................... 75
ORAZ  AND ................................................................................................................ 76
LUB  OR ...................................................................................................................... 78
Rozdział 4. Funkcje daty i czasu ....................................................................... 83
CZAS  TIME ............................................................................................................... 85
CZAS.WARTOŚĆ  TIMEVALUE ............................................................................. 87
DATA  DATE ............................................................................................................. 88
DATA.RÓŻNICA  DATEDIF .................................................................................... 89
DATA.WARTOŚĆ  DATEVALUE ........................................................................... 91
DNI.360  DAYS360 .................................................................................................... 92
DZIEC  DAY ............................................................................................................... 94
DZIEC.TYG  WEEKDAY .......................................................................................... 95
DZIŚ  TODAY ............................................................................................................ 97
EDATE ............................................................................................................................ 98
EOMONTH ................................................................................................................... 101
GODZINA  HOUR .................................................................................................... 102
MIESIC  MONTH .................................................................................................. 105
MINUTA  MINUTE .................................................................................................. 106
NETWORKDAYS ........................................................................................................ 107
ROK  YEAR .............................................................................................................. 109
SEKUNDA  SECOND .............................................................................................. 110
TERAZ  NOW ........................................................................................................... 111
WEEKNUM .................................................................................................................. 113
WORKDAY .................................................................................................................. 115
YEARFRAC .................................................................................................................. 116
Spis treści 7
Rozdział 5. Funkcje informacyjne ................................................................... 117
BRAK  NA ................................................................................................................ 117
CZY.ADR  ISREF ..................................................................................................... 119
CZY.BA  ISERR ........................................................................................................ 120
CZY.BAD  ISERROR ............................................................................................ 122
CZY.BRAK  ISNA .................................................................................................... 123
CZY.LICZBA  ISNUMBER ..................................................................................... 124
CZY.LOGICZNA  ISLOGICAL ............................................................................... 126
CZY.NIE.TEKST  ISNONTEXT .............................................................................. 127
CZY.PUSTA  ISBLANK .......................................................................................... 128
CZY.TEKST  ISTEXT .............................................................................................. 129
INFO .............................................................................................................................. 131
ISEVEN ......................................................................................................................... 133
ISODD  ISODD ......................................................................................................... 134
KOMÓRKA  CELL ................................................................................................... 135
L  N ............................................................................................................................ 139
NR.BADU  ERROR.TYPE ..................................................................................... 140
TYP  TYPE ................................................................................................................ 141
Rozdział 6. Funkcje tekstowe ........................................................................ 143
ASC ............................................................................................................................... 143
BAHTTEXT .................................................................................................................. 144
DA  LEN .................................................................................................................... 145
FRAGMENT.TEKSTU  MID ................................................................................... 146
KOD  CODE .............................................................................................................. 148
KWOTA  DOLLAR .................................................................................................. 149
LEWY  LEFT ............................................................................................................ 150
LITERY.MAAE  LOWER ........................................................................................ 151
LITERY.WIELKIE  UPPER ..................................................................................... 152
OCZYŚĆ  CLEAN .................................................................................................... 153
PODSTAW  SUBSTITUTE ...................................................................................... 153
PORÓWNAJ  EXACT .............................................................................................. 155
POWT  REPT ............................................................................................................ 156
PRAWY  RIGHT ....................................................................................................... 157
SZUKAJ.TEKST  SEARCH ..................................................................................... 157
T  T ............................................................................................................................ 159
TEKST  TEXT ........................................................................................................... 160
USUC.ZBDNE.ODSTPY  TRIM ......................................................................... 162
WARTOŚĆ  VALUE ................................................................................................ 163
Z.WIELKIEJ.LITERY  PROPER ............................................................................. 164
ZAOKR.DO.TEKST  FIXED ................................................................................... 164
ZASTP  REPLACE ................................................................................................ 166
ZACZ.TEKSTY  CONCATENATE ...................................................................... 168
ZNAJDy  FIND ......................................................................................................... 168
ZNAK  CHAR ........................................................................................................... 170
Rozdział 7. Funkcje wyszukiwania i adresu ..................................................... 171
ADR.POŚR  INDIRECT ........................................................................................... 171
ADRES  ADDRESS .................................................................................................. 174
HIPERACZE  HYPERLINK .................................................................................. 176
ILE.WIERSZY  ROWS ............................................................................................. 178
INDEKS  INDEX ...................................................................................................... 179
LICZBA.KOLUMN  COLUMNS ............................................................................. 182
8 Excel. Funkcje w przykładach
NR.KOLUMNY  COLUMN ..................................................................................... 184
OBSZARY  AREAS ................................................................................................. 185
PODAJ.POZYCJ  MATCH .................................................................................... 185
PRZESUNICIE  OFFSET ....................................................................................... 191
TRANSPONUJ  TRANSPOSE ................................................................................. 195
WIERSZ  ROW ......................................................................................................... 196
WYBIERZ  CHOOSE ............................................................................................... 197
WYSZUKAJ  LOOKUP ........................................................................................... 199
WYSZUKAJ.PIONOWO  VLOOKUP ..................................................................... 201
WYSZUKAJ.POZIOMO  HLOOKUP ..................................................................... 202
Rozdział 8. Funkcje matematyczne ................................................................. 205
ACOS  ACOS ............................................................................................................ 205
ACOSH  ACOSH ...................................................................................................... 206
ASIN  ASIN ............................................................................................................... 206
ASINH  ASINH ......................................................................................................... 207
ATAN  ATAN ........................................................................................................... 207
ATAN2  ATAN2 ....................................................................................................... 207
ATANH  ATANH ..................................................................................................... 208
COS  COS .................................................................................................................. 209
COSH  COSH ............................................................................................................ 210
EXP  EXP .................................................................................................................. 211
FACTDOUBLE  FACTDOUBLE ............................................................................ 211
GCD  GCD ................................................................................................................ 212
ILOCZYN  PRODUKT ............................................................................................. 212
KOMBINACJE  COMBIN ....................................................................................... 213
LCM  LCM ................................................................................................................ 213
LICZBA.CAAK  TRUNC ......................................................................................... 214
LN  LN ....................................................................................................................... 216
LOG  LOG ................................................................................................................. 217
LOG10  LOG10 ......................................................................................................... 218
LOS  RAND .............................................................................................................. 218
MACIERZ.ILOCZYN  MMULT .............................................................................. 219
MACIERZ.ODW  MINVERSE ................................................................................ 220
MOD  MOD ............................................................................................................... 222
MODUA.LICZBY  ABS ........................................................................................... 226
MROUND  MROUND .............................................................................................. 227
MULTINOMIAL  MULTINOMIAL ........................................................................ 228
PI  PI .......................................................................................................................... 229
PIERWIASTEK  SQRT ............................................................................................ 233
POTGA  POWER ................................................................................................... 234
QUOTIENT  QUOTIENT ......................................................................................... 235
RADIANY  RADIANS ............................................................................................. 236
RANDBETWEEN  RANDBETWEEN .................................................................... 236
RZYMSKIE  ROMAN .............................................................................................. 238
SERIESSUM  SERIESSUM ..................................................................................... 239
SILNIA  FACT .......................................................................................................... 240
SIN  SIN .................................................................................................................... 240
SINH  SINH ............................................................................................................... 241
SQRTPI  SQRTPI ...................................................................................................... 241
STOPNIE  DEGREES ............................................................................................... 241
SUMA  SUM ............................................................................................................. 242
Spis treści 9
SUMA.ILOCZYNÓW  SUMPRODUCT ................................................................. 244
SUMA.JEŻELI  SUMIF ............................................................................................ 246
SUMA.KWADRATÓW  SUMSQ ............................................................................ 248
SUMA.X2.M.Y2  SUMX2MY2 ............................................................................... 249
SUMA.X2.P.Y2  SUMX2PY2 .................................................................................. 250
SUMA.XMY.2  SUMXMY2 .................................................................................... 251
SUMY.POŚREDNIE  SUBTOTAL .......................................................................... 252
TAN  TAN ................................................................................................................. 260
TANH  TANH ........................................................................................................... 260
WYZNACZNIK.MACIERZY  MDETERM ............................................................ 261
ZAOKR  ROUND ..................................................................................................... 263
ZAOKR.DO.CAAK  INT .......................................................................................... 264
ZAOKR.DO.NPARZ  ODD ...................................................................................... 265
ZAOKR.DO.PARZ  EVEN ....................................................................................... 265
ZAOKR.DÓA  ROUNDDOWN ................................................................................ 266
ZAOKR.GÓRA  ROUNDUP .................................................................................... 267
ZAOKR.W.DÓA  FLOOR ........................................................................................ 267
ZAOKR.W.GÓR  CEILING ................................................................................... 268
ZNAK.LICZBY  SIGN ............................................................................................. 269
Rozdział 9. Funkcje bazy danych .................................................................... 273
Kryteria .......................................................................................................................... 274
Ogólne zasady tworzenia kryteriów ........................................................................ 274
Koniunkcja i alternatywa warunków ....................................................................... 275
Warunek w postaci formuły .................................................................................... 278
Równa się czy zaczyna się od? ............................................................................... 279
Znaki globalne ......................................................................................................... 280
BD.ILE.REKORDÓW  DCOUNT ............................................................................ 281
BD.ILE.REKORDÓW.A  DCOUNTA ..................................................................... 282
BD.ILOCZYN  DPRODUCT .................................................................................... 284
BD.MAX  DMAX ..................................................................................................... 286
BD.MIN  DMIN ........................................................................................................ 287
BD.ODCH.STANDARD  DSTDEV ......................................................................... 288
BD.ODCH.STANDARD.POPUL  DSTDEVP ......................................................... 289
BD.POLE  DGET ...................................................................................................... 289
BD.SUMA  DSUM .................................................................................................... 290
BD.ŚREDNIA  DAVERAGE ................................................................................... 291
BD.WARIANCJA  DVAR ........................................................................................ 293
BD.WARIANCJA.POPUL  DVARP ........................................................................ 294
Rozdział 10. Funkcje statystyczne .................................................................... 295
CZSTOŚĆ  FREQUENCY ..................................................................................... 296
ILE.LICZB  COUNT ................................................................................................. 299
ILE.NIEPUSTYCH  COUNTA ................................................................................ 301
KOWARIANCJA  COVAR ...................................................................................... 303
KURTOZA  KURT ................................................................................................... 306
KWARTYL  QUARTILE ......................................................................................... 307
LICZ.JEŻELI  COUNTIF ......................................................................................... 308
LICZ.PUSTE  COUNTBLANK ................................................................................ 312
MAX  MAX ............................................................................................................... 313
MAX.A  MAXA ........................................................................................................ 315
MAX.K  LARGE ....................................................................................................... 315
10 Excel. Funkcje w przykładach
MEDIANA  MEDIAN .............................................................................................. 317
MIN  MIN .................................................................................................................. 319
MIN.A  MINA ........................................................................................................... 320
MIN.K  SMALL ........................................................................................................ 320
NACHYLENIE  SLOPE ........................................................................................... 322
NORMALIZUJ  STANDARDIZE ............................................................................ 323
ODCH.KWADRATOWE  DEVSQ .......................................................................... 326
ODCH.STANDARD.POPUL  STDEVP .................................................................. 327
ODCH.STANDARD.POPUL.A  STDEVPA ............................................................ 328
ODCH.STANDARDOWE  STDEV ......................................................................... 329
ODCH.STANDARDOWE.A  STDEVA .................................................................. 330
ODCH.ŚREDNIE  AVEDEV .................................................................................... 330
ODCITA  INTERCEPT .......................................................................................... 331
PEARSON  PEARSON ............................................................................................. 332
PERCENTYL  PERCENTILE .................................................................................. 333
Trochę teorii ............................................................................................................ 334
PERMUTACJE  PERMUT ....................................................................................... 335
Trochę teorii ............................................................................................................ 336
POZYCJA  RANK .................................................................................................... 338
PRAWDP  PROB ...................................................................................................... 340
PROCENT.POZYCJA  PERCENTRANK ............................................................... 341
PRÓG.ROZKAAD.DWUM  CRITBINOM .............................................................. 343
R.KWADRAT  RSQ ................................................................................................. 344
Informacje ogólne o regresji. Funkcje regresji nieliniowej ........................................... 345
REGLINP  LINEST ................................................................................................... 345
REGLINW  TREND ................................................................................................. 347
REGLINX  FORECAST ........................................................................................... 349
ROZKAAD.NORMALNY  NORMDIST ................................................................. 353
SKOŚNOŚĆ  SKEW ................................................................................................. 356
ŚREDNIA  AVERAGE ............................................................................................. 359
ŚREDNIA.A  AVERAGEA ...................................................................................... 360
ŚREDNIA.GEOMETRYCZNA  GEOMEAN .......................................................... 360
ŚREDNIA.HARMONICZNA  HARMEAN ............................................................. 361
ŚREDNIA.WEWN  TRIMMEAN ............................................................................ 363
TEST.CHI  CHITEST ............................................................................................... 363
TEST.F  FTEST ......................................................................................................... 364
TEST.T  TTEST ........................................................................................................ 364
TEST.Z  ZTEST ........................................................................................................ 365
UFNOŚĆ  CONFIDENCE ........................................................................................ 365
WARIANCJA  VAR ................................................................................................. 366
WARIANCJA.A  VARA .......................................................................................... 366
WARIANCJA.POPUL  VARP ................................................................................. 367
WARIANCJA.POPUL.A  VARPA ........................................................................... 367
WSP.KORELACJI  CORREL .................................................................................. 368
WYST.NAJCZŚCIEJ  MODE ................................................................................ 369
Rozdział 11. Funkcje finansowe ....................................................................... 371
Wbudowane funkcje finansowe ..................................................................................... 372
DB ........................................................................................................................... 372
DDB ........................................................................................................................ 374
FV ............................................................................................................................ 374
IPMT ....................................................................................................................... 376
IRR .......................................................................................................................... 378
Spis treści 11
ISPMT ..................................................................................................................... 379
MIRR ....................................................................................................................... 380
NPER ....................................................................................................................... 381
NPV ......................................................................................................................... 382
PMT ......................................................................................................................... 384
PPMT ...................................................................................................................... 385
PV ............................................................................................................................ 385
RATE ...................................................................................................................... 386
SLN ......................................................................................................................... 388
SYD ......................................................................................................................... 389
VDB ........................................................................................................................ 389
Funkcje finansowe z pakietu ATP ................................................................................. 390
Rozdział 12. Funkcje inżynierskie ..................................................................... 395
Skorowidz .................................................................................... 399
Rozdział 6.
Funkcje tekstowe
Funkcje tekstowe służą w zasadzie do działań na tekstach, ale Excel jest tu tolerancyjny
i często argumentami mogą być także liczby. Przekonamy się o tym, analizując podane
w tym rozdziale przykłady. Dzięki funkcjom tekstowym można łatwo między innymi:
wyszukiwać w tekście wybrane znaki, zamieniać je na inne, pozbywać się zbędnych spa-
cji lub zamieniać małe litery na wielkie bądz odwrotnie.
Nie wszystkie funkcje działające na tekstach lub tekstów dotyczące zostały włączone do
tej kategorii. Na przykład, opisana w poprzednim rozdziale, funkcja CZY.TEKST została
zaliczona do funkcji informacyjnych. Również w innych kategoriach znajdują się funk-
cje działające na tekstach, lecz o nich, zgodnie z porządkiem tej książki, będzie mowa
w innych rozdziałach.
Podstawowe funkcje tekstowe obsługują teksty, w których znaki są pojedynczymi baj-
tami. Funkcje te mają swoje odpowiedniki przeznaczone do obsługi tekstów pisanych
znakami dwubajtowymi (znakami pełnej szerokości), co ma miejsce w takich językach
jak tajski. Ich nazwy są rozszerzone o kropkę oddzielającą i literę B. Na przykład odpo-
wiednikiem funkcji DA jest funkcja DA.B. Pierwsza zwraca liczbę znaków jednobajtowych
w tekście, a druga liczbę bajtów w tekstach zapisanych znakami dwubajtowymi. Ponie-
waż przydatność funkcji obsługujących teksty zapisane znakami dwubajtowymi jest
w Polsce niewielka, nie będę ich opisywał. Opiszę jedynie kilka funkcji napisanych
specjalnie dla języków ze znakami dwubajtowymi i nie mających odpowiedników obsłu-
gujących zwykłe teksty. Przykładem takiej funkcji jest np. BAHTTEXT.
ASC
Funkcja wbudowana, dostępna w VBA.
W językach z dwubajtowym zestawem znaków (DBCS) zmienia znaki o pełnej szero-
kości (dwubajtowe) na znaki o połówkowej szerokości (jednobajtowe).
144 Część II f& Funkcje
Składnia:
tekst  to tekst lub odwołanie do komórki zawierającej tekst. Tekst jest
zmieniany tylko wtedy, gdy zawiera znaki dwubajtowe  patrz rysunek 6.1
W przykładzie podanym w systemie pomocy Excel, słowo  EXCEL , nie
zawierające znaków dwubajtowych, nie zostało zmienione.
Rysunek 6.1.
Działanie funkcji ASC
W VBA istnieje funkcja Asc zwracająca kod ASCII pierwszego znaku tekstu. Funkcja
VBA jest używana przez bezpośrednie użycie w procedurze; wywołanie arkuszowej
funkcji ASC musi być zgodne z metodą wywoływania funkcji arkuszowych, opisaną
we wstępie do części II.
BAHTTEXT
Funkcja wbudowana, dostępna w VBA.
Zamienia liczbę na tekst w języku tajskim, dodaje przyrostek  Baht .
Składnia:
liczba  to liczba lub odwołanie do komórki zawierającej liczbę, co
pokazuje przykład z systemu pomocy Excela pokazany na rysunku 6.2.
Rysunek 6.2.
Działanie funkcji
BAHTTEXT
Ciekawe, że odpowiedniej funkcji nie ma dla żadnego innego języka, nawet dla angiel-
skiego. John Walkenbach, jeden z najlepszych znawców Excela, przypuszcza, że w gru-
pie programistów tworzących ten program jest wielu miłośników kuchni tajskiej, którzy
w ten sposób wyrazili swą wdzięczność.
Rozdział 6. f& Funkcje tekstowe 145
DA  LEN
Funkcja wbudowana, niedostępna w VBA.
Oblicza liczbę znaków ciągu tekstowego.
Składnia:
tekst  tekst lub odwołanie do komórki zawierającej tekst.
Przykład 6.1. Wyróżnianie zbędnych spacji
Plagą wielu list, zwłaszcza otrzymywanych ze zródeł zewnętrznych, są dodatkowe spa-
cje; utrudniają np. sortowanie i grupowanie wyników, tworzenie sum pośrednich itd.,
bowiem dla Excela Jan Kowalski z jedną spacją między imieniem i nazwiskiem to cał-
kiem inna osoba niż Jan Kowalski z dwiema spacjami. Najtrudniejsze do wyszukania są
komórki zawierające dodatkowe spacje na końcu tekstu, gdyż takich spacji nie widzimy
przy przeglądaniu arkusza (np. w komórce A5 na rysunku 6.3)1. Ale wyszukanie nawet
widocznych spacji nadmiarowych nie jest możliwe, jeżeli danych są tysiące.
Należy pamiętać, że programy baz danych nie tolerują takich niedokładności i przed
eksportem przygotowanej listy do pliku, który ma być czytany przez inne oprogramo-
wanie, należy dane bezwzględnie oczyścić ze wszystkich śmieci, w tym z dodatkowych
spacji. Aatwiej to zrobić, jeżeli komórki z dodatkowymi spacjami wyróżnimy za pomocą
formatowania warunkowego, tak jak na rysunku 6.3.
Rysunek 6.3.
Użycie formatowania
warunkowego pozwala
wyróżnić komórki,
w których tekst zawiera
dodatkowe spacje
1
Excel takie końcowe spacje traktuje dość tolerancyjnie i pomija np. przy automatycznym tworzeniu sum
pośrednich, ale dla spacji w środku tekstu nie jest wyrozumiały.
146 Część II f& Funkcje
Zauważ, że w formule warunku formatowania zostały użyte adresy względne. W komórce
A5 tekst Anna Giza został wyróżniony z powodu dodatkowej spacji na końcu, widocznej
po ustawieniu kursora po przejściu do edycji zawartości komórki.
Tekst jest wyróżniany, jeżeli jego długość po usunięciu zbędnych spacji (w wyniku dzia-
łania funkcji USUC.ZBDNE.ODSTPY) jest różna od pierwotnej.
FRAGMENT.TEKSTU  MID
Funkcja wbudowana, niedostępna w VBA.
Zwraca fragment ciągu tekstowego  określoną liczbę znaków, począwszy od poda-
nej pozycji.
Składnia:
tekst  tekst lub odwołanie do komórki z tekstem zawierającym znaki, które
należy wyodrębnić. Excel zezwala tu na użycie liczby jako pierwszego argumentu
funkcji, ale zawsze uwzględnia jedynie jej rzeczywistą wartość, a nie postać
wynikającą z formatowania (patrz rysunek 6.4).
Rysunek 6.4.
Funkcja FRAGMENT.TEKSTU
zawsze używa rzeczywistej wartości liczby,
nie uwzględniając formatowania
liczba_początkowa  określa pozycję pierwszego znaku, który należy wyodrębnić
(numeracja rozpoczyna się od 1).
liczba_znaków  liczba znaków, które należy wyodrębnić.
Jeżeli: funkcja zwraca
liczba_początkowa jest > od długości tekstu wartość "" (tekst pusty)
liczba_początkowa jest < od długości tekstu, ale liczba_początkowa znaki do końca tekstu
plus liczba_znaków jest e" od długości tekstu
liczba_początkowa jest < niż 1wartość błędu #ARG!
liczba_znaków jest < 0 wartość błędu #ARG!
Przykład 6.2. Wybieranie cyfr z liczby
Jako pierwszego argumentu funkcji FRAGMENT.TEKSTU można użyć liczby lub odwołania
do komórki zawierającej liczbę, jednakże otrzymany wówczas wynik może czasem zdzi-
wić niedoświadczonego użytkownika Excela. Przykład został pokazany na rysunku 6.4.
Rozdział 6. f& Funkcje tekstowe 147
W obu komórkach B1 i B2 jest zapisana ta sama liczba, którą w komórce B2 pozosta-
wiono w formacie ogólnym, zaś w komórce B1 nadano jej format daty. Widać, że funk-
cja FRAGMENT.TEKSTU tego nie uwzględnia, zwracając w obu przypadkach ciąg tekstowy
(zauważ wyrównanie do lewej) złożony z 4. i 5. cyfry pobranej z zapisu ogólnego.
Przykład 6.3. Konwersja nietypowego formatu daty
Często Excela używamy do obróbki danych otrzymywanych z zewnętrznych zródeł, np.
z systemów komputerowych typu mainframe. Daty w takich plikach mogą być zapisane
w różnych formatach niezrozumiałych dla Excela, co wymusza stosowanie konwersji.
Przykładem mogą być: data i czas zapisane w formacie rrrrdddggmm, gdzie rrrr ozna-
cza rok, ddd kolejny dzień roku od 001 do 366, a gg i mm odpowiednio godziny i minuty
w formacie 24-godzinnym.
Rysunek 6.5 pokazuje sposób poradzenia sobie z tym problemem.
Rysunek 6.5.
Użycie funkcji
FRAGMENT.TEKSTU
do konwersji daty
i czasu zapisanych
w niestandardowym
formacie
Jak widać na rysunku 6.5, całkowita formuła konwersji ma w komórce B2 postać:
=DATA(LEWY(A2;4);1;1)
+FRAGMENT.TEKSTU(A2;5;3)
+CZAS(FRAGMENT.TEKSTU(A2;8;2);PRAWY(A2;2);0)
gdzie:
LEWY(A2;4) pobiera cztery pierwsze cyfry (1999), co DATA(LEWY(A2;4);1;1)
zamienia na 36161, czyli numer kolejny daty 1 stycznia 1999 roku;
FRAGMENT.TEKSTU(A2;5;3) wycina z liczby zapisanej w A2 trzy kolejne cyfry,
począwszy od piątej, tworząc tekst "245";
dzięki  domyślności Excela dodanie liczby i tekstu 36161+"245" daje liczbę
36 406;
FRAGMENT.TEKSTU(A2;8;2) daje tekst "01" złożony z 8. i 9. cyfry, a PRAWY(A2;2)
tekst "12" złożony z cyfr 10. i 11., zaś CZAS("01";"12";0)=CZAS(1;12;0) daje
kolejną liczbę czasu 0,05;
36 406+0,05=36 406,05 to kolejna liczba daty i czasu, która przez nadanie formatu
dd-mm-rrrr gg:mm jest widoczna w postaci 03-09-1999 01:12, podając
w zrozumiały sposób datę i godzinę.
148 Część II f& Funkcje
KOD  CODE
Funkcja wbudowana, niedostępna w VBA.
Zwraca kod numeryczny pierwszego znaku ciągu tekstowego.
Składnia:
tekst  tekst lub odwołanie do komórki zawierającej tekst.
Przykład 6.4. Użycie funkcji KOD do sprawdzania poprawności
wpisywanych danych
Często dane wpisywane do tabeli muszą spełniać określone warunki, być liczbami z od-
powiedniego zakresu albo określonymi ciągami znaków. Załóżmy, że tworzymy tabelę:
w pierwszej kolumnie znajduje się nazwa towaru, a w drugiej jej trzyznakowy kod,
rozpoczynający się od cyfry 5, z wielką literą na drugim miejscu (bez liter polskich)
i dowolną cyfrą na trzecim (np. 5A3 jest kodem prawidłowym, zaś 5ac, 6A3 i 5A33 nie
spełniają założeń).
Należy zabezpieczyć się przed wpisywaniem błędnych kodów, co zrobimy za pomocą
wbudowanej w Excela procedury sprawdzania poprawności. Funkcji KOD użyjemy do
sprawdzenia, czy na drugim miejscu w ciągu znakowym znajduje się wielka litera. Do-
zwolone litery to A, B& Z. Ich kody to odpowiednio: 65, 66& 90  łatwo to sprawdzić,
wpisując np. do B1 formułę =KOD(A1), a następnie do A1 litery, których kod chcemy
odczytać. Polskie litery , Ć itd. mają kody spoza tego zakresu i ich uwzględnienie wyma-
gałoby rozbudowania, a więc wydłużenia formuły, a przy tym nie wniosłoby nic w istotę
rozumienia działania funkcji KOD.
1. Zaznacz zakres, który ma być objęty sprawdzaniem  na rysunku 6.6 został
on wyróżniony innym kolorem  i wydaj polecenie Dane/Sprawdzanie
poprawności.
Rysunek 6.6.
Wpisywanie formuły
sprawdzania
poprawności kodu
wpisywanego
do kolumny B
Rozdział 6. f& Funkcje tekstowe 149
2. Na karcie Ustawienia wybierz Dozwolone/Niestandardowe, a w polu Formuła
wpisz formułę:
=ORAZ(
DA(B2)=3;
LEWY(B2;1)="5";
KOD(FRAGMENT.TEKSTU(B2;2;1))>64;KOD(FRAGMENT.TEKSTU(B2;2;1))<91;
CZY.LICZBA(WARTOŚĆ(FRAGMENT.TEKSTU(B2;3;1)))
)
3. Na kartach Komunikat wejściowy i Alert o błędzie możesz dodatkowo wpisać
komunikaty objaśniające, np. takie jak na rysunku 6.7.
Rysunek 6.7.
Próba wpisania
błędnego kodu została
oprotestowana
Elementy formuły sprawdzające poszczególne znaki kodu zostały w punkcie 2. zapisane
w oddzielnych wierszach, aby ułatwić zrozumienie ich działania. Każdy pojedynczy ele-
ment formuły jest prosty, więc pomijam szczegółowe objaśnienia.
KWOTA  DOLLAR
Funkcja wbudowana, dostępna w VBA.
Zmienia liczbę na tekst i dodaje symbol waluty, przy czym następuje zaokrąglenie do
liczby miejsc dziesiętnych zgodnie z drugim argumentem funkcji. Stosowany format
to # ##0,00 zł.
Składnia:
liczba  liczba lub odwołanie do komórki zawierającej liczbę (ew. formułę
zwracającą liczbę),
miejsca_dziesiętne  liczba cyfr po przecinku dziesiętnym; pominięcie oznacza
wartość 2. Dopuszczalne jest podawanie wartości ujemnych, których znaczenie
pokazuje rysunek 6.8.
150 Część II f& Funkcje
Rysunek 6.8.
Zaokrąglenia
sterowane drugim
argumentem funkcji
KWOTA są
wykonywane zgodnie
z zasadami arytmetyki
Należy zwrócić uwagę na różnicę między działaniem funkcji KWOTA a nadawaniem
liczbie formatu walutowego. Liczba, której nadano format walutowy, pozostaje liczbą
(na rysunku 6.8 w komórce A7  wyrównanie do prawej), zaś funkcja KWOTA zamie-
nia liczbę na tekst (w komórkach A2:A6  wyrównanie do lewej).
Przykład 6.5. Aączenie kwot walutowych z tekstem
Często musimy drukować rożnego rodzaju zestawienia, w których tekst łączymy z su-
mami pieniężnymi. Nadanie liczbie formatu walutowego zmienia jedynie sposób jej
wyświetlania, pozostawiając samą liczbę bez zmiany. Dlatego po połączeniu z tekstem
znak waluty nie jest widoczny, jak w komórce C2 w górnej części rysunku 6.9. Potrzebne
jest dołączenie dodatkowego członu tekstowego " zł", jak w komórce C3 na tym samym
rysunku (formuły użyte w komórkach C2 i C3 są pokazane obok w kolumnie E).
Rysunek 6.9.
Porównanie rysunków
górnego i dolnego
pokazuje, że funkcja
KWOTA ułatwia
łączenie tekstu
z sumami pieniężnymi
Dołączania dodatkowego członu, złożonego ze spacji i symbolu waluty, można uniknąć,
jeżeli użyjemy funkcji KWOTA, jak w dolnej części rysunku 6.9 w komórkach C2 i C3 (użyta
formuła jest widoczna w komórce E2).
LEWY  LEFT
Funkcja wbudowana, niedostępna w VBA.
Zwraca pierwszy znak lub pierwsze znaki ciągu tekstowego.
Składnia:
tekst  tekst (ciąg tekstowy lub odwołanie do komórki zawierającej ciąg
tekstowy) zawierający znaki, które należy wyodrębnić.
Rozdział 6. f& Funkcje tekstowe 151
liczba_znaków  określa, ile znaków ma zwrócić funkcja LEWY. Liczba ta musi
być większa lub równa zeru. Jeśli liczba_znaków jest większa niż długość tekstu,
wynikiem funkcji LEWY jest cały tekst. Pominięcie argumentu liczba_znaków
jest równoznaczne z podaniem wartości 1.
Możliwości użycia funkcji LEWY zostały zaprezentowane w przykładach 6.3, 6.4, 6.6, 6.7
i 6.26. Jest często stosowana razem z funkcjami FRAGMENT.TEKSTU i ZNAJDy.
LITERY.MAAE  LOWER
Funkcja wbudowana, niedostępna w VBA.
Zmienia w tekście litery wielkie na małe. Innych znaków nie zmienia.
Składnia:
tekst  tekst (ciąg tekstowy lub odwołanie do komórki zawierającej ciąg
tekstowy).
Przykład 6.6. Tworzenie inicjałów pisanych małymi literami
Excel jest często używany jako narzędzie przygotowywania danych eksportowanych
pózniej do baz danych, systemów księgowych itd. Niektóre takie systemy odróżniają
litery wielkie i małe i dla nich Kowalski i kowalski to dwie różne osoby, a e1JK i e1jk to
różne symbole. Dlatego w danych eksportowanych używanie liter wielkich bądz małych
powinno być ściśle kontrolowane.
Na podstawie listy pracowników i działów, w których pracują, należy utworzyć kody
pracowników. Każdy kod ma być pisany małymi literami i składać się z dwuznakowego
oznaczenia działu, pierwszej litery imienia i trzech pierwszych liter nazwiska. Rozwią-
zanie zostało pokazane na rysunku 6.10.
Rysunek 6.10.
Tworzenie kodów
pracowniczych
pisanych małymi
literami
Działanie formuły pokazanej na pasku edycji na rysunku 6.10 jest tak proste, że nie będę
go objaśniał.
152 Część II f& Funkcje
W kodach użyto trzech liter nazwiska, aby uniknąć powtarzania się kodów. Używanie
jedynie pierwszych liter imienia i nazwiska zwykle prowadzi do konfliktów, gdyż czę-
sto w jednej firmie, a nawet w jednym dziale pracują osoby, mające te same inicjały,
np. Jan Kowalski i Joanna Kącka.
LITERY.WIELKIE  UPPER
Funkcja wbudowana, niedostępna w VBA.
Zmienia w tekście litery małe na wielkie. Innych znaków nie zmienia.
Składnia:
tekst  tekst (ciąg tekstowy lub odwołanie do komórki zawierającej ciąg
tekstowy).
Przykład 6.7. Sprawdzanie wprowadzonych danych. Modyfikacja
przykładu 6.4
W przykładzie 6.4 tworzyliśmy tabelę, której pierwsza kolumna zawierała nazwę towaru,
a drugiej  jej trzyznakowy kod, rozpoczynający się od cyfry 5, z wielką literą na dru-
gim miejscu (bez polskich liter) i dowolną cyfrą na trzecim (np. 5A3 jest kodem prawi-
dłowym, zaś 5ac, 6A3 i 5A33 nie spełniają założeń).
Teraz chcemy zezwolić, aby drugim znakiem kodu była po prostu litera, obojętnie, czy
wielka, czy mała. Wymaga to zmiany formuły sprawdzającej dane na następującą:
=ORAZ(
DA(B2)=3;LEWY(B2;1)="5";
KOD(LITERY.WIELKIE(FRAGMENT.TEKSTU(B2;2;1)))>64;KOD(LITERY.WIELKIE
(FRAGMENT.TEKSTU(B2;2;1)))<91;
CZY.LICZBA(WARTOŚĆ(FRAGMENT.TEKSTU(B2;3;1)))
)
Formuła FRAGMENT.TEKSTU(B2;2;1)  wykroi z komórki drugi wpisany znak. Może to
być litera mała lub jakiś inny znak (w tym litera wielka). W pierwszym przypadku funk-
cja LITERY.WIELKIE zamieni małą literę na wielką, w drugim nie nastąpi żadna zmiana.
Kody liter wielkich należą do przedziału od 65 (kod A) do 90 (kod Z), więc sprawdze-
nie, czy kod znaku zwróconego przez funkcję LITERY.WIELKIE jest > 64 oraz < 91, jest
równoznaczne ze sprawdzeniem, czy znakiem wpisanym na drugim miejscu jest litera
(niezależnie od tego, czy jest mała, czy wielka).
Oczywiście, jak zwykle w Excelu, ta formuła mogła być napisana w inny sposób, ale
to pozostawiam domyślności czytelników.
Rozdział 6. f& Funkcje tekstowe 153
OCZYŚĆ  CLEAN
Funkcja wbudowana, dostępna w VBA.
Usuwa z tekstu wszystkie znaki niedrukowane.
Składnia:
tekst  tekst (ciąg tekstowy lub odwołanie do komórki zawierającej ciąg
tekstowy).
Przykład 6.8. Oczyszczanie importowanych danych
W danych importowanych ze zródeł zewnętrznych, np. z systemów mainframe lub z In-
ternetu, trafiają się znaki niedrukowalne (nierozpoznawalne), np. znaki o kodach z zakresu
1  31 oraz 129, 141, 143, 144 i 157. Często kilka takich różnych znaków Excel wyświe-
tla w arkuszu tak samo  np. znaki o kodach 11 i 129 są pokazywane jako kwadraciki,
widoczne na rysunku 6.11.
Rysunek 6.11.
Funkcja OCZYŚĆ usuwa
znaki o  złych kodach,
tworząc zbitki, czasem
wymagające rozdzielenia,
jak na prawej części tego
rysunku
PODSTAW  SUBSTITUTE
Funkcja wbudowana, dostępna w VBA.
Zamienia w ciągu tekstowym stary_tekst na nowy_tekst.
Składnia:
tekst  tekst (ciąg tekstowy lub odwołanie do komórki zawierającej ciąg
tekstowy),
stary_tekst  to tekst lub odwołanie do komórki zawierającej tekst, którego
część znaków należy zastąpić,
nowy_tekst  to tekst, który ma zastąpić stary_tekst,
154 Część II f& Funkcje
wystapienie_liczba  jeżeli stary_tekst występuje w tekst kilkakrotnie,
wystapienie_liczba określa, przy którym wystąpieniu dojdzie do zamiany.
Jeżeli ten argument jest pominięty, każdy znaleziony stary_tekst zostanie
zamieniony na nowy_tekst.
Funkcji PODSTAW należy używać, gdy określony ciąg znaków ma być zamieniony na inny,
np. formuła =PODSTAW("mama";"m";"t") zamienia m na t i daje tekst tata, przy czym miej-
sce wystąpienia m nie ma znaczenia.
Funkcja ZASTP służy do zamiany na inny dowolnego tekstu występującego w określo-
nym miejscu ciągu tekstowego, np. formuła =ZASTP("mama";3;2;"terac") dwa znaki
tekstu, zaczynając od trzeciego, zamienia na nowy tekst terac, przy czym istotne jest
miejsce rozpoczęcia zmiany i liczba zmienianych znaków, a nie ma znaczenia to, jakie
to są znaki.
Przykład 6.9. Zliczanie wystąpień wybranego znaku
Czasami chcemy sprawdzić, ilokrotnie wybrany znak występuje w tekście zapisanym
w komórce. Rysunek 6.12 przedstawia rozwiązanie.
Rysunek 6.12.
Zliczanie wystąpień
liter w tekście
Funkcja PODSTAW zamienia wybrany znak na tekst pusty, czyli praktycznie go usuwa
i zwraca tekst skrócony o tyle, ile wystąpień danego znaku zostało znalezionych. Odję-
cie długości tekstu skróconego od długości tekstu pełnego informuje, ile razy dany znak
został w tekście znaleziony.
Ponieważ funkcja podstaw odróżnia litery wielkie i małe, formuła w komórce A2 zliczyła
jedynie wystąpienia wielkiej litery Z, a formuła w A3 jedynie wystąpienia małej litery z.
W zmienionej formule w komórce A4
=DA($A$1)-DA(PODSTAW(LITERY.WIELKIE($A$1);"Z";""))
najpierw funkcja LITERY.WIELKIE zamienia wszystkie litery na wielkie, po czym wyszu-
kuje w tekście wielką literę Z. W tak zmienionym tekście wielkie litery Z są zamieniane
na pusty tekst. Różnica długości tekstu pierwotnego i skróconego odpowiada liczbie
znalezionych liter z (razem wielkich i małych).
Formuła w A5 działa analogicznie; również zlicza wszystkie litery z (wielkie i małe),
dokonując przed podstawieniem tekstu pustego zamiany wszystkich liter na małe.
Rozdział 6. f& Funkcje tekstowe 155
PORÓWNAJ  EXACT
Funkcja wbudowana, niedostępna w VBA.
Porównuje dwa teksty i zwraca wartość PRAWDA, jeśli są takie same, lub FAASZ, gdy
są różne. Uwzględnia wielkość liter, ale ignoruje różnice w formatowaniu (patrz
rysunek 6.13).
Rysunek 6.13.
Porównanie
bezpośrednie komórek
a użycie funkcji
PORÓWNAJ
Składnia:
tekst1, tekst2  porównywane teksty lub odwołania do komórek
zawierających teksty (ciągi tekstowe).
Przykład 6.10. Zliczanie tekstów pisanych małymi (wielkimi literami)
W kolumnie A mamy zapisane kody jakichś operacji. Są to ciągi tekstowe złożone z liter
i cyfr. W kodach operacji przedpołudniowych użyto liter małych, a w kodach operacji
popołudniowych  liter wielkich. Naszym zadaniem jest policzenie operacji przedpo-
łudniowych i popołudniowych. Rozwiązanie zostało pokazane na rysunku 6.14.
Rysunek 6.14.
Użycie funkcji
PORÓWNAJ
do zliczania tekstów
pisanych małymi bądz
wielkimi literami
Formuła użyta w kolumnie B (pokazana na rysunku 6.14 na pasku edycji)
=JEŻELI(PORÓWNAJ(LITERY.MAAE(A2);A2);1;0)
daje 1, gdy wszystkie litery występujące w tekście są małe.
Jeżeli w tekście w komórce A2:
nie ma liter wielkich, oba teksty LITERY.MAAE(A2) i A2 będą identyczne, więc
formuła PORÓWNAJ(LITERY.MAAE(A2);A2) zwróci wartość PRAWDA  wówczas
funkcja JEŻELI zwróci wartość drugiego argumentu, czyli 1;
156 Część II f& Funkcje
są litery wielkie, to teksty LITERY.MAAE(A2) i A2 będą różne i formuła
PORÓWNAJ(LITERY.MAAE(A2);A2) zwróci wartość FAASZ, a funkcja JEŻELI
wartość trzeciego argumentu, czyli 0.
W analogiczny sposób można przeanalizować działanie formuły
=JEŻELI(PORÓWNAJ(LITERY.WIELKIE(A2);A2);1;0)
użytej w kolumnie C do zliczania tekstów zapisanych wielkimi literami.
POWT  REPT
Funkcja wbudowana, dostępna w VBA.
Tworzy ciąg tekstowy, powtarzając podany tekst określoną liczbę razy.
Składnia:
tekst  tekst, który ma być powtarzany,
ile_razy  liczba dodatnia określająca liczbę powtórzeń tekstu.
Jeśli argument ile_razy
ma wartość 0, funkcja POWT zwraca "" (pusty tekst),
nie jest liczbą całkowitą, jest do takiej liczby obcinany2.
Wynik funkcji POWT nie może być dłuższy niż 32 767 znaków. W przeciwnym wypadku
funkcja zwróci wartość błędu #ARG!.
Przykład 6.11. Tworzenie prostego histogramu
Funkcji POWT można użyć do prostej graficznej prezentacji danych, co zostało pokazane
na rysunku 6.15.
Rysunek 6.15.
Użycie funkcji POWT
do prostej graficznej
prezentacji danych
2
Obcinany, a nie zaokrąglany zgodnie z regułami arytmetyki, np. ile_razy = 3,7 spowoduje trzykrotne
powtórzenie tekstu (przy zaokrągleniu byłyby to 4 powtórzenia).
Rozdział 6. f& Funkcje tekstowe 157
PRAWY  RIGHT
Funkcja wbudowana, niedostępna w VBA.
Zwraca ostatni znak lub znaki wyodrębnione z ciągu tekstowego.
Składnia:
tekst  ciąg tekstowy lub odwołanie do komórki zawierającej ciąg tekstowy,
zawierający znaki, które mają być wyodrębnione.
liczba_znaków  liczba znaków, jakie ma zwrócić funkcja PRAWY. Argument
liczba_znaków musi być większy lub równy zeru. Argument opcjonalny
domyślnie równy 1.
Jeśli argument liczba_znaków jest większy od długości tekstu, to funkcja PRAWY zwraca
cały tekst.
O zastosowaniu funkcji PRAWY była już mowa w przykładzie 4.3.
SZUKAJ.TEKST  SEARCH
Funkcja wbudowana, dostępna w VBA.
Zwraca pozycję (numer znaku, licząc od lewej), na której po raz pierwszy szukany
znak lub ciąg znakowy (szukany_tekst) wystąpił w tekście przeszukiwanym (obej-
mujący_tekst).
Od funkcji ZNAJDy różni się nieodróżnianiem liczb wielkich i małych oraz dopuszczeniem
do stosowania znaków zastępczych.
Składnia:
szukany_tekst  tekst, którego szukamy, lub odwołanie do komórki zawierającej
tekst szukany,
obejmujący_tekst  tekst (odwołanie do komórki zawierającej tekst), w którym
szukany_tekst jest szukany,
liczba_początkowa  numer znaku w argumencie obejmujący_tekst, od którego
ma się zacząć przeszukiwanie. Pominiecie oznacza użycie domyślnej wartości 1.
158 Część II f& Funkcje
Należy pamiętać, że funkcja SZUKAJ.TEKST:
1. Przeszukuje tekst, nie odróżniając liter wielkich od małych.
2. Pozwala na stosowanie w argumencie szukany_tekst znaków zastępczych:
znaku zapytania (?) i gwiazdki (*). Znak zapytania zastępuje dowolny
pojedynczy znak, a gwiazdka dowolną sekwencję znaków. Aby znalezć
rzeczywisty znak zastępczy, należy przed nim wpisać znak tyldy (~).
3. Zwraca błąd #ARG!, jeżeli argument szukany_tekst nie zostanie znaleziony.
4. Zwraca błąd #ARG!, jeśli argument liczba_początkowa nie jest większy niż
0 lub jest większy niż długość argumentu obejmujący_tekst.
5. Przy szukaniu tekstu pustego ("") w:
dowolnym tekście niepustym zwraca wartość 1,
tekście pustym  zwraca błąd #ARG!.
Przykład 6.12. Wyróżnianie komórek zawierających szukany tekst
Mając długą listę nazw miejscowości lub towarów, tytułów filmów lub książek itp., często
chcemy szybko wyróżnić komórki zawierające jakiś fragment tekstu. Wystarczy użyć
odpowiedniego formatowania warunkowego, co zostało pokazane na rysunku 6.16.
Rysunek 6.16. Mechanizm wyróżniania komórek zawierających poszukiwany tekst  tekst  ar jest
zawarty w nazwach Warszawa i Karpacz. Komórki zawierające te nazwy zostały wyróżnione
Po zaznaczeniu formatowanego zakresu (przeciągając myszą od A1 w dół, aby A1 było
komórką bieżącą)3, czyli tego, w którym potem ma być wyszukiwany tekst, wydaj pole-
cenie Format/Formatowanie warunkowe i w polu Warunek 1 wybierz opcję Formuła
jest. W polu tego warunku wpisz formułę:
=ORAZ(NIE(CZY.BAD(SZUKAJ.TEKST($C$1;A1)));$C$1<>"")
Komórką, w której wpisujemy szukany tekst, jest C1.
Formuła włączająca formatowanie warunkowe musi spełniać dwa warunki:
3
Przy innym zaznaczeniu tego zakresu lub zaznaczeniu w ogóle innego zakresu musisz podany tu adres
A1 odpowiednio zmodyfikować.
Rozdział 6. f& Funkcje tekstowe 159
zwracać wartość PRAWDA, gdy tekst w komórce formatowanej warunkowo
zawiera tekst wpisany do C1  co jest sprawdzane przez pierwszy argument
funkcji ORAZ: NIE(CZY.BAD(SZUKAJ.TEKST($C$1;A1))),
zwracać wartość FAASZ (niezależnie od zawartości komórki formatowanej
warunkowo), jeżeli komórka C1 jest pusta, co jest sprawdzane przez drugi
argument funkcji ORAZ: $C$1<>"".
Jeżeli komórka C1:
jest pusta, warunek $C$1<>"" nie jest spełniony i zwraca wartość FAASZ
 wówczas niezależnie od wartości pierwszego argumentu funkcja ORAZ
zwraca wartość FAASZ i formatowanie warunkowe nie jest włączane,
nie jest pusta, warunek $C$1<>"" jest spełniony i zwraca wartość PRAWDA
 wówczas funkcja ORAZ zwraca wartość pierwszego argumentu, czyli
wyrażenia NIE(CZY.BAD(SZUKAJ.TEKST($C$1;A1))).
Przyjrzyjmy się teraz wyrażeniu NIE(CZY.BAD(SZUKAJ.TEKST($C$1;A1))). Gdy:
tekst w A1 zawiera tekst wpisany do C1, to SZUKAJ.TEKST($C$1;A1) zwraca
pozycję szukanego tekstu (nie zwraca błędu), wtedy funkcja CZY.BAD daje
wartość FAASZ, co zaprzeczenie NIE zamienia na PRAWDA  formatowanie
warunkowe zostaje włączone,
tekst w A1 nie zawiera teksu wpisanego do C1, to SZUKAJ.TEKST($C$1;A1)
zwraca błąd #ARG!, a funkcja CZY.BAD daje wartość PRAWDA, co zaprzeczenie
NIE zamienia na FAASZ  formatowanie warunkowe nie zostaje włączone,
komórka C1 jest pusta, SZUKAJ.TEKST($C$1;A1) zwraca wartość 1, czyli nie
zwraca błędu, a funkcja CZY.BAD daje wartość FAASZ, co zaprzeczenie NIE
zamienia na PRAWDA  formatowanie warunkowe zostałoby włączone,
gdybyśmy się przed tym nie zabezpieczyli za pomocą funkcji ORAZ i jej
drugiego argumentu.
T  T
Funkcja wbudowana, niedostępna w VBA.
Jeżeli:
argument jest tekstem, zwraca jego wartość,
tekstem nie jest, zwraca tekst pusty.
Składnia:
wartość  wartość testowana.
160 Część II f& Funkcje
Przykład 6.13. Wyróżnianie komórek nie zawierających liczb
Jeżeli otrzymujemy dane ze zródeł zewnętrznych, zwłaszcza gdy były wpisywane ręcz-
nie, zwykle pełno w nich błędów, tzw. literówek, wynikających z błędnego naciśnięcia
klawiszy. Jeżeli do kolumny wpisywano liczby, zwłaszcza z przecinkiem dziesiętnym,
zapewne część będzie błędna  zamiast przecinków zostaną wpisane kropki lub inne
znaki. Pół biedy, jeżeli kolumna (jak A na rysunku 6.17) jest szeroka i nie została wyrów-
nana, np. do prawej; wtedy teksty wyrównane do lewej wyraznie odróżniają się od liczb
wyrównanych do prawej4. Jeżeli kolumna została wyrównana do jednej strony, np. pra-
wej, jak B na rysunku 6.17, odróżnienie liczb od tekstów może sprawić niemałe kłopoty.
Sprawę ułatwia proste formatowanie warunkowe, w którym użyto funkcji T.
Rysunek 6.17. Zastosowanie funkcji T w formatowaniu warunkowym, wyróżniającym teksty
Sposób wprowadzenia formatowania warunkowego został opisany w poprzednim przy-
kładzie 6.12, więc pozostaje jedynie zrozumieć działanie formuły włączającej formato-
wanie warunkowe.
Gdy komórka B2:
zawiera tekst, T(B2) zwróci go, a zatem zwracana wartość będzie różna od
tekstu pustego; warunek =T(B2)<>  zwróci wartość FAASZ i formatowanie
warunkowe nie zostanie włączone;
nie zawiera tekstu, T(B2) zwróci tekst pusty; warunek =T(B2)<>"" zwróci
wartość PRAWDA i formatowanie warunkowe zostanie włączone.
TEKST  TEXT
Funkcja wbudowana, dostępna w VBA.
Przekształca wartość na tekst zgodnie z podanym formatem liczbowym.
4
Ważny argument za tym, aby bez rzeczywistej potrzeby nie zmieniać domyślnego wyrównywania
zawartości komórek, czemu w zapamiętaniu oddają się początkujący użytkownicy arkusza, lubiący
 ładne i porządne tabelki.
Rozdział 6. f& Funkcje tekstowe 161
Składnia:
wartość  liczba lub formuła, zwracająca liczbę, albo odwołanie do komórki
zawierającej liczbę,
format_tekst  format postaci tekstowej liczby.
Argument format_tekst nie powinien zawierać znaku gwiazdki (*).
Funkcja TEKST zamienia liczbę na sformatowany tekst, którego już nie będzie można
używać w obliczeniach.
Przykład 6.14. Aączenie tekstu z liczbami zamienionymi
na tekst sformatowany
Na rysunku 6.18 widać, w jaki sposób zadanie z przykładu 6.5 zostało rozwiązane za
pomocą funkcji TEKST (a nie jak poprzednio przez użycie funkcji KWOTA).
Rysunek 6.18. Przekształcanie liczb w tekst sformatowany za pomocą funkcji TEKST
Jak już wspominałem w ćwiczeniu 6.5, w komórce jest przechowywana wartość liczby,
nie zmieniana pomimo narzucenia formatu walutowego (bądz jakiegokolwiek innego).
Dlatego zwykłe połączenie tekstów wykonane w komórce C2 wyświetla liczbę bez for-
matu waluty.
Funkcja TEKST zamienia liczbę na tekst, formatując ją zgodnie z formatem podanym
jako drugi argument. Nie ma tu znaczenia sposób sformatowania liczby w komórce zró-
dłowej. W komórkach B3 i B4 mamy liczby w dwóch różnych formatach (odpowiednio
walutowym i ogólnym). Niezależnie od formatu zródłowego w komórkach C3 i C4 na
końcu tekstu zostały dołączone liczby w formacie walutowym, gdyż w obu przypadkach
został on użyty jako drugi argument funkcji TEKST (patrz postacie formuł pokazane
w kolumnie E).
W tym przypadku zamiast funkcji TEKST mogliśmy zastosować funkcję KWOTA (patrz
przykład 6.5), ale funkcja TEKST ma większe możliwości, gdyż pozwala na stosowanie
wszelkich dozwolonych w Excelu formatów liczbowych, co zostało pokazane na ry-
sunku 6.19.
Aby wpisać użyty w formacie znak stopnia (), należy włączyć klawiaturę numeryczną,
po czym, trzymając wciśnięty lewy klawisz Alt, wpisać kod 0176.
162 Część II f& Funkcje
Rysunek 6.19.
Użycie funkcji TEKST
z formatem
niestandardowym
Funkcja KWOTA to funkcja TEKST z wpisanym na stałe formatem walutowym. Dlatego
w tekstach finansowych używanie funkcji KWOTA jest prostsze i wygodniejsze, ale jeżeli
przy zamianie liczby na tekst chcemy użyć innego formatowania, musimy zastosować
funkcję TEKST.
USUC.ZBDNE.ODSTPY  TRIM
Funkcja wbudowana, dostępna w VBA.
Usuwa z tekstu wszystkie spacje poza pojedynczymi spacjami między wyrazami.
Składnia:
tekst  tekst lub odwołanie do komórki zawierającej tekst, z którego należy
usunąć zbędne spacje.
Przykład 6.15. Porównanie nie uwzględniające dodatkowych spacji
i nie odróżniające liter wielkich od małych
Mamy porównać teksty w kolumnach A i B, ale interesują nas jedynie zasadnicze różnice;
utożsamiamy litery wielkie i małe i nie interesują nas dodatkowe spacje przed lub za tek-
stem, albo między słowami. Rysunek 6.20 przedstawia rozwiązanie.
Rysunek 6.20. Trzy różne sposoby porównywania tekstów
Wpis do komórki B3 to "Anna " (dodatkowa spacja za imieniem).
Porównanie proste w kolumnie C nie odróżnia liter wielkich od małych (PRAWDA w ko-
mórce C4), ale odróżnia tekst z dodatkową spacją (FAASZ w komórce C3).
Funkcja PORÓWNAJ w kolumnie E odróżnia litery wielkie od małych, a także uwzględnia
dodatkową spację.
Rozdział 6. f& Funkcje tekstowe 163
Właściwym rozwiązaniem jest proste porównanie wyników funkcji USUC.ZBDNE.ODSTPY
wykonane w kolumnie G. W tym przypadku są porównywane teksty po usunięciu zbęd-
nych spacji, a porównanie bezpośrednie ze swej natury nie odróżnia liter wielkich od
małych. Dlatego w kolumnie G wynik FAASZ otrzymujemy tylko w komórce G5, gdzie
porównywane są teksty Anna i Anna M. różniące się od siebie w sposób istotny.
WARTOŚĆ  VALUE
Funkcja wbudowana, niedostępna w VBA.
Tekst reprezentujący liczbę zamienia na liczbę.
Składnia:
tekst  tekst zamknięty znakami cudzysłowu lub odwołanie do komórki
zawierającej tekst.
Przykład 6.16. Zamiana tekstu na liczby
Rysunek 6.21 pokazuje, jak funkcja wartość zamienia na liczby teksty odpowiadające
uznawanym przez Excela formatom liczbowym.
Rysunek 6.21.
Funkcja WARTOŚĆ
zamienia na liczby
teksty odpowiadające
akceptowanym przez
Excela formatom
liczbowym
W komórce B5 funkcja wartość zwraca błąd, gdyż zapisany w komórce A5 tekst
21 lipca 2006, choć zgodny z normą języka polskiego, nie odpowiada żadnemu uzna-
nemu formatowi Excela. Natomiast w komórce B2 jest zwracana kolejna liczba daty,
gdyż zapis 21 lipiec 2006 w komórce A2, choć niezgodny z normą językową, jest
uznawany przez Excela.
W komórce B9 mamy błąd, gdyż zapisany w komórce A9 tekst 13:21 am nie odpowiada
żadnej rzeczywistej godzinie (nie istnieje godzina 13:21 rano).
164 Część II f& Funkcje
Z.WIELKIEJ.LITERY  PROPER
Funkcja wbudowana, niedostępna w VBA.
Zamienia na wielką pierwszą literę tekstu i wszystkie inne litery tekstu występujące po
znaku innym niż litera.
Składnia:
tekst  tekst ujęty w znaki cudzysłowu, odwołanie do komórki zawierającej
tekst lub wynik formuły zwracającej tekst.
Funkcja ta stanowi komplet z funkcjami LITERY.WIELKIE i LITERY.MAAE. Wszystkie trzy
służą do zamiany liter wielkich na małe lub odwrotnie. Wybór zależy od potrzeby.
Przykład 6.17. Poprawianie imion i nazwisk pobieranych z bazy danych
W danych wpisywanych ręcznie, a także otrzymywanych z niepewnych zródeł zewnętrz-
nych, często roi się od literówek. Jednymi z nich są przekłamania polegające na wpisy-
waniu liter wielkich zamiast małych lub odwrotnie. Jeżeli są to imiona i nazwiska lub
nazwy (np. geograficzne), w których słowa powinny rozpoczynać się od wielkiej litery,
do ich uporządkowania możemy użyć funkcji Z.WIELKEJ.LITERY, np. w sposób pokazany
na rysunku 6.22.
Rysunek 6.22.
Porządkowanie zapisu
imion i nazwisk
za pomocą funkcji
Z.WIELKIEJ.LITERY
Wyrażenie A1&" "&B1 łączy w jeden tekst imię i nazwisko wraz z rozdzielającą spacją.
Funkcja Z.WIELKEJ.LITERY, działając na wynik tego połączenia, powoduje rozpoczęcie
imienia i nazwiska od wielkiej litery i zapisanie wszystkich pozostałych liter jako małych.
ZAOKR.DO.TEKST  FIXED
Funkcja wbudowana, dostępna w VBA.
Składnia:
Rozdział 6. f& Funkcje tekstowe 165
liczba  liczba, która ma zostać zaokrąglona i zamieniona na tekst;
miejsca_dziesiętne  liczba cyfr po prawej stronie przecinka dziesiętnego:
domyślną wartością jest 2,
wartość ujemna oznacza zaokrąglanie po lewej stronie przecinka dziesiętnego
(1  do dziesiątek, 2  do setek itd.);
bez_przecinka  opcjonalna wartość logiczna:
PRAWDA, zapobiega oddzielaniu tysięcy spacją,
FAASZ lub pominięta powoduje oddzielanie tysięcy spacją.
W standardzie anglosaskim tysiące są oddzielane przecinkiem, w standardzie pol-
skim  spacją. Przetłumaczono dosłownie angielską nazwę argumentu, nie dbając
o przystosowanie do polskich realiów.
Liczby w programie Microsoft Excel nie mogą nigdy mieć więcej niż 15 cyfr znaczą-
cych, ale cyfr dziesiętnych może być aż 127.
Główna różnica między standardowym formatowaniem komórki zawierającej liczbę za
pomocą polecenia Format/Komórki/Liczby a formatowaniem za pomocą funkcji ZAOKR.
DO.TEKST jest taka, że funkcja ZAOKR.DO.TEKST konwertuje liczbę na tekst nieprzydatny
do obliczeń, a po sformatowaniu standardowym liczba sformatowana pozostaje liczbą,
przydatną w obliczeniach.
Przykład 6.18. Wyświetlanie liczb ze stałą liczbą cyfr znaczących
Naszym celem jest wyświetlanie liczb ze stałą liczbą cyfr znaczących, niezależnie od
położenia przecinka dziesiętnego. W Excelu nie ma formatu liczbowego, pozwalającego
zrealizować to zadanie.
Powiedzmy, że mamy wyświetlać zawsze 7 cyfr znaczących. Rozwiązanie jest widoczne
na rysunku 6.23.
Rysunek 6.23.
Użycie funkcji
ZAOKR.DO.TEKST
do wyświetlania stałej
liczby cyfr znaczących
Wystarczy przeanalizować działanie formuły w komórce B2  ta sama formuła z adre-
sami względnymi została skopiowana w dół kolumny, więc działanie formuł w komór-
kach położonych poniżej jest analogiczne do działania formuły w B2.
Formuła wpisana do B2 ma postać:
=ZAOKR.DO.TEKST(A1;
JEŻELI(MODUA.LICZBY(A1)<1;
166 Część II f& Funkcje
6;
6-(ZAOKR.DO.CAAK(LOG(A1))));
PRAWDA)
Funkcja ZAOKR.DO.TEKST pobiera wartość z A1 i zamienia ją na tekst z liczbą przecinków
wyznaczoną przez drugi argument, czyli wyrażenie
JEŻELI(MODUA.LICZBY(A1)<1;6;6-(ZAOKR.DO.CAAK(LOG(A1))))
Ponieważ trzecim argumentem jest PRAWDA, tysiące w części całkowitej nie będą oddzie-
lane spacją.
Jak widać, jedyny kłopot sprawia zrozumienie działania wyrażenia, będącego drugim
argumentem funkcji ZAOKR.DO.TEKST. Gdy MODUA.LICZBY(A2)<1 (wartość jest ułamkiem),
funkcja JEŻELI zwraca drugi argument, czyli 6, i ułamek jest wyświetlany z zerem przed
przecinkiem dziesiętnym i sześcioma miejscami dziesiętnymi po przecinku, jak w komór-
kach B2 i B5 na rysunku 6.23.
Jeśli MODUA.LICZBY(A2) nie jest mniejszy od 1, funkcja JEŻELI zwraca wynik obliczony
przez wyrażenie 6-(ZAOKR.DO.CAAK(LOG(A1))). Kolejne etapy jego działania pokazuje
rysunek 6.24. Dla obeznanych z matematyką wyjaśnienie to jest zbędne, ale książka jest
również dla tych, którzy dawno zapomnieli, czym jest logarytm.
Rysunek 6.24.
Kolejne etapy
wyliczania liczby
miejsc po przecinku
dziesiętnym
Funkcje logarytm dziesiętny (LOG) i moduł liczby (MODUA.LICZBY) zostały opisane w dal-
szej części książki w rozdziale o funkcjach matematycznych. Logarytm dziesiętny to
wykładnik potęgi, do której należy podnieść podstawę, aby otrzymać liczbę logarytmo-
waną, co dla  niematematyków brzmi strasznie, ale jest w istocie proste, np. LOG(0,1)=
-1, gdyż 10-1 =100, LOG(10 000)=4, gdyż 104 =10 000 itd.
Należy pamiętać, że wyniki funkcji ZAOKR.DO.TEKST, pokazane na rys. 6.24 w kolum-
nie B i na rysunku 6.24 w kolumnie E, są tekstami, a nie liczbami nie przeznaczonymi
do obliczeń5.
ZASTP  REPLACE
Funkcja wbudowana, dostępna w VBA.
5
Czasami Excel traktuje w obliczeniach postać tekstową liczby jak liczbę, co niekiedy powoduje błędy.
Używanie tekstów w obliczeniach wymaga ostrożności i doświadczenia.
Rozdział 6. f& Funkcje tekstowe 167
Zastępuje część ciągu tekstowego innym ciągiem tekstowym, zaczynając od wyznaczo-
nego znaku zamienia określoną liczbę znaków.
Składnia:
stary_tekst  tekst, w którym należy zastąpić niektóre znaki,
liczba_początkowa  pozycja znaku w tekście stary_tekst, od której należy
rozpocząć wstawianie nowego tekstu,
liczba_znaków  liczba znaków w tekście stary_teks, które mają być zastąpione,
nowy_tekst  tekst, który zastąpi wyznaczoną część tekstu stary_tekst.
Przykład 6.19. Wpisywanie czasu bez dwukropka
oddzielającego minuty i sekundy
Osoby wpisujące wiele danych liczbowych, np. numerów kont bankowych, sum pienięż-
nych, czasu (godzin i minut) itp., używają zwykle klawiatury numerycznej. Wpisywanie
dwukropka oddzielającego godziny i minuty jest wtedy niewygodne z powodu pozycji
jego klawisza na klawiaturze i konieczności dodatkowego naciśnięcia klawisza Shift.
W znacznym stopniu spowalnia to pracę. Przy wpisywaniu czasu dwukropek można
pomijać, po czym jednym ruchem wstawić go w całym zakresie, np. w całej kolumnie.
Potrzebna procedura została opisana poniżej i pokazana na rysunku 6.25.
Rysunek 6.25.
Wstawianie dwukropka
oddzielającego
godziny i minuty
w celu otrzymania
standardowego czasu
1. Kolumnie A, do której będzie wpisywany tekst, nadaj format tekstowy, po czym
wpisz dane, nie pomijając zer wiodących6.
2. W kolumnie B wpisz formułę pokazaną na rysunku 6.25 na pasku edycji.
3. Ponieważ formuła w kolumnie B zwraca kolejną liczbę czasu (ułamek doby),
nadaj komórkom tej kolumny format czasu.
Formuła ZASTP(A1;3;0;":") do tekstu pobranego z A1 wstawia na trzecim miejscu znak
dwukropka ( : ). Właściwie nie jest to zastępowanie, lecz wstawienie, gdyż zgodnie
z argumentem trzecim liczba zastępowanych znaków wynosi 0.
6
Gdyby nie został użyty format tekstowy, zera wiodące byłyby pomijane i po wpisaniu do komórki
np. 0512 zobaczylibyśmy w niej liczbę 512.
168 Część II f& Funkcje
Wynikiem jest tekst ( B1 jest to  12:03 ), który funkcja CZAS.WARTOŚĆ zamienia na kolejną
liczbę czasu (ułamek doby). Po nadaniu kolumnie B formatu czasowego widzimy wynik
pokazany na rysunku 6.25.
ZACZ.TEKSTY  CONCATENATE
Funkcja wbudowana, niedostępna w VBA.
Ciągi tekstowe, podane jako argumenty, łączy w jeden ciąg tekstowy.
Składnia:
tekst1; tekst2;...tekst30  kolejne elementy tekstowe do połączenia w jeden
ciąg tekstowy. Wszystkie, poza pierwszym, są opcjonalne; maksymalnie może
ich być 30. Elementami tekstowymi mogą być ciągi tekstowe, liczby lub
odwołania do pojedynczych komórek.
Zamiast funkcji ZACZ.TEKSTY można stosować operator łączenia tekstów &, opisany
w rozdziale 1. w podrozdziale  Operator konkatenacji . Stosowanie operatora & jest
wygodniejsze  tworzone za jego pomocą formuły są krótsze od tworzonych z użyciem
funkcji ZACZ.TEKSTY.
Operatora łączenia tekstów używaliśmy już w przykładach 4.19 i 6.17. W obu przypad-
kach można go zastąpić funkcją ZACZ.TEKSTY.
ZNAJDy  FIND
Funkcja wbudowana, dostępna w VBA.
Zwraca pozycję (numer znaku, licząc od lewej), na której po raz pierwszy szukany
znak lub ciąg znakowy (szukany_tekst) wystąpił w tekście przeszukiwanym (obej-
mujący_tekst).
Od funkcji SZUKAJ TEKST różni się odróżnianiem liczb wielkich od małych oraz niedo-
puszczaniem do stosowania znaków zastępczych.
Składnia:
Rozdział 6. f& Funkcje tekstowe 169
szukany_tekst  tekst, którego szukamy, lub odwołanie do komórki
zawierającej tekst szukany,
w_tekście  tekst (odwołanie do komórki zawierającej tekst), w którym
szukany_tekst jest szukany,
liczba_początkowa  numer znaku w argumencie w_tekście, od którego ma
się zacząć przeszukiwanie. Pominięcie oznacza użycie domyślnej wartości 1.
Należy pamiętać, że funkcja ZNAJDy:
przeszukując tekst, odróżnia litery wielkie od małych,
gdy argument szukany_tekst ma wartość "" (pusty tekst), odszukuje
w przeszukiwanym tekście znak, którego pozycję określa liczba_początkowa
(lub domyślnie 1), czyli po prostu zwraca wartość argumentu liczba_początkowa
(podaną lub domyślną),
nie pozwala na stosowanie w argumencie szukany_tekst znaków zastępczych:
znaku zapytania (?) i gwiazdki (*),
zwraca błąd #ARG!, jeżeli argument szukany_tekst nie zostanie znaleziony,
zwraca błąd #ARG!, jeśli argument liczba_początkowa nie jest większy niż
0 lub jest większy niż długość argumentu w_tekście,
zwraca błąd #ARG! przy szukaniu w tekście pustym (gdy w_tekście jest pusty).
Przykład 6.20. Rozdzielanie imion i nazwisk na oddzielne kolumny
Otrzymaliśmy zapisaną w jednej kolumnie listę nazwisk i imion wielu osób. Naszym za-
daniem jest oddzielenie imion od nazwisk i zapisanie ich w oddzielnych kolumnach.
Rozwiązanie zostało pokazane na rysunku 6.26.
Rysunek 6.26.
Funkcja ZNAJDy
pozwala na ustalanie
liczby imienia
i nazwiska
Przyjrzyjmy się formule pobierającej imię, zapisanej w komórce B2:
=PRAWY(A2;DA(A2)-ZNAJDy(" ";A2))
ZNAJDy(" ";A2)=9 określa pozycję spacji oddzielającej w A2 nazwisko
od imienia (ponieważ trzeci argument jest pominięty, wyszukiwanie
rozpoczyna się domyślnie od pierwszego znaku),
DA(A2)-ZNAJDy(" ";A2)=12-9=3 decyduje, ile znaków z tekstu w A2 ma pobrać
funkcja PRAWY,
na końcu PRAWY(A2;DA(A2)-ZNAJDy(" ";A2))=PRAWY(A2;3)="Jan" pobiera imię
z komórki A2.
170 Część II f& Funkcje
W analogiczny sposób można zanalizować działanie, wpisanej do C2, formuły =LEWY(A2;
ZNAJDy(" ";A2)-1).
ZNAK  CHAR
Funkcja wbudowana, niedostępna w VBA.
Zwraca znak odpowiadający kodowi określonemu przez podaną liczbę.
Składnia:
liczba  liczba od 1 do 255 będąca kodem znaku w używanym na danym
komputerze zestawie znaków.
W przypadku podania liczby spoza dopuszczalnego zakresu funkcja ZNAK zwraca war-
tość błędu #ARG!.
Przykład 6.21. Każde słowo w nowej linii
W kolumnie A mamy teksty złożone z kilku słów. Chcemy tak zmienić tekst i (lub) for-
matowanie, aby każde słowo znalazło się w nowej linii.
Można to zrobić ręcznie, kasując spację znajdującą się po każdym słowie i używając
kombinacji klawiszy Alt+Enter. Nie stanowi to problemu, jeżeli takich tekstów mamy
pięć; gorzej, gdy jest ich 5 tysięcy.
Należy użyć formuły pokazanej na rysunku 6.27 na pasku edycji, która zamienia spacje
na znaki nowej linii.
Rysunek 6.27.
Zamiana spacji
na znaki nowej linii
Jak widać, znaki nowej linii są widoczne w postaci kwadracików, ale nie powodują zawi-
nięcia tekstu. Należy zaznaczyć komórki zawierające te znaki (kolumnę B na rysunkach
6.27 i 6.28) i włączyć zawijanie tekstu w komórkach przez uaktywnienie opcji For-
mat/Komórki/Wyrównanie/Sterowanie tekstem: Zawijaj tekst. Rysunek 6.28 przedstawia
wynik tych działań.
Rysunek 6.28.
Każde słowo w nowej
linii, czyli zadanie
zostało wykonane


Wyszukiwarka

Podobne podstrony:
hardware hacking (ebook promocyjny helion pl)
hack i t testy bezpieczenstwa danych (ebook promocyjny helion pl)
kaskadowe arkusze stylów na przykładzie ms frontpage 2002xp helion pl
Fundacje i Stowarzyszenia zasady funkcjonowania i opodatkowania ebook
Visual Basic w programie Excel funkcje definiowane, składnia języka
Ksiazki Helion Pl lista
Excel funkcje
flashmx w praktyce helion pl
informatyka excel 2007 pl leksykon kieszonkowy wydanie ii curt frye ebook
Excel 03 PL Funkcje Leksykon kieszonkowy exfulk
informatyka excel 2010 pl pierwsza pomoc bartosz gajda ebook

więcej podobnych podstron