- Samsung Galaxy A56 - megbízható középszerűség
- One mobilszolgáltatások
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- Google Pixel topik
- Yettel topik
- Android alkalmazások - szoftver kibeszélő topik
- Íme az új Android Auto!
- Karaktere biztos lesz az első Nothing fejhallgatónak
- Honor 200 Pro - mobilportré
- Mobil flották
-
Mobilarena
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Mutt
senior tag
válasz
gborisz #53158 üzenetére
Szia,
Megnéztem a fájlt és csak egy apró probléma van vele. A harmadik lépés nem az előtte lévőre, hanem a legelsőre (a Forrás nevűre) hivatkozik, ahol még nem történt meg típuskonverzió.
Csak annyit kell csinálnod, hogy a szerkesztőlécben a Table.RenameColumns utáni "Forrás"-t, ami az első lépés neve lecseréled a másodikkal. Mivel annak a nevében van szóköz, ezért hashtaggel (#) kell kezdened és utána zárójelekben megadnod a lépés nevét, vagyis #"Típus módosítva" kell.
A Power Query makrószerűen dolgozik, az egymás után megadott lépéseket hajtja végre. Általában az újabb lépés bemenete az előző kimenete. Alapból minden függvény első paramétere az előző lépés neve, de itt lehetséges hogy nem mindig az előző lépés eredményét használjuk fel a következőben.
Tipikus példa szokott lenni amikor sok adat esetén a Table.Buffer-el memóriába tesszük az eredmény táblát és késöbbi lépésekben erre hivatkozunk vissza.
Egy másik fontos tudnivaló inkább csak az M-kódban látszik, ami
let -el kezdődik (kivével ha UDF-et csináltunk) és in-el végződik. Az in után megadott lépés neve lesz az eredmény, amely nem kötelező hogy az utolsó lépésé legyen. (Perverz módon meglehet adni az első, többnyire Forrás/Source nevű lépést is.)
Ez többnyire teszteléskor/fejlesztéskor hasznos, amikor a további átalakítások bizonytalanok. Ha vki ilyenben gondolkodik, akkor jobb megoldás a lekérdezés duplikálása hivatkozással (reference), ami az eredeti lekérdezés eredményéből indul ki.üdv
-
Mutt
senior tag
válasz
gborisz #53123 üzenetére
Szia,
Az adatsorod tizedespontot használ, miközben magyar Excel-t használsz, ahol tizedesvessző van, ezért szövegnek maradnak a számok.
Egyik megoldás a nyelvterület megadása a második lépésben. A zárójel elé írd be ezt: , "en-US"
Ha ez nem megy (túl régi az Exceled), akkor egy lépés kell a típus módosítás elé, ahol a tizedespontot vesszőre cseréljük. Jobb oldalt a Forrást kijelölöd, majd a 3 oszlopot ahol a törtszámok vannak, majd Kezdőlapon az értékek lecserélése (angolban Home -> Replace values) ablakban a pontot vesszőre cseréled.
Ezek után a típusot már a nyelvterület nélkül rendben fogja megismerni a PQ.üdv
-
Fferi50
Topikgazda
válasz
gborisz #53123 üzenetére
Szia!
Szerintem azok nem számok, hanem csak annak látszó szövegek (a Minta sorban egyértelműen látszik). Át kell alakítani számmá. Nem elég a cellatípust számra változtani.
Pl. beírsz egy üres cellába egy db 1-est. Ezt Copy majd a tartományt kijelölve irányított beillesztés - a műveleteknél szorzás. Utána a cellát kitörölheted.
Bocs a lekérdezés szerkesztésben is megváltoztathatod az oszlop formátumát - azt hiszem átalakítás és ott kiválaszthatod a számot.
Üdv. -
Mutt
senior tag
válasz
gborisz #53117 üzenetére
Szia,
Power Query-hez az M-kód ennyi:
let
Forrás = Csv.Document(File.Contents("D:\a.txt"),[Delimiter="#(tab)", Columns=4, Encoding=1250, QuoteStyle=QuoteStyle.None]),
#"Típus módosítva" = Table.TransformColumnTypes(Forrás,{{"Column1", Int64.Type}, {"Column2", type number}, {"Column3", type number}, {"Column4", type number}}),
#"Oszlopok átnevezve" = Table.RenameColumns(#"Típus módosítva",{{"Column1", "Pontszám"}, {"Column2", "Koord1"}, {"Column3", "Koord2"}, {"Column4", "Magasság"}})
in
#"Oszlopok átnevezve"Az első sorban látható hogy a D: meghajtóról olvassa be az a.txt-t ezt kell átirni a kódban (újabb PQ változatokban ezt máshogy is lehet módosítani.
A munkafüzetben egy új lapot hoz létre az adatokkal (esetemben az új lap neve "a"), amiket az INDEX függvénnyel lehet a végső munkalap celláiba írni.
A2-ben a képlet:
=INDEX(a!$A:$A;SOR())
C2-ben=INDEX(a!$B:$B;SOR())
és igy tovább.A 12-es sortól pedig jönnek a lehetséges többi adatok.
A12-ben a képlet:=HA(SOR()-6>DARAB2(a!$A:$A);"";INDEX(a!$A:$A;SOR()-6))
Itt figyeljük, hogy van-e a másik lapon még adat és az elcsúszott sorszámot is módosítjuk.
A képletek lemásoljuk az első száz sorig és meg is van.Ha van új adat, akkor az a.txt fájlt felülírjuk és a Power Query menüben található frissítést megnyomjuk.
üdv
-
Mutt
senior tag
válasz
gborisz #53117 üzenetére
Szia,
Ismétlődő feladatok automatizálására két lehetőség is van.
1. Makró használata. Akár fel is veheted a lépéseket, amit mutattál ahhoz a rögzítés is jó lesz.
2. Power Query 2013hoz még telepíteni kell innen.
Youtubeon van jó pár video txt fájl beolvasására. Pl. https://www.youtube.com/watch?v=FLzKnNmE4MsÜdv
-
Fferi50
Topikgazda
válasz
gborisz #53117 üzenetére
Szia!
Milyen Ctrl+C - Ctrl+V?
Excelben megnyitod a szövegfájlt. Ha egy oszlopba jön be a szöveg, akkor Adatok - Szövegből oszlopok - tagolt - a Tab eleve be van jelölve, OK (több párbeszéd ablakon végigmész).
Ha eleve több oszlopba jön be, akkor ráállsz a B oszlopra, Beszúrás.
Ha ez nem felel meg, akkor tegyél fel mintát légy szíves.
Üdv.
Új hozzászólás Aktív témák
Hirdetés
- Formula-1
- Garancia kérdés, fogyasztóvédelem
- Milyen légkondit a lakásba?
- EA Sports WRC '23
- Samsung Galaxy A56 - megbízható középszerűség
- exHWSW - Értünk mindenhez IS
- One mobilszolgáltatások
- gban: Ingyen kellene, de tegnapra
- Lakáshitel, lakásvásárlás
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- További aktív témák...
- Eladó Steam kulcsok kedvező áron!
- Játékkulcsok olcsón: Steam, Uplay, GoG, Origin, Xbox, PS stb.
- ROBUX ÁRON ALUL - VÁSÁROLJ ROBLOX ROBUXOT MÉG MA, ELKÉPESZTŐ KEDVEZMÉNNYEL (Bármilyen platformra)
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Bontatlan - BATTLEFIELD 1 Collectors Edition - Játékszoftver nélkül
- AKCIÓ! GIGABYTE B360 i5 9600K 16GB DDR4 512GB SSD RX 7600 8GB Rampage SHIVA Zalman 600W
- Telefon szerviz helyben - Gyors javítás, akár 30 perc alatt!
- AKCIÓ! Dell Alienware M17 R3 Gamer notebook - i7 10750H 16GB DDR4 1TB SSD RTX 2070 8GB WIN10
- Csere-Beszámítás! Olcsó Számítógép PC Akár játékra! Intel X5650 / GTX 1650 / 24GB / 240SSD+ 500HDD
- SanDisk Extreme Portable 8TB (SDSSDE61-8T00-G25)
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PC Trade Systems Kft.
Város: Szeged