Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno EXCEL - převedení dat (e-mailů) z Wordu

Ahoj, převzal jsem po kolegovi klientskou databázi e-mailů v MS Wordu a potřeboval bych ji kompletně převést do Excelu. Zkoušel jsem si hrát s importem dat, ale nedaří se. Jde mi jenom o jednotlivé e-mailové adresy, které by v ideálním případě měly být jako buňky v jednom sloupci (výsledný stav). Ve Wordu jsou data zapsaná v několika formátech:

jmeno@domena.com <jmeno@domena.com>; jmeno2@domena.com <jmeno2@domena.com>; jmeno3@domena.com <jmeno3@domena.com>; ...

Jméno Příjmení <jmeno@domena.com>; Jméno Příjmení 2 <jmeno2@domena.com>; Jméno Příjmení 3 <jmeno3@domena.com>; ...

"Jméno Příjmení" <jmeno@domena.com>, "Jméno Příjmení 2" <jmeno2@domena.com>, "Jméno Příjmení 3" <jmeno3@domena.com>, ...

jmeno@domena.com, jmeno2@domena.com, jmeno3@domena.com, ...

Poradí někdo jak na to?

Je toho celkem dost, takže případná ruční úprava dat prosím až jako poslední možnost...

Předmět Autor Datum
Ahoj, 1) Zkopíruj data do excelu, 2) vše označ, vyber kartu data, nástroj "Text do sloupců", 3) vyb…
qdj 27.02.2014 11:29
qdj
Díky za rychlou reakci. K nějakému podobnému výsledku jsem se dostal po importu textu. Vypadá to teď…
lucky.man 27.02.2014 11:53
lucky.man
Tak to půjde buď ručně - přetahat sloupce, nebo makro, ale s tím ti neporadím.
qdj 27.02.2014 13:47
qdj
Nevím, s jakou verzí MSO pracujete, ale u starších verzí (97-2000) bylo potřeba najdříve ještě ve Wo…
jirka44 27.02.2014 11:44
jirka44
Mělo by na to stačit pár nahrazování - udělal jsem ti postup včetně postupných mezivýsledků - nezapo…
JoDiK 27.02.2014 15:43
JoDiK
Ahoj, moc díky za návod i za nakopnutí. Nefunguje mi třetí krok odstranění textů (^13?* \<→^p) a to…
lucky.man 27.02.2014 16:18
lucky.man
A zapnul jsi volbu "Použít zástupné znaky"??? [http://pc.poradna.net/file/view/17542-nnzz-gif]
JoDiK 27.02.2014 18:03
JoDiK
Samozřejmě nezapnul, až teď. Takže mohu potvrdit, že i tenhle postup vede k cíli. Ještě jednou díky! poslední
lucky.man 27.02.2014 18:37
lucky.man
Nie je mi jasné, či chceš získať len e-mail v základnom tvare (jmeno@domena.com) alebo celú e-mailov…
los 27.02.2014 16:38
los
Jenom čisté e-maily. Grep mi bohužel nic neříká (pohledám), úplně by vyhovoval postup s nahrazováním…
lucky.man 27.02.2014 17:05
lucky.man
Grep si stiahni napríklad odtiaľto a máš to za 5 sekúnd hotové: grep-2.10-w32-bin.zip Edit: Ešte na…
los 27.02.2014 17:09
los
Díky za popsaný postup. Vytvoří se mi ale prázdný soubor. Čím by to mohlo být?
lucky.man 27.02.2014 17:30
lucky.man
A v príkazovom riadku sa nevypísala žiadna chyba? Ak nie, tak to môže byť spôsobené len tým, že sa v…
los 27.02.2014 17:37
los
Bohužel, maily tam jsou, spustím příkaz, vytvoří se vystup.txt, ale prázdný. Žádná chyba vypsaná nen…
lucky.man 27.02.2014 17:44
lucky.man
Spusti toto, že či bude vystup.txt stále prázdny: grep -Eo "[[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:al…
los 27.02.2014 17:46
los
Není prázdný.
lucky.man 27.02.2014 17:48
lucky.man
Takže predpokladám, že vieš, aký je problém. Ak nie, tak sem napíš obsah a posunieme sa ďalej.
los 27.02.2014 17:51
los
Kde je problém, netuším. První tři řádky ve vstup.txt vypadají takhle: odstránené e-maily (los)
lucky.man 27.02.2014 17:57
lucky.man
Mňa nezaujíma vstup, ale výstup. Pri spustení toho príkazu nastala totižto nejaká chyba, ktorú by si…
los 27.02.2014 18:01
los
grep nenˇ n zvem vnitýnˇho ani vnŘjçˇho pýˇkazu, spustiteln‚ho programu nebo d vkov‚ho souboru.
lucky.man 27.02.2014 18:08
lucky.man
Ten grep, ktorý si stiahol a rozbalil, musí byť v rovnakom adresári ako vstup.txt. Príkaz musíš spúš…
los 27.02.2014 18:10
los
Bingo! Chyběla mi informace Edit2, teď už to proběhlo jak mělo a výsledek je přesně co jsem chtěl. S…
lucky.man 27.02.2014 18:36
lucky.man
P.S. Až teď vidím vstup2.txt. Ale stejně nevím, co s tím...
lucky.man 27.02.2014 17:59
lucky.man
Ten vstup2.txt má byť vstup.txt, to som sa preklepol.
los 27.02.2014 18:02
los
Ale když vidím ten texťák, tak by vážně stačilo odmazat (najít / nahradit) všechno na řádku před zna…
lucky.man 27.02.2014 17:47
lucky.man
viz nahoře...
JoDiK 27.02.2014 18:06
JoDiK

Ahoj,

1) Zkopíruj data do excelu,
2) vše označ, vyber kartu data, nástroj "Text do sloupců",
3) vyber oddělovač a dej další,
4) oddělovače budou mezery, čárky a středníky, dokončit
5) sloupce s duplicitními hodnotami odstraň.

