-
GAMEPOD.hu
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
-
tag
Sziasztok!
2019-es Excelt használok.
Kicsit el vagyok veszve és nagyon elfáradtam
Az lenne a feladatom, hogy van egy oszlop, (jelenleg 6500 sorral) és ott a cellákban nem lehet több mint 65 karakter.
Na most több ezer sorban több karakter van és nekem ezeket módosítanom kell.Igazából a kérdésem az lenne, hogy az aktuális oszlopban rákattintok jobb klikkel és rendezés. Na itt van A-Z-ig meg Z-A-ig.
Ez tök jó de van olyan lehetőség ,hogy a cella tartalmától függően rendezi?
Tehát úgy kéne rendezni a sorrendet, hogy ahol a legtöbb karakter van egészen addig ahol a legkevesebb.Nem tudom mennyire érthető amit kérdezek
Nagyon köszönöm előre is a válaszokat!
Ajándék csónak ne nézd a lapát!
-
Delila_1
Topikgazda
válasz DevilAqua #52353 üzenetére
Szia!
Egy új oszlopba vedd fel a HOSSZ függvényt. Ha pl. az A2-ben kezdődnek az adataid, az új oszlopban a képlet legyen=HOSSZ(A2)
. Ezt másold végig le, majd eszerint rendezd a tartományodat.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
tag
válasz Delila_1 #52354 üzenetére
Köszi, hogy írtál
Bevallom totál kezdő vagyok
Az FW oszlopban vagyok. Ilyenkor leírnád kérlek kattintásról kattintásra mi a teendő? Egyszer kell csak nekem elmondani utána nem kérdezemAz Excelhez annyit értek, hogy cellák másolása stb...
[ Szerkesztve ]
Ajándék csónak ne nézd a lapát!
-
Delila_1
Topikgazda
válasz DevilAqua #52355 üzenetére
Lépj az FX2 cellába (feltételezem, hogy az első címsor, a 2. sorban kezdődnek az adatok). Az FX2-be jön a képlet:
=HOSSZ(FW2
).
Ezt a képletet lemásolod végig az FX oszlopba. Legegyszerűbben úgy, hogy az FX2 cellán állva a cella jobb alsó sarkában megjelenő kis négyzetre mutatsz – ekkor a kurzor kereszt alakú lesz –, duplaklikkre már végig is másoltad az összes sorodra a függvényt, ameddig van adatod az FW oszlopban.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Lokids
addikt
Sziasztok!
Az alábbi script valamiért hibára fut:
Set s_WS = Workbooks(Main_WB_Name).Worksheets("ValidList")
s_WS.Copy after:=Workbooks(Output_F_Name).Worksheets("Munka1")
Script out of rangeAz "after" rész nélkül megy.
Korábbi excel (2019) viszi, office 365 nem.
Van valakinek ötlete mi a gond?If you chase two rabbits you will lose them both.
-
Fferi50
őstag
válasz Lokids #52359 üzenetére
Szia!
Az Output_F_Name munkafüzet ugyanabban az Excel applikációban van? A két munkafüzetnek azonos "ablakban" kell lennie. A Windows állapotsoron hány Excel applikációt látsz megnyitva?
Van Munka1 nevű munkalap abban a munkafüzetben?
Az After nélküli azért működik, mert ott új munkafüzetbe másolja a kérdéses munkalapot.
Üdv. -
Lokids
addikt
válasz Fferi50 #52360 üzenetére
A munkafüzetet a makró hozza létre és abba másolná át a munkalapot a Munka1 után.
De ha kicserélem worksheets(1)-re, hogy az első ws után másolja, akkor is ugyanaz a hiba.Ezt a makrót még excel 2013-ban csináltam, de működött 2016 és 2019-en is. Office 365 eldobja.
If you chase two rabbits you will lose them both.
-
Fferi50
őstag
válasz Lokids #52361 üzenetére
Szia!
Mi lenne, ha előbb másolnád a munkalapot - ami létrehoz egy új munkafüzetet? A másolás után ez az új munkafüzet lesz aktív, átnevezheted tetszésed szerint.
A 365 sok tekintetben nem kompatibilis visszafelé sajnos - bár ebben az esetben nem gondolom, hogy ez lenne a hiba forrása.
Az Out of Range arra utal, hogy nincs olyan nevű munkafüzet vagy munkalap az applikáción belül.
Üdv. -
Lokids
addikt
válasz Fferi50 #52362 üzenetére
De a másoláshoz már léteznie kell a célnak.
Amúgy ahogy nézem a workbookkal van gondja.
Megpróbálom egy másik változóba tárolni (Set outputWB = Workbooks(Output_F_Name))és akkor már ott adja a hibát. Annak ellenére, hogy a WB létrejött.If you chase two rabbits you will lose them both.
-
félisten
-
Fferi50
őstag
válasz Lokids #52364 üzenetére
Szia!
Mit tartalmaz az Output_F_Name változód?
Ha a VBA nézet Immediate nézetben megnézed, hány munkafüzetet látsz aktívnak (? Workbooks.Count)
Az Out of Range üzenet azt jelenti, hogy nincs olyan nevű munkafüzeted az alkalmazásban.
Hány Excel alkalmazást látsz megnyitva?
Üdv. -
Lokids
addikt
válasz Fferi50 #52366 üzenetére
Tényleg? Amióta használom azóta először mindig létrehoztam egy új WB-t majd másoltam bele. Erről nem tudtam.
Amúgy count 3-at (WB) ad vissza, ami helyes. A makró excel, a bemeneti adatokat tartalmazó excel és a létrehozott kimenet.
A makróban futás közben a változó a jó értéket tartalmazza (kiterjesztés nélküli név).If you chase two rabbits you will lose them both.
-
the radish
senior tag
Sziasztok!
A1 pl.:
3300, Eger"A" oszlopból szeretném az iránytószámokat + a vesző után az első szóközt törölni makróval, de már az elején elakadtam:
Range("A1:A30000").Replace What:=NumberFormat = "####", Replacement:=""
Segítségeteket előre is köszönöm!
[ Szerkesztve ]
-
Delila_1
Topikgazda
válasz the radish #52372 üzenetére
Range("A1:A30000") = Left(Range("A1"), 5)
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Fferi50
őstag
válasz the radish #52372 üzenetére
Szia!
Próbáld így:Range("A1:A30000").Replace What:="?????", Replacement:=""
Üdv. -
the radish
senior tag
válasz the radish #52376 üzenetére
Range("A1:A30000") = Left(Range("A1"), 5)
Eredmény: 3300 (az "Eger" tűnt el)Range("A1:A30000").Replace What:="????,?", Replacement:=""
Ez valóban jó lenne, de írtad is bukót, van, ahol található még vessző és onnan is levág -4 karaktert[ Szerkesztve ]
-
Fferi50
őstag
válasz the radish #52377 üzenetére
Szia!
Nincs mese, akkor bonyolultabb egy nagyon picit:Sub cserelo1()
Dim cl As Range
For Each cl In Range("A1:A30000")
cl.Value = Mid(cl.Value, 5)
Next
End Sub
Sajnos végig kell menni cellánként.
Vagy segédoszlop kell hozzá (itt a B oszlop):Sub cserelo2()
With Range("B1:B30000")
.Formula = "= Replace(A1, 1, 5, """")"
.Offset(0, -1).Value = .Value
.Clear
End With
'B helyére írd a saját segédoszlopod. A makró után a segédoszlop üres lesz.
End Sub
Üdv.[ Szerkesztve ]
-
Fferi50
őstag
válasz the radish #52377 üzenetére
Szia!
Még annyit az előző makrókhoz, hogy a 4 jegyű irányítószám + vessző + egy szóköz miatt az első makróban Mid(cl.value,7) kell, a második makróban pedig Replace(A1,1,6,"""").
Sajnos nem számoltam utána, közben jutott eszembe.
Üdv.[ Szerkesztve ]
-
tag
Sziasztok!
Egy kis alap segítséget kérnék
TÖbb ezer soros excelt csinálok és egy adott oszlopban mindig különböző szövegeket írok mely 2-3 szavasak. Viszont sok ugyanolyan van és nem szabad, hogy ugyanaz legyen. Ezért mindig felcserélem a szavakat.Most is mikor elkezdek egy új sort gépelni már elkezdi jelezni, hogy van olyan. Viszont nem az egész oszlopból. Csak azok közül jelzi amit már utólag éppen aktuálisan írok mondjuk 20 sorral feljebb.
Hogy tudom elérni, hogy az excel figyelje az egész oszlopot és véletlenül se legyen ismétlődés?
Köszönöm előre is
Ajándék csónak ne nézd a lapát!
-
andreas49
senior tag
Sziasztok,
*.csv fájl beolvasása után pl. 49 db hibát jelez, a fájl ~190e soros. Miként lehet megállapítani, hogy mi és hol a hiba? Segítséget köszi előre is.HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro
-
-
andreas49
senior tag
válasz Fferi50 #52386 üzenetére
Amint megnyílik a fájl, látom az első 200 sor előképét, majd kiválasztom a 'Letöltés hely' funkciót, amikor betölti a teljes *.csv fájlt, ez a *CSV fájl ~35 Mb. Megvan ennek a szétdarabolt változata is mintegy 55 db csv fájl. Most nemrég ezeket vittem be egyesével, ahol nem kaptam hibaüzenetet.
Kiegészítés:
a hibás fájl: 108837 sor
az egyenkénti: 108981 sor[ Szerkesztve ]
HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro
-
Delila_1
Topikgazda
válasz DevilAqua #52380 üzenetére
Adj feltételes formázást az oszlopra.
=DARABHA($A$1:$A$1000;A1)>1
Adj háttérszínt. Beírás után azonnal kiszínesedik a duplázott cella.
Régebbi verziókban DARABTELI volt a függvény neve.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz DevilAqua #52390 üzenetére
Kijelölöd a tartományt. A példámban ez a tartomány az
A1:A1000
.
Feltételes formázás, Új szabály, A formázandó cellák kijelölése képlettel (kicsit lüke meghatározás, kijelölés helyett meghatározást írtam volna). A képletet Az értékek formázása, ha ez a képlet igaz rovatba írd be, majd add meg a formátumot, például egy feltűnő kitöltést.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
VGYke
addikt
Sziasztok! Ha egy excel általam írt makrót tartalmaz és elmentem az OneDrive tárhelyemre majd megosztom, ha más a megosztási link birtokában böngészőből megnyitja a táblázatot, nem fog futni a makró?
Vagy van ennek is egy trükkje hogy fusson?kutya az ember legjobb barátja... lenne, ha tudna kölcsönadni
-
andreas49
senior tag
Sziasztok,
VBA írásba kérek segítséget, melyet előre is köszönök:
Van több nagyméretű Excel fájlom, amit külön munkafüzet munkalapjaira szeretnék átmásoltatni VBA-val. A forrásfájl 'A:AG' oszlop szerkezetű, az 'A' oszlop szerint kellene a különböző munkalapokat egy munkafüzetbe létrehozni. Itt évszámok vannak, évszámonként eltérő (3-5 ezer sor) sor.HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro
-
Delila_1
Topikgazda
válasz andreas49 #52394 üzenetére
Megnyitod az első nagy fájlt. Felveszel egy változót a füzet nevével.
Rendezed a tartományt az évszám szerint. Evszam változót veszel fel. Az első évszám az oszlopban.
Kijelölöd a másolandó tartományt –első sor=Match(Evszam, columns(1),0) , utolsó sor= Match(Evszam, columns(1),1)
.
Innen lesz az ismétlés
Megnyitod a füzetet, ahova másolni akarod külön lapokra az évszám szerinti adatokat. Ellenőrzöd, hogy van-e már Evszam nevű lap.
Dim WS As Workbook, Evszam As String
Evszam = "2024" ’az oszlopban lévő első évszám
On Error Resume Next
Set WS = Sheets(Evszam)
If Err.Number = 9 Then
Sheets.Add.Name = Evszam
Else
Sheets(Evszam).Select
End If
On Error GoTo 0
Kikeresed az első üres sort, beilleszted a tartományt.
Eddig
Vissza az első nagy fájlba, megadod a következő évszámot – ennek asora=range(„A” & Match(Evszam, columns(1),1)+1
. Ezt az értéket adod meg új évszámként.Vajh' mennyire követhető ez?
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
-
andreas49
senior tag
válasz Fferi50 #52396 üzenetére
Új munkafüzetbe kerüljön az összes évszámomként munkalap (1 munkalap =1 évszám. Az új munkafüzet neve: első dátum-utolsó dátum (pl. 1968-2023.xlsx)
Az 'A' oszlopban vannak az évszámok 1968-2023 között növekvő sorrendben
Minden másolt munkalap kap egy évszám nevet.
A többi fájl 1 'kaptafa' alapon fog készülni külön munkafüzetbeHONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro
-
Delila_1
Topikgazda
-
andreas49
senior tag
válasz Delila_1 #52399 üzenetére
Készítettem egy munkafüzetet 1968-tól 2023-ig nevű munkalapokkal (Tőled korábban kapott VBA segítségével gyorsan ment)
Kijelölöd a másolandó tartományt –első sor=....
Ezt hová kell beírni?
HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro
Új hozzászólás Aktív témák
- PC JÁTÉKOK (OLCSÓ STEAM, EA , UPLAY KULCSOK ÉS SOKMINDEN MÁS IS 100% GARANCIA )
- Megmaradt - Eredeti Humble, Choice - Steam kulcsok
- Windows, Office licencek a legolcsóbban, egyenesen a Microsoft-tól - 2990 Ft-tól!
- Game Pass Ultimate előfizetések 1 - 25 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN!
- Steam kulcsok - UTALÁS/REVOLUT
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen