Tag Archives: ketjuta

Kahden solun yhdistäminen

Yhdistetään A ja B sarakkeen solut ja laitetaan välilyönti väliin
Esim.:
Solussa A1 = Aku ja B1 = Ankka -> C1 = Aku Ankka
Funktioilla:
KETJUTA (CONCATENATE)
=KETJUTA(A1;” “;B1)
tai
=A1&” “&B1
(Välilyönti laitetaan kahden lainausmerkin väliin koska se on tekstiä kaavassa)

Makrolla voit tehdä sen esim. seuraavalla tavalla:

Sub Yhdista()
'ohjelma yhdistää A ja B sarakkeen solut C sarakkeeseen
 'lähdetään liikkeelle A1:stä (cells(1,1))
 'Cells parametreja muuttaen voidaan valita toinen lähtösolu ja
 'myös sarake jonne yhdistetty tulos laitetaan

Dim rwIndex As Long
Dim i As Long
'lasketaan täytettyjen solujen määrä A1:stä alaspäin
rwIndex = Sheets(1).Cells(1, 1).End(xlDown).Row
For i = 1 To rwIndex
     Cells(i, 3).Value = Cells(i, 1) & " " & Cells(i, 2)
Next
End Sub

 

 

Muutama käyttökelpoinen tekstifunktio

Alla esimerkki muutamasta yleisesti ja usein käytetystä tekstifunktioista, joista on paljon apua.

VASEN (merkkijono, merkkien lukumäärä) (LEFT)
Poimii vasemmalta lukien annetun merkkimäärän merkkijonosta.

OIKEA (RIGHT)
Poimii oikealta laskettuna.

POIMI.TEKSTI(teksti; aloitusnro; merkkien lukumäärä) (MID)
Poimii merkkijonosta antamasi määrän merkkejä alkaen määrittämästäsi paikasta.

ISOT(teksti) (UPPER)
Muuntaa tekstin versaaleiksi.

PIENET(teksti) (LOWER)
Muuntaa versaalit gemenoiksi.

ERISNIMI(teksti) (PROPER)
Muuntaa versaaliksi tekstin ensimmäisen merkin ja kirjaimet, jotka ovat jonkin muun merkin kun kirjaimen jäljessä. Funktio muuttaa kaikki muut kirjaimet gemenoiksi.

POISTA.VÄLIT(teksti) (TRIM)
Poistaa kaikki välilyönnit paitsi yhden sanojen välistä.

KETJUTA (teksti1; teksti2…) (CONCATENATE)
Yhdistää merkkijonoja toisiinsa. Lyhempi tapa on käyttää merkkiä &.

PITUUS (teksti) (LEN)
Merkkijonon pituus.

Esimerkki yllä olevista funktioista

Tekstifunktioesimerkkejä

Tekstifunktioesimerkkejä

Puuttuvat etunollat

Jäivätkö etunollat pois kun toit tiedot Exceliin?
Ne saadaan takaisin erittäin kätevästi parilla funktiolla, jos tieto on määrämittaista.

Otetaan esimerkiksi postinumerot.
Excelissä on A-sarakkeessa seuraavanlaiset tiedot (etunollat puuttuvat) ja tiedon pituus pitää olla 5-merkkiä:
100
2200
16100

Rivillä 1 puuttuu 2 nollaa, rivillä 2 puuttuu 1 nolla ja rivi 3 on oikeanpituinen.

Monet ratkaisevat tämän sisäkkäisillä JOF (IF) lausekkeilla. Se voidaan tehdä yksinkertaisemmin TOISTA (REPT) ja PITUUS (LEN) funktioilla.

Kaava, jonka rakennan B-sarakkeeseen, on seuraavanlainen:

=TOISTA(“0”;5-PITUUS(A1))&A1
=REPT(“0”;5-LEN(A1))&A1

Eli: TOISTA-funktio toistaa tekstin “0” niin monta kertaa kuin se puuttuu merkkijonosta A1:ssä.
Tämä toistojen määrä lasketaan kaavalla 5-PITUUS(A1).
5 on merkkijonon maksimipituus. A1:n merkkimäärä saadaan funktiolla PITUUS(A1).
Näiden erotus kertoo, kuinka monta nollaa laitetaan lisää.
Kaikki tämä yhdistetään olemassa olevaan arvoon solussa A1 funktiolla &. Tämä “et” merkki on toiminnoltaan sama kun funktio KETJUTA (CONCATENATE), mutta helpompi ja nopeampi kirjoittaa kuin varsinainen funktio.

Lopputulos on B-sarakkeessa:
00100
02200
16100