Haluan vaihtaa solujen tietyt merkit toisiin. Esim, jos solussa on abc, niin haluan vaihtaa a-kirjaimet kirjaimeen z, b-kirjaimet kirjaimeen x ja c-kirjaimet kirjaimeen y.
Eli abc näkyisi uudessa solussa muodossa xyz. Löysin KORVAA toiminnon, mutta sillä saa vaihdettua vain yhden merkin kerrallaan.
Merkkien vaihtaminen solussa?
4
95
Vastaukset
- Anonyymi
Melkein tuohon kannattaa oma funktio kirjoittaa.
- Anonyymi
Sub vaihda()
' Vaihtaa valitulla alueella vanhat merkit vastaaviin uusiin.
vanha = Split("a b c", " ")
uusi = Split("x y z", " ")
Dim solu As Range
For Each solu In Selection
For i = 0 To UBound(vanha)
Debug.Print vanha(i) & " " & uusi(i)
solu.Value = WorksheetFunction.Substitute(solu, vanha(i), uusi(i))
Next i
Next
End Sub
- Anonyymi
Jos ei tiedä etukäteen kuinka monta eri korvattavaa merkkiä tarvitaan, niin voidaan käyttää VBA:n ParamArrayta parametrinä. Sitten vaan loopissa käy ne läpi jo vaihtaa alkuperäiseen.
http://www.tushar-mehta.com/publish_train/xl_vba_cases/1005 ParamArray.shtml ilman turhia luuppauksia
Sub Korvaa()
Dim originaalit As Variant
Dim korvaavat As Variant
Dim x As Long
originaalit = Array("A", "B", "C", "a", "b", "c")
korvaavat = Array("X", "Y", "Z", "x", "y", "z")
For x = LBound(originaalit) To UBound(originaalit)
Selection.Replace What:=originaalit(x), Replacement:=korvaavat(x), _
LookAt:=xlPart, MatchCase:=True
Next
End Sub
Keep EXCELing
@Kunde
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Zelenskyi ei suostunut nöyrtymään Trumpin ja Vancen edessä, siksi meni pieleen
Trumppia täytyy imarrella, silloin homma toimii aina. Tähän Zelenskyi ei suostunut.6564790Harmi että
Pidät niin vastenmielisenä. Olen minäkin välissä ollut ihan kamala sinulle ja ihmetellyt miten voit minusta tykätä. Se o202255- 1031424
En rehellisesti usko et oisit
Sekuntiakaan oikeasti mua kaivannut. Tai edes miettinyt miten mulla menee. Jotenkin todennäköisesti hyödyt tästäkin jos231336- 881332
Trump näytti slipoveri-ukolle kaapin paikan!
Slipoveri-ukko Ukrainan presidentti Volodimir Selenskyi meni tapaamaan valkoiseen taloon Trumppia ilman kunnon tuliaisia1271111Nainen, olet jotenkin lumoava
Katselen kauneuttasi kuin kuuta, sen loistoa pimeässä. Sen kaunis valo on kaunista sekä herkkää ja lumoavaa. Olet naisel681055Jos saan sinut elämääni
niin minun täytyy nukkua ihan ensimmäiseksi 2vk putkeen. Sopiiko se sinulle? Väsynyt olen ollut ja niin levollinen olo75955Kun Zele jenkeissä kävi
Enää ei Zele saanutkaan miljardeja ilmaista rahaa niin helposti. Läksyttivät oikein kunnolla pientä miestä ja joutui poi253950- 71942