Hirdetés
- sziku69: Szólánc.
- antikomcsi: Való Világ: A piszkos 12 - VV12 - Való Világ 12
- Amazon Kindle JailBreak
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- sidi: 386-os Chicony gázplazma laptop memóriabővítése
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Garry84: Sumák aprós?
- Elektromos rásegítésű kerékpárok
- Lalikiraly: Kinek milyen setupja van?
Hirdetés
(használd a CYBSEC25PH kuponkódot további 20 ezer ft kedvezményért!)
-
LOGOUT
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
nzsolt74 #20112 üzenetére
Hello,
...Az első oszlop 14 soronként ugyanaz, ezekből szeretnék egy új lapon 14 oszlopot fejléccel...
Makrós megoldásod van már, de ezt képletekkel is el lehet érni, mivel az adatod struktúrált.
A lényeg, hogy az új lapodon a második sorban a Név mezőbe a másik lap 1 sorát, a 15-et, a 29-et stb. kell kiíratni.
Ez az alábbi logikával írható le: 14*{0;1;2;3..}+1
Excelben a képleted: =14*(SOR()-2)+1 (2-t kell kivonnunk mert az elsőben fejléc van már)A születési idő a 2, 16, 30 stb. sorokban van, ahol a képlet a fentiektől csak annyiban tér el, hogy nem 1-et, hanem mindig 2-t kell adni az elsőrészhez.
Mivel a név az első oszlopban van, a születési idő a másodikban (és így tovább), ezért ha használjuk az OSZLOP függvényt akkor nem kell nekünk megadni, hogy egyik esetben 1-et, a másikban 2-t stb. kell hozzádni. Vagyis az univerzális képlet: =14*(SOR()-2)+OSZLOP()
Már csak cella hivatkozás kell, amelyre az INDIREKT függvény szolgál.
A végső képlet tehát: =INDIREKT("Masiklap!B"&14*(SOR()-2)+OSZLOP())Ezt másold le jó sokszor, hogy biztos lefedd a másik lapon összes sorát (10000 sor esetén elgé 715 sorba).
A képlet ott ahol üres a cella 0-t fog kírni, ezt el tudod tüntetni ha vizsgálod a SZÖVEG.E függvénnyel, hogy kaptál-e adatot vissza.
üdv.
-
Delila_1
veterán
válasz
nzsolt74 #20115 üzenetére
Nem is kell megírnod, azt megtettem én.
Alt + F11-re bejön a VB szerkesztő. Bal oldalon kiválasztod a füzeted nevét. Insert menü, Module. Erre bal oldalon kapsz egy Moldule1 nevű mappát. Ezt kiválasztva jobb oldalon lesz egy üres fehér terület, ahova innen átmásolod a makrót.
Átírod benne a 2 munkalap nevét, nyomás vissza az Excelbe.
Alt+F8-ra megjelenik egy párbeszéd ablak, ahol el tudod indítani a makrót. -
Delila_1
veterán
válasz
nzsolt74 #20112 üzenetére
Egy rövid makró megcsinálja.
Sub Transzponalas()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim sor As Long, tol As Long, ig As Long, ures As Long
Set WS1 = Sheets("Munka1")
Set WS2 = Sheets("Munka2")
WS1.Activate
'Címsor másolása
Range("A1:A14").Copy
WS2.Range("A1").PasteSpecial Paste:=xlPasteValues, Transpose:=True
'Egységek másolása
ures = 2: tol = 1: ig = 14
Do While Cells(ig, 1) <> ""
Range("B" & tol & ":B" & ig).Copy
WS2.Range("A" & ures).PasteSpecial Paste:=xlValues, Transpose:=True
tol = tol + 14: ig = ig + 14: ures = ures + 1
Loop
End SubSzerk.: A Set-tel kezdődő 2 sorban írd át a lapneveket. Munka1 helyett az adatokat tartalmazó lapodat, Munka2 helyett pedig azt írd be, ahova át akarod írni más formában.
Új hozzászólás Aktív témák
- Kerékpárosok, bringások ide!
- Amlogic S905, S912 processzoros készülékek
- Battlefield 6
- Cudy routerek
- Óvodások homokozója
- Újradefiniálja a Xiaomi 17, milyen egy kompakt csúcstelefon
- iPhone topik
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Apple iPhone Air - almacsutka
- Allegro vélemények - tapasztalatok
- További aktív témák...
- AKCIÓ! MSI MAG 325CQRXF QHD VA 240Hz 1ms monitor garanciával hibátlan működéssel
- Lenovo ThinkPad X13 G2 multitouch (minimálisan használt)
- Beszámítás! Samsung Odyssey G5 32 QHD 144Hz VA 1ms monitor monitor garanciával hibátlan működéssel
- Csere-Beszámítás! Xbox Series X 1TB Játékkonzol! Ajándék Akkumulátoros töltőállomással!
- BESZÁMÍTÁS! ASUS B760M i7 13700K 32GB DDR4 512GB SSD RX 6800XT 16GB Phanteks Eclipse P400 Glacier
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest