Kuinka saadaan laskettua yhden solun sanojen lukumäärä, jotka on erotettu pilkulla tai tietyllä muulla merkillä?
Solun sanojen lukumäärän laskeminen
10
251
Vastaukset
=LEN(TRIM(A1))-LEN(SUBSTITUTE(A1;" ";"")) 1
mutta tulos voi heittää, koska ylimääräiset/ puutuvat välilyönit vaikeuttaa tilannetta(mm. tupla välilyönti ennen pilkkua.)
Toki voishan sitä monsterikaavaa vääntää, mutta siististi ja varmasti VBA:lla
soluun kaava =sanojenlkm(A1;","), missä A1 solu ja "," erotin
moduuliin...
Function SanojenLkm(Solu As Range, Erotin As String) As Integer
SanojenLkm = UBound(Split(Solu, Erotin)) 1
End Function
Keep EXCELing
@Kunde- Petexcel
VBA toimii juuri kuten tarvitsin, kiitos!
- 35
er
- Petexcel
Juuri kun pääsin...
eli ongelma jatkuu. Excel -03 homma toimii, mutta kun yritin töissä Excel 2000:ssa, palautuu virhe #NIMI?
kaava taulukossa: =JOS(I6="ha";SUMMA(0,46 0,03*sanojenlkm(G6;",") );"")
sama virhe palautuu kokeiltaessa yksinkertaista : =sanojenlkm(G6;",")
Moduulissa on kunden koodi ja solussa G6 on nimiluettelo pilkuin erotettuna..
jos oikein muistelen, niin toi SPLIT funtio tuli vasta 2003 versioon...
eli ei toimi sitten 2000 versiossa ja vaatii toisenlaisen lähestymistavan- Petexcel
Ok, kiitos kunde ja jos keksit jipon 2k versioon niin tupla kiitos :)
kyllä se SPLIT sittenkin esiteltiin jo 2000 versiossa...
kokeilesvielä tällä toimiiko se. Eli pitäisi palauttaa sanojen lkm solusta G6
Sub koe1()
MsgBox UBound(Split(Range("G6"), ",")) 1
End Sub
en tiedä toimisko tämmönen sitten tämmönen "kikka kolmonen", että kopioit sen 2003 version EXCEL.EXE jonnekin kansioon siellä duunissa ja lisäät sitten VBA puolella referenssin siihen... ja sitten kokeilet uudelleen funktiota?kunde kirjoitti:
kyllä se SPLIT sittenkin esiteltiin jo 2000 versiossa...
kokeilesvielä tällä toimiiko se. Eli pitäisi palauttaa sanojen lkm solusta G6
Sub koe1()
MsgBox UBound(Split(Range("G6"), ",")) 1
End Sub
en tiedä toimisko tämmönen sitten tämmönen "kikka kolmonen", että kopioit sen 2003 version EXCEL.EXE jonnekin kansioon siellä duunissa ja lisäät sitten VBA puolella referenssin siihen... ja sitten kokeilet uudelleen funktiota?kokeile tätäkin...
Sub koe2()
MsgBox UBound(Split(Range("G6"), Chr(44))) 1
End Sub
jos ei näillä pelitä sitten toisella tapaa...
nyt täällä paikallinen uusivuosi joten menee sitten ensiviikkoon vastaukset...kunde kirjoitti:
kokeile tätäkin...
Sub koe2()
MsgBox UBound(Split(Range("G6"), Chr(44))) 1
End Sub
jos ei näillä pelitä sitten toisella tapaa...
nyt täällä paikallinen uusivuosi joten menee sitten ensiviikkoon vastaukset...vielä yksi tarkistuspaikka
Referenssit ja jos jossakin teksti Missing niin lisää se sitten
Eihän siellä ole enkkuversio? Joten kaavassa oleva erotin ; pitäisi olla , ???
no paikallista Hyvää Uutta Vuotta sitten ( 3. Uusi Vuosi jo tälle vuodelle...) olispas nää muutkit juhlat sitten aina kolmena kappaleena... ;-)
- Petexcel
Duuniversio on suomi. Koe1/2 palauttaa virheen #NIMI?. Varmuudeksi, riittääkö soluun aliohjelmakutsu: =koe1 tai =koe2?
Tsekkasin VB:n puolella Tools/References (onko oikea paikka?), ei näkynyt Missing. Siellä täpättynä VB for Applications, MS Excel 9.0 Object Library, OLE Automation, MS Office 9.0 Object Library. Nimim. pihalla :)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Useita puukotettu Tampereella
Mikäs homma tämä nyt taas on? "Useaa henkilöä on puukotettu Tampereen keskustassa kauppakeskus Ratinan lähistöllä." ht2324421Kuka rääkkää eläimiä Puolangalla?
Poliisi ampui toistakymmentä nälkiintynyttä eläintä Puolangalla Tilalta oli ollut karkuteillä lähes viisikymmentä nälkii742862- 472403
Meneeköhän sulla
oikeasti pinnan alla yhtä huonosti kuin mulla? Tai yhtä huonosti mutta jollain eri tyylillä? Ei olisi pitänyt jättää sua431687- 781379
Lähetä terveisesi kaipaamallesi henkilölle
Vauva-palstalta tuttua kaipaamista uudessa ympäristössä. Kaipuu jatkukoon 💘691080PS uusimman gallupin rakettimainen nousija
https://yle.fi/a/74-20170641 Aivan ylivoimaisesti suurin kannatuksen nousu PS:lle. Nousu on alkanut ja jatkuu 2 vuoden137919- 64860
Sellainen tunne sydämessä
Että nainen olet kaivannut minua. Tai sanonko että oikeastaan koet sitä samaa nostalgiaa, kaipuuta ja mukavia muistoja,86854Annan meille mahdollisuuden
Olen avoimin mielin ja katson miten asiat etenevät. Mutta tällä kertaa sun on tehtävä eka siirto.Sen jälkeen olen täysil53832