Tiedon tuominen tekstitiedostosta

Excel-aloittelija

Moi! Minulla on tekstitiedostossa 10 riviä asiakastietoja tyyliin:
Nimi: Matti Möttönen
Osoite: Pihatie 4
jne.

Miten saan tuotua esim. kahden ensimmäisen rivin tiedot exceliin siten, ettei muut tiedot tule mukana? Lisäksi olisi hyvä, jos rivin alussa oleva "Nimi:" jäisi pois (tulisi pelkkä Matti Möttönen). Olen kokeillut tekstitiedoston tuomista, mutta se tosiaan tuo kaikki tiedot. Kiitos!

2

336

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • juhakorkeapudas

      Onko rivien määrä sama kaikkien henkilöiden kohdalla? Jos on, niin voit käyttää siihen pelkkää kaavaa.
      Tuo tekstit ensin A-sarakkeeseen.
      Tee B-sarakkeen 1. soluun kaava (=POISTA.VÄLIT(POIMI.TEKSTI(A1;ETSI(":";A1;1) 1;25))) ja toiseen soluun kaava (=A2).
      Jätä kaikki muut solut tyhjäksi ennen seuraavaa nimeä.
      Valitse B-sarakkeen kaikki solut joissa ovat vain yhden henkilön tiedot ja vedä alue oikeasta alakulmasta alaspäin, niin kauan, että tulet A-sarakkeen tekstien viimeiselle riville.
      Valitse B-sarake -> Kopioi -> Liitä määräten -> Liitä: Arvot.

    • hakee nyt vain asiakkaan nimen ja osoitteen samalle riville ja allekkain aktiiviseen taulukkoon

      moduuliin...

      Sub HaeTiedosotosta()
      'hakee tiedostosta vain nimi ja osoitetiedot allekkain Excelin aktiiviseen taulukkoon
      'tiedostorakenne
      'Nimi: Matti Meikäläinen
      'Osoite: Koulukuja 1
      '...
      'Nimi: Liisa Teikäläinen
      'Osoite: Koulukuja 2
      '...

      Dim Tiedosto As String
      Dim Haku1 As String
      Dim Haku2 As String
      On Error Resume Next

      'muuta polku ja hakusanat oikeaksi
      Tiedosto = "C:\kunde\koe.txt"
      Haku1 = "Nimi"
      Haku2 = "Osoite"

      Range("A:B") = ""
      Range("A1").Select
      Open Tiedosto For Input As #1
      While Not EOF(1)
      Line Input #1, textline
      If InStr(1, textline, Haku1, 1) > 0 Then
      ' jos oli Nimi: alussa niin tuo 7 merkistä alkaen, korjaa oikeaksi
      ActiveCell = Mid(textline, 7)
      End If
      If InStr(1, textline, Haku2, 1) > 0 Then
      ' jos oli Osoite: alussa niin tuo 9 merkistä alkaen, korjaa oikeaksi
      ActiveCell.Offset(0, 1) = Mid(textline, 9)
      ActiveCell.Offset(1, 0).Select
      End If
      Wend
      Close #1
      End Sub

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Anna minulle anteeksi

      Anna minulle anteeksi. Minä pyydän.
      Ikävä
      153
      1884
    2. Kun viimeksi kohtasitte/näitte

      Mitä olitte tekemässä? Millainen ympäristö oli? Löydetään toisemme...
      Ikävä
      130
      1741
    3. Olet kyllä vaarallisen himokas

      Luova, kaunis, määrätietoinen, pervo, mielenkiintoinen, kovanaama, naisellinen ja erikoinen.
      Ikävä
      102
      1507
    4. Anna vielä vähän vihreää valoa

      Teen sitten siirtoni, nainen. Tiedän, että olet jo varovaisesti yrittänyt lähestyä, mutta siitä on jo aikaa. Jos tunnet
      Ikävä
      17
      1213
    5. Mikä on hän on ammatiltaan?

      Vai tiedätkö mitä kaivattusi tekee työkseen?
      Ikävä
      69
      1190
    6. Mitä ajattelit silloin kun

      Löysit hänet?
      Ikävä
      64
      1151
    7. Syksyinen aamuketju suden

      Hyvää huomenta ja kaunista syyspäivää. 🌞🍁🍂☕
      Ikävä
      219
      975
    8. Oletko tutustunut muihin

      Samalla tavalla kuin häneen?
      Ikävä
      68
      796
    9. Uskotko että kohdataan vielä?

      Kysymys otsikossa, aloitukseen ei muuta lisättävää.
      Ikävä
      45
      730
    10. Miksi homous puhuttaa konservatiiveja vuodesta toiseen?

      Kysymykseen on vastattukin Kansanlähetyksen osalta: "Miksi sukupuoleen ja seksuaalisuuteen liittyvät asiat ovat konserv
      Luterilaisuus
      191
      704
    Aihe