Snad to pomůže.

Díky za rychlou reakci. K nějakému podobnému výsledku jsem se dostal po importu textu. Vypadá to teď asi tak, že mám data rozdělená (e-maily a texty zvlášť v buňkách), ale jsou řádově v desítkách sloupců. Možná je problém už u prvního kroku - jak správně zkopírovat data vložit do Excelu? Nebo kdyby šlo nějakou další úpravou dostat všechno pod sebe do jednoho sloupce?

Nevím, s jakou verzí MSO pracujete, ale u starších verzí (97-2000) bylo potřeba najdříve ještě ve Wordu převést tabulku na text a odstranit tvrdé konce řádků a teprve potom udělat import do Excelu. Možná je to u nových verzí nějak jednodušší.

Nie je mi jasné, či chceš získať len e-mail v základnom tvare (jmeno@domena.com) alebo celú e-mailovú adresu ("Jmeno Prijmeni" <jmeno@domena.com>). V každom prípade by som si to uložil do textového súboru a potom na to použil grep, ktorý si môžeš stiahnuť niekde z webu.

Ak chceš celú e-mailovú adresu, tak:

grep -Po "(?! )[^,;]+" <filename.txt>

Ak chceš e-mail v základnom tvare, tak napríklad takto:

grep -Eo "[[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6}" <filename.txt>

Grep si stiahni napríklad odtiaľto a máš to za 5 sekúnd hotové: grep-2.10-w32-bin.zip

Edit: Ešte napíšem pre istotu postup:
1. Stiahneš a rozbalíš grep do nejakého adresára, napr. C:\nejaky_adresar.
2. Tie e-maily uložíš ako textový súbor do rovnakého adresára, napr. vstup.txt.
2. Otvoríš príkazový riadok (Win+R, cmd).
3. Presunieš sa do toho adresára (cd C:\nejaky_adresar).
4. Spustíš príkaz s tým, že výstup presmeruješ do súboru, takže pre čisté e-maily takto:

grep -Eo "[[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6}" vstup.txt > vystup.txt

5. Zoznam e-mailov budeš mať v súbore vystup.txt.

Mňa nezaujíma vstup, ale výstup. Pri spustení toho príkazu nastala totižto nejaká chyba, ktorú by si v príkazovom riadku videl. Keďže neviem, ako to spúšťaš, tak som do výstupného súboru presmeroval aj chybové hlásenia. Teraz si už len stačí to chybové hlásenie prečítať a porozumieť mu.

Ten grep, ktorý si stiahol a rozbalil, musí byť v rovnakom adresári ako vstup.txt. Príkaz musíš spúšťať tiež z toho istého adresára.

2. Tie e-maily uložíš ako textový súbor do rovnakého adresára, napr. vstup.txt.

Edit: Ak to máš v rovnakom adresári, tak klikni na grep pravým tlačidlom myši a vo vlastnostiach stlač Odblokovať.
Edit2: Zo stiahnutého ZIPu je dôležitý len adresár bin, v ktorom je grep.exe (a nejaké dll). To je ten grep, ktorý chceme spustiť, takže v tomto adresári musí byť aj ten TXT súbor.

Zpět do poradny Odpovědět na původní otázku Nahoru