Kezdőoldal » Számítástechnika » Programozás » Microsoft Excel egy adott...

Kálmán Csaba kérdése:

Microsoft Excel egy adott cellájából adatokat szeretnék kinyerni, s ehhez szeretnék segítséget kérni. S a kérdés: hogyan lehet adatokat kinyerni egy-egy cellából, ha annak tartalma mindig más, különböző hosszúságú, karakterszámú?

Figyelt kérdés

Adottak cellák, melyek egymás alatt vannak, itt a példa:


1076 Budapest, Thököly út 17.

3579 Kesznyéten, Petőfi Sándor utca 40.

2884 Bakonyszombathely, Dózsa utca 42.

6120 Kiskunmajsa, Marispuszta tanya 19/A (zártkert 6536/2 hrsz.).

2660 Balassagyarmat, Vak Bottyán utca 8.

6235 Bócsa, külterület hrsz 03/203.

6230 Soltvadkert, Szentháromság utca 5.


A fenti adatok egy-egy cellában vannak benne egymás alatt. S a cellákból a következő adatokat kellene kinyerni egymás mellet lévő cellákba: irányítószám, helységnév, közelebbi cím (utca-házszám). Ez összesen három cella. A fent látható minták mindig ilyen szintaxisúak tehát fix a 4 karakteres irányítószám az elején, s mindig vessző van a településnév után. A vessző karaktert nem kell kinyerni, s a szóközöket sem.


Gondolom ehhez három különböző függvény szükséges. S abban szeretném a segítségeteket kérni, hogy hogyan kell ezt a problémát megoldani, hogy hogyan nézzenek meg a függvények. Ebben sajnos nem vagyok nagyon otthon...


Előre is köszönöm a válaszotokat,


üdvözlettel, Azione.



2013. júl. 17. 21:29
1 2
 1/12 A kérdező kommentje:
U.i.: a fenti példa minden egyes sora egy-egy cella. Így jelen példában 7 cella van egymás alatt. Egyébként az adatok XML fájlban vannak benne, ha esetleg abból könnyebb lenne a kinyerés. Előre is köszönöm. Azione.
2013. júl. 17. 21:38
 2/12 anonim ***** válasza:

A szövegkezelő függvényeket kellene megnézned. Ha jól emlékszem van olyan függvény, ami egy karakter pozícióját adja meg, illetve van olyan, ami egy szöveg bizonyos részét adja vissza X. karaktertől Y. karakterig. Ezeket kellene kombinálni.


Pl. a település a 6. karaktertől a (vessző pozíciója-1)-ig tart.


Az irányítószám persze a legegyszerűbb, erre van olyan függvény, ami a szöveg elejéről X db karaktert ad vissza.


Az utca már bonyolultabb... a vessző pozíciója +2-től kell indulni, de a végét nem tudom hogy lehetne. Utolsó szóközig ugye nem jó a zárójeles cucc miatt.


Hát esetleg HA függvénnyel lehetne elágazás, hogy ha van zárójeles rész a végén, akkor levágja először, aztán az utolsó szóközig vágja ki az utcát. Ha nincs zárójeles, akkor csak simán megcsinálja az utolsó szóközig kivágást.


Mindezeket persze annak reményében írtam, hogy van olyan függvény, ami egy X karakter utolsó előfordulását is vissza tudja adni... ha nincs ilyen, akkor nem tudom hogyan lehetne.

2013. júl. 17. 21:46
Hasznos számodra ez a válasz?
 3/12 anonim ***** válasza:
100%

úgy vettem, hogy A1-ben van az első cím:


irszám:


=BAL(A1;4)


város:


=BAL(JOBB(A1; HOSSZ(A1)-5); SZÖVEG.KERES(",";JOBB(A1; HOSSZ(A1)-5))-1)


cím:


=JOBB(A1;HOSSZ(A1)-SZÖVEG.KERES(",";A1))

2013. júl. 17. 23:02
Hasznos számodra ez a válasz?
 4/12 A kérdező kommentje:
A 21:46-os válaszolónak nagyon köszönöm az agyalást. Szuper volt, s sokat segített. Neki is láttam, s az irányítószámot sikerült is kiszednem, a többin pedig dolgoztam, mikor megérkezett a következő válasz...
2013. júl. 18. 01:11
 5/12 A kérdező kommentje:

A 23:02-es válaszolónak nagyon köszönöm, szuperek a képletek, látszik, hogy gyakorlott vagy benne. Még egyszer nagyon köszönöm.


Viszont lenne egy olyan kérésem, ha megoldható, akkor a cím leválogatásánál az utca nevét szóközzel kezdi, hisz ez van a vessző után, s ezt a szóközt ki lehetne hagyni? Tehát, hogy ne szóközzel kezdje? Ez nem olyan fontos, de esztétikusabb lenne.


Előre is köszönöm, Azione.

2013. júl. 18. 01:14
 6/12 anonim ***** válasza:
A szövegkezelő függvények ismerete nagyon hasznos, de a konkrét példát sokkal egyszerűbben is meg lehet oldani. Ha mondjuk ez az A oszlop, akkor adatok menü/szalag, szövegből oszlopok, határolójel vessző. Ez kiteszi a B oszlopba a címeket, azt elhúzod a C-be, hogy legyen helyed, majd az A oszlopban még egyszer szövegből oszlopok, határolójel szóköz és kész.
2013. júl. 18. 08:11
Hasznos számodra ez a válasz?
 7/12 anonim ***** válasza:
Ha már így lett, a szóköz eltakarításához nyisd ki a függvénybeszúrásnál a szöveg kategóriát, azt hiszem, tisztít lesz a neve, de ha végigmész, látod. Utána az eredményt kijelölve ctrl c, irányított beillesztés, értéket, és akkor visszateszi függvény nélkül, és törölheted az eredeti szóközös oszlopot.
2013. júl. 18. 08:13
Hasznos számodra ez a válasz?
 8/12 anonim ***** válasza:

akkor az utolsó legyen ez


=JOBB(A1;HOSSZ(A1)-SZÖVEG.KERES(",";A1)-1)


(-1 a végére)


Amúgy nincs mit, excelben nem vagyok valami gyakorlott, de ha már programozott kicsit az ember, akkor ez nem nagy falat:)

2013. júl. 18. 09:39
Hasznos számodra ez a válasz?
 9/12 A kérdező kommentje:

Sziasztok!


Még egyszer nagyon köszönöm a válaszokat sokat segítettetek, s tökéletes lett a megoldás.


Külön köszönet a 3. és 8. választ adónak. Az Ő megoldását használom, mert a legegyszerűbb és legelgánsabb.


Mindenkinek minden jó!


Csaba.

2013. júl. 23. 14:04
 10/12 levelecske válasza:

Pedig van egyszerűbb is. :)

Adatok / Szövegből oszlopok / és kiválasztod a tagolás módját.

2014. ápr. 1. 14:11
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!