Stránka 1 z 2
EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 27 úno 2014 11:03
od lucky.man
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...
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 27 úno 2014 11:09
od zeus
Export do cisteho textu, trocha magie na prikazove radce (napr. grep|sort|uniq), natazeni do Excelu a mas za ctvrt hodky hotovo.
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 27 úno 2014 11:59
od ITCrowd
Export do txt souboru a můžu ti napsat skript ve vbs, který proběhne celý ten textový soubor a vše co najde mez "<" a ">" uloží do dalšího textového souboru - vždy jeden e-mail na jeden řádek. Pak by načtení do excelu neměl být problém. Teoreticky můžu nechat rovnou vytvořit xls soubor.
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 27 úno 2014 15:51
od lucky.man
Pokud by šel napsat skript, bylo by to super. Posílám ukázku reálných dat (s pozměněnými jmény a maily) pro představu, jsou tam 4 druhy zápisu. U prvních tří by mělo fungovat "vyzobání" e-mailů mezi "<" a ">", u mailů oddělených čárkou asi jedině najít jiný postup. Když bude výstup jeden e-mail na řádce, tak už to do Excelu snad zvládnu. Díky.
jnibulka@econet.cz <jnibulka@econet.cz>;
obchodni@fridanair.cz <obchodni@fridanair.cz>;
hynek.dloser@cias.cz <hynek.dloser@cias.cz>;
omnibet@omnibet.cz <omnibet@omnibet.cz>;
norskalinie@seznam.cz <norskalinie@seznam.cz>;
imunotrop@imunotrop.cz <imunotrop@imunotrop.cz>;
dot@cle.cz <dot@cle.cz>;
j.palin@globus.cz <j.palin@globus.cz>;
svk@svk.cz <svk@svk.cz>;
Hýnová <vladislava.hynova@skoda-steel.cz>; Fišer - zahradnické centrum <fiserovi@fiserzahrada.cz>; Holding <holding@nordika.cz>;
info@fosterix.cz <info@fosterix.cz>; Ing Kamila Fénová <kfenova@wikov.com>;
inkastar@inkastar.cz <inkastar@inkastar.cz>; Jacqueline <jacqueline.radosova@moly-logistics.cz>; Janek Janák <jany@janakbros.cz>;
"SVAR TECHNIK" <adminovi@svartechnik.cz>, "Hotel Stekl" <manazer@hotelstekl.cz>, stransky luděk <ludek.stransky@atlas.cz>, "STING" <solista@stingcz.cz>, "Stepa Horova" <step@tsjekkisk.no>, <stepamama@seznam.cz>, "Stencova, Marcela" <Marcela.Stencova@kcc.com>,
obchod@uspornesvetlomet.cz,
zuzana.zmitkova@delame.cz,
info@eodo.cz,
info@decromaservice.cz,
wo@voodoo.cz,
daylymoon@daylymoon.cz,
obchod@velkoobchodzde.cz,
milota@covastrechy.cz,
info@a-topime.cz,
info@bo-zahrada.cz,
umelestromky@gmail.com,
info@kvetinace.info,
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 27 úno 2014 16:11
od ITCrowd
No, to "vyzobání" přes "<>" je reálné. Pustím se do toho. Co se týče těch čárek, tak tam záleží na tom texťáku. Ale pokud by to bylo v jednom odstavci, pak si můžeš vytáhnout jen ten odstavec a naimportovat ho do excelu s oddělovačem ","
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 28 úno 2014 00:39
od ITCrowd
Tak tady to máš. Skript řeší pouze e-maily uzavřené mezi <>.
Kód: Vybrat vše
'****************************************************
'* Skript projde textový soubor *
'* Vyhledá text uzavřený mezi znaky < > *
'* Prohledáváný soubor musí být ve stejném adresáři *
'* Výstup Export.txt *
'* *
'* Vytvořeno pro PC-HELP *
'* Etienn@Script v 1.0 *
'****************************************************
Option Explicit
Dim path, fso, src, cilFile, txtStream, txtStream2
Dim Text, poslpoz, i, pism
' zjisteni cesty ke skriptu
path = WScript.ScriptFullName
path = Left(path, InStrRev(path, "\"))
' vytvoreni objektu pro pristup k souborum
Set fso = CreateObject("Scripting.FileSystemObject")
src = path & "emaily.txt"
' Test seznamu, pokud neni, skonci
If Not fso.FileExists(src) Then
WScript.Echo "Soubor: " & src & " nenalezen."
Set fso = Nothing
WScript.Quit
End If
cilFile = path & "Export.txt"
Set txtStream = fso.OpenTextFile(src)
Set txtStream2 = fso.OpenTextFile(cilFile, 8, True)
Do While Not (txtStream.AtEndOfStream)
Text = txtStream.ReadLine
'WScript.Echo Text
poslpoz = Len (Text)
For i = 1 To poslpoz
pism = Mid (Text, i, 1)
If pism = "<" Then
i = Najdi (i, Text)
'WScript.Echo "i po navratu = " & i
End If
Next
Loop
Set fso = Nothing
WScript.Echo "Skript doběhl"
'________________________________________
'Funkce hledání adresy
'________________________________________
Function Najdi(n, txt)
Dim psm, adresa
n = n + 1
psm = Mid (txt, n, 1)
Do While Not psm = ">"
n = n + 1
adresa = adresa & psm
psm = Mid (txt, n, 1)
Loop
txtStream2.WriteLine adresa
Najdi = n
End Function
Text zkopíruj do notepadu (ne do wordu !!!) a ulož. Změň příponu na .vbs. Textový soubor z obsahem adres pojmenovaný emaily.txt ulož do stejného adresáře jako skript. Skript si po spuštění zjistí cestu, kde je uložen a ve stejném adresáři bude hledat soubor emaily.txt, pokud ho nenajde, ohlásí chybu a skončí. Ve stejném adresáři vytvoří soubor Export.txt, kde budou nalezené adresy, každá na jednom řádku.
Skript spustíš poklepáním. Konec práce skript oznámí hláškou "skript doběhl". Jak dlouho poběží záleží na velikosti zdrojového souboru.
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 28 úno 2014 09:33
od lucky.man
Jenom taková drobnost... jak se spouští skript?
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 28 úno 2014 10:28
od cmuch
ITCrowd píše:.....
Text zkopíruj do notepadu (ne do wordu !!!) a ulož. Změň příponu na .vbs. .....
Skript spustíš poklepáním.....
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 28 úno 2014 10:46
od lucky.man
Tak bude někde něco špatně, protože to jsem udělal. Poklepáním mi to otevře soubor "skript.vbs" v notepadu...
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 28 úno 2014 11:10
od zeus
Ano, pri ukladani jsi nedal moznost Vsechny soubory, ale ponechal jsi Textovy dokument.
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 28 úno 2014 11:58
od lucky.man
To máš sice pravdu, ale i když to uložím jako "all types" a potom přidám koncovku .vbs, otevře se mi to zase v notepadu. Co s tím?
Re: EXCEL - převedení dat (e-mailů) z Wordu
Napsal: 28 úno 2014 13:22
od ITCrowd
Použij total commander, nebo nějaký jiný správce souborů pro přejmenování (klávesa F6). Ikona souboru bude vypadat tak jak na obrázku.
- ikonaVBS.jpg (4.04 KiB) Zobrazeno 622 x
Taky je možné, že máš příponu .vbs chybně asociovánu s notepadem. Pak to musíš opravit a asociovat s wscript.exe.