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!

3

760

    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

    • Anonyymi

      Sana Marin sähköposti osoite

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

    Luetuimmat keskustelut

    1. Tiedätkö, että haluaisin panna

      Sinua. Onko sinulla samanlaiset ajatukset ja tunteet?
      Ikävä
      178
      3741
    2. Se oli siinä sitten

      Yhdysvaltain presidentti Donald Trump on määrännyt kaiken maan Ukrainalle toimittaman sotilaallisen tuen tauolle, kertoo
      NATO
      726
      2710
    3. Paljonko aikaa on kulunut siitä kun viimeksi tapasit hänet?

      Päiviä? Viikkoja? Kuukausia? Vuosia?
      Ikävä
      58
      2554
    4. Mikä sinua ja kaivattuasi

      Yhdistää?
      Ikävä
      146
      2361
    5. Ajelen varmaan siellä suunnalla

      taas yöllä, vahingossa käyn sun pihalla. 😏 m
      Ikävä
      67
      2046
    6. Trump tekee rauhan Amerikan ja Venäjän ehdoilla

      Ukraina luovuttaa Venäjän haluamat alueet Venäjälle. Ukraina luovuttaa Amerikan haluamat arvokkaat mineraalit Amerikall
      Maailman menoa
      315
      1944
    7. Hyväksytty kaivattusi

      Vartaloa vai et? Rehellinen vastaus
      Ikävä
      31
      1441
    8. Syvälliset keskustelut

      Olisivat tärkeintä ensisijaisesti hänen kanssaan Tulisi sellainen hetki, mutta kaikki meni pieleen
      Ikävä
      21
      1403
    9. Minulta loppuu aika

      Halusin olla täydellinen. Nyt näyttää siltä että viimeinen kiristys jää puolitiehen, sillä h-hetki on jo ihan kohta käsi
      Ikävä
      38
      1377
    10. Olisipa sitä henkisesti eheämpi ja rohkeampi

      mikään maallinen mammona ei itseäni kiinnosta, eikä sen menetys kiinnostus. Mutta kun kohtaa jonkun sykäyttävän ihmisen,
      Ikävä
      16
      1275
    Aihe