Miten saan poistettua yhdeltä riviltä ylimääräiset tekstit.
Tarkoituksena saada vain yhden kerran kukin teksti riville. Duplikaattien poistolla en ainakaan suoraan siinä onnistunut.
Eli jokaisella rivillä sama teksti 4-5 kertaa ja 4-5 eri tekstin pätkää. Näistä pitäisi saada poistettua ne ylimääräiset.
Duplikaattien poisto
8
725
Vastaukset
- rautalankaa vailla
kaipaa. Onko nuo poistettavat tekstit aina omassa sarakkeessaan (koko solu teksteineen voidaan tyhjentää/poistaa) vai voiko ne olla solussa tekstin keskelläkin?
Anna esimerkki.- apua vailla
Kaikki tekstit ovat omissa sarakkeissaan samalla rivillä esim. 1,2,4,3,2,3,1... jne. Eli ei missään järjestyksessä vaan täysin randomisti. Nyt sieltä välistä pitäisi vaan saada ne ylimääräiset tekstit pois ja myöskin niiden sarakkeet poistettua.
Esim.
Kyllä , Ei , Ehkä , Mahdollisesti , Kyllä , Mahdollisesti, Ehkä , Ei , Kyllä , Ei Mahdollisesti , Ehkä , Ehkä , Kyllä , Mahdollisesti, Ei
Muotoon
Kyllä , Ei , Ehkä , Mahdollisesti
Kiitoksia vaan avusta jo etukäteen apua vailla kirjoitti:
Kaikki tekstit ovat omissa sarakkeissaan samalla rivillä esim. 1,2,4,3,2,3,1... jne. Eli ei missään järjestyksessä vaan täysin randomisti. Nyt sieltä välistä pitäisi vaan saada ne ylimääräiset tekstit pois ja myöskin niiden sarakkeet poistettua.
Esim.
Kyllä , Ei , Ehkä , Mahdollisesti , Kyllä , Mahdollisesti, Ehkä , Ei , Kyllä , Ei Mahdollisesti , Ehkä , Ehkä , Kyllä , Mahdollisesti, Ei
Muotoon
Kyllä , Ei , Ehkä , Mahdollisesti
Kiitoksia vaan avusta jo etukäteenoletuksena, että sarakkeessa A on tietoa...
moduuliin ...
Sub PoistaTuplatRiviltä()
Dim Solu As Range
Dim Alue As Range
On Error Resume Next
Range("A1").Select
Do Until ActiveCell = ""
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 255).End(xlToLeft))
For Each Solu In Alue
If WorksheetFunction.CountIf(Alue, Solu) > 1 Then
Solu.Clear
End If
Next Solu
Alue.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft
ActiveCell.Offset(1, 0).Select
Loop
End Sub- Avun tarpeessa
kunde kirjoitti:
oletuksena, että sarakkeessa A on tietoa...
moduuliin ...
Sub PoistaTuplatRiviltä()
Dim Solu As Range
Dim Alue As Range
On Error Resume Next
Range("A1").Select
Do Until ActiveCell = ""
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 255).End(xlToLeft))
For Each Solu In Alue
If WorksheetFunction.CountIf(Alue, Solu) > 1 Then
Solu.Clear
End If
Next Solu
Alue.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft
ActiveCell.Offset(1, 0).Select
Loop
End SubKiitoksia avusta.
Ei kyllä vielä toimi ihan täysin. Olen amatööri näitten VBA koodien kanssa, sain kyllä ajettua sen moduuliin ja makron ajettua mutta, se toimii nyt vain yhden sarakkeen osalla. Sen pitäisi ajaa rivi kerrallaan 12 tekstin osalta noin 250 riviä.
Koitan vielä itse tutkia asiaa mutta kun ei ole mitään kokemusta näistä niin mielellään otan neuvoja vastaan vielä.
Eli tiedot L3-W3 pitäisi käsitellä L246-W246 asti. Näistä kun saisi kerättyä ne tiedot...
kiitoksia vastauksista Avun tarpeessa kirjoitti:
Kiitoksia avusta.
Ei kyllä vielä toimi ihan täysin. Olen amatööri näitten VBA koodien kanssa, sain kyllä ajettua sen moduuliin ja makron ajettua mutta, se toimii nyt vain yhden sarakkeen osalla. Sen pitäisi ajaa rivi kerrallaan 12 tekstin osalta noin 250 riviä.
Koitan vielä itse tutkia asiaa mutta kun ei ole mitään kokemusta näistä niin mielellään otan neuvoja vastaan vielä.
Eli tiedot L3-W3 pitäisi käsitellä L246-W246 asti. Näistä kun saisi kerättyä ne tiedot...
kiitoksia vastauksistaohjeissa mainitsin
oletuksena, että sarakkeessa A on tietoa...
no fiksasin sen sarakkeelle L
Sub PoistaTuplatRiviltä()
Dim Solu As Range
Dim Alue As Range
On Error Resume Next
Range("L3").Select
Do Until ActiveCell = ""
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 244).End(xlToLeft))
For Each Solu In Alue
If WorksheetFunction.CountIf(Alue, Solu) > 1 Then
Solu.Clear
End If
Next Solu
Alue.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft
ActiveCell.Offset(1, 0).Select
Loop
End Sub- Apua jo saanut
kunde kirjoitti:
ohjeissa mainitsin
oletuksena, että sarakkeessa A on tietoa...
no fiksasin sen sarakkeelle L
Sub PoistaTuplatRiviltä()
Dim Solu As Range
Dim Alue As Range
On Error Resume Next
Range("L3").Select
Do Until ActiveCell = ""
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 244).End(xlToLeft))
For Each Solu In Alue
If WorksheetFunction.CountIf(Alue, Solu) > 1 Then
Solu.Clear
End If
Next Solu
Alue.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft
ActiveCell.Offset(1, 0).Select
Loop
End SubLoistavaa!
Ehdin kyllä vaihtamaan sen jo L3:seen mutta ei vaan lähtenyt jostain syystä toimimaan.
Nyt toimii ja hienosti.
Kiitoksia säästit multa kyllä vähintään tuhannen ärräpäätä.
Hienoa kun jaksoit auttaa ja vastailla!!! Apua jo saanut kirjoitti:
Loistavaa!
Ehdin kyllä vaihtamaan sen jo L3:seen mutta ei vaan lähtenyt jostain syystä toimimaan.
Nyt toimii ja hienosti.
Kiitoksia säästit multa kyllä vähintään tuhannen ärräpäätä.
Hienoa kun jaksoit auttaa ja vastailla!!!piti siinä fiksata toinenkin rivi...
sarake A
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 255).End(xlToLeft))
sarake L
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 244).End(xlToLeft))- Kiitoksia
kunde kirjoitti:
piti siinä fiksata toinenkin rivi...
sarake A
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 255).End(xlToLeft))
sarake L
Set Alue = Range(ActiveCell, ActiveCell.Offset(0, 244).End(xlToLeft))Kiitos vaan vielä kerran.
Käsipelin tossa on menny ennen muutama päivä, nyt kun saatiin tiedot exceliin ja vielä tollanen makro niin johan nopeutus hommat.
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ä." ht2284407Kuka rääkkää eläimiä Puolangalla?
Poliisi ampui toistakymmentä nälkiintynyttä eläintä Puolangalla Tilalta oli ollut karkuteillä lähes viisikymmentä nälkii732856- 472393
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- 781369
Lähetä terveisesi kaipaamallesi henkilölle
Vauva-palstalta tuttua kaipaamista uudessa ympäristössä. Kaipuu jatkukoon 💘651043PS uusimman gallupin rakettimainen nousija
https://yle.fi/a/74-20170641 Aivan ylivoimaisesti suurin kannatuksen nousu PS:lle. Nousu on alkanut ja jatkuu 2 vuoden137919- 64850
Sellainen tunne sydämessä
Että nainen olet kaivannut minua. Tai sanonko että oikeastaan koet sitä samaa nostalgiaa, kaipuuta ja mukavia muistoja,86844Annan 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