Hirdetés

2024. május 4., szombat

Gyorskeresés

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)

Téma összefoglaló

Téma összefoglaló

  • Utoljára frissítve: 2023-11-13 08:31:56

LOGOUT.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.

Összefoglaló kinyitása ▼

Hozzászólások

(#28301) Drachoo


Drachoo
senior tag

Sziasztok!

Nem tudom jó helyre írok-e, mert nem szorosan excel hanem google spreadsheets, de hátha valaki tud segíteni. Egy képletben szeretnék segítséget kérni.

Adott egy táblázaton belül két munkalap. Mindkét munkalapban adott két oszlop melyben dátumok vannak felrögzítve egyszerű formátumként, például 2015.08.23, a két oszlopban a dátumok sorrendje nem egyezik. Viszont az egyik munkalapon a dátumok melletti oszlopban numerikus értékek is találhatóak és ezeket szeretném átvinni a másik táblázatba arra a helyre ahol stimmel az azonos dátum.

Hú remélem sikerült érthetően megfogalmaznom.

Ha valaki segíteni tud merre induljak el megköszönném. :R

Okos pilóta alagútban nem katapultál.

(#28302) Drachoo válasza Drachoo (#28301) üzenetére


Drachoo
senior tag

Ha jól sejtem az fkeres(vlookup) függvény kell nekem.

Okos pilóta alagútban nem katapultál.

(#28303) bumlet


bumlet
csendes tag

Sziasztok!

Van egy táblázatom amiben számlák vannak rögzítve több munkalapon. Azt szeretném megoldani hogy a táblázat egy új munkalapján jelenjen meg az összes olyan számla ami teljesít egy adott feltételt.

Előre is köszönöm a segítségeteket.

(#28304) Mittu88 válasza Lajoskala (#28300) üzenetére


Mittu88
senior tag

hahiba függvényt használd, ha jól értettem a problémádat, segíteni fog. Második argumentumként ezt add meg: "" (SHIFT+2, kétszer)
Vagy egy sima 0-t.

(#28305) Mittu88 válasza Delila_1 (#28271) üzenetére


Mittu88
senior tag

Műűűűűűködik! :C :C :C :C

Miért kell az On Error GoTo 0 után egyből egy On Error Resume Next?

(#28306) spe88 válasza bumlet (#28303) üzenetére


spe88
senior tag

Sima HA függvénnyel egymásba ágyazva nem megy?

Spóroljunk! Kerül, amibe kerül!

(#28307) Mittu88 válasza bumlet (#28303) üzenetére


Mittu88
senior tag

Ebből nehéz kiindulni, egy - néhány fals számlaadattal feltöltött - adatfájlt küldj át.

(#28308) bumlet válasza Mittu88 (#28307) üzenetére


bumlet
csendes tag

https://drive.google.com/file/d/0B7b59Ad833pDVTNadWVwcF9tNTg/view?usp=sharing

Azt szeretném hogy a Kp munkalapon jelenítse meg az összes kp-s számlát, a bank munkalapon pedig a bankos számlákat. A feltöltött táblában van egy pár adat de ettől sokkal többel kell dolgoznom.

(#28309) bumlet válasza bumlet (#28308) üzenetére


bumlet
csendes tag

Úgy tűnik találtam egy megoldást. Ha minden munkalapon megadom a számlákhoz a hozzájuk tartozó kifizetési bizonylatok sorszámát, akkor ezeket listázva a "kp" és a "bank" munkalapokon az FKERES függvénnyel ki tudom listázni a szükséges adatokat. Már csak azt kéne megoldani hogy az FKERES ne csak egy munkalapon keresse az adott sorszámokat, hanem az összesen.

(#28310) Delila_1 válasza Mittu88 (#28305) üzenetére


Delila_1
Topikgazda

Az On Error Resume Next hibát generál, ha nem tudja megnyitni a következő sorban a fájlodat.

A megnyitási hiba kódja az 1004. Mikor bejön ez a hibakód, felteszi a kérdést

valasz = MsgBox("Újrahívás", vbYesNo + vbExclamation, "Új próbálkozás")

Igen válasz esetén kilép a Sub-ból, Nem-nél az Ujra címkéhez ugrik, ahol megszüntetjük a hibakódot az
On Error GoTo 0 sorral, másképp hibát jelez akkor is, ha most már meg tudja nyitni a fájlt.
Ez a lenullázó sor tulajdonképpen a 2. próbálkozástól érdekes, első esetben 0 a hibakód.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28311) Mittu88 válasza Delila_1 (#28310) üzenetére


Mittu88
senior tag

Szuper, köszi :Y :R :R :R

(#28312) Delila_1 válasza Mittu88 (#28311) üzenetére


Delila_1
Topikgazda

Szivi.

A hibakódot úgy tudtam meg, hogy nem létező fájlt írtam a megnyitáshoz. Ekkor leállt hibával (még nem írtam hibakezelést), és kiírta, amire szükségem volt.

Szerk.:
A 23310-ben felcseréltem az igen-nem válaszokhoz tartozó következő lépéseket, de észrevetted. :)

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28313) Delila_1 válasza bumlet (#28309) üzenetére


Delila_1
Topikgazda

Feltettem ide a füzetedet egy makróval.

A Segéd lapot töröltem. Összesen 2 adat miatt nem érdemes fenntartani egy teljes lapot, az érvényesítést másképp adtam meg a többi lap G oszlopában.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28314) poffsoft válasza spe88 (#28306) üzenetére


poffsoft
addikt

Újabb dragdrop, ha a "Skip missing"-et kipipálod, akkor is lefut, ha van üres label.

klikk

+ fícsör: duplaklikk a "drop" cimkén (pl. "SAP1" ) törli a fájlnevet (a boxból, nem a gépről :D )

[ Szerkesztve ]

[ Szerkesztve ]

(#28315) #81999360


#81999360
törölt tag

Sziasztok,

Lehet olyat csinálni, hogy beírok egy cellába egy számsorozatot, (pl.: 12345678900) azt ő úgy formázza, ahogy megadom neki? pl minden második számjegy után tegyen pontot, az utolsó 4 számjegy elé pedig egy kötőjelet?
Tehát valahogy így nézzen ki: 12.34.56.78-9000?

Próbáltam a cellaformázás alatt "#" jelekkel, de nem igazán értem, hogy hogyan működik.

(#28316) Delila_1 válasza #81999360 (#28315) üzenetére


Delila_1
Topikgazda

Túl sok az Excel lelkének, nem fogadja el a ##.##.##.##-#### formátumot az egyéni kategóriában. Javaslom, hogy a beírás oszlopát szöveg formátumra vedd, és egy segédoszlopban az

=BAL(A1;2)&"." & KÖZÉP(A1;3;2) &"." & KÖZÉP(A1;5;2) &"." & KÖZÉP(A1;7;2) &"-" &JOBB(A1;4)

képlettel formázd a kedved szerint.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28317) bumlet válasza Delila_1 (#28313) üzenetére


bumlet
csendes tag

Nekem ugyanazt hozta be amit én tettem fel. Feltöltenéd légyszi még egyszer?

(#28318) Delila_1 válasza bumlet (#28317) üzenetére


Delila_1
Topikgazda

Remélem, most jót töltöttem fel.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28319) tzimash


tzimash
őstag

Sziasztok!

Van egy táblázatom, amiben külön lapra kellene szétbontanom a selejt és a jó termékeket.
A 4. oszlopban van az az adat, amely jelzi, hogy selejtről van-e szó vagy jóról.
A "jóknál" tuti ott van egy J betű a karakterláncban (pl: L10 J 0000 7221->7221) a selejtek megjelenési formája viszont változó lehet.
A lényeg, hogy ki kellene szedni a selejtet tartalmazó sorokat és fejléccel együtt egy másik füzetlapra másolni, az eredetiből pedig törölni.
Az eredeti (vagy egy harmadik - teljesen mindegy) lapon meg maradna az összes "J"-t tartalmazó sor. A táblázat mérete nem állandó (50-700ezer sorról van szó)
Segítene valaki erre egy makrót írni?

[ Szerkesztve ]

(#28320) bumlet válasza Delila_1 (#28318) üzenetére


bumlet
csendes tag

Nagyon szépen köszönöm! Hibátlanul működik! :)

(#28321) Delila_1 válasza bumlet (#28320) üzenetére


Delila_1
Topikgazda

Szívesen. :)

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28322) the radish válasza Delila_1 (#28196) üzenetére


the radish
senior tag

Szia!

Azt hogy tudom megoldani, hogy a 2. sorban legyen a beillesztés első sora?
Tehát az "A2" legyen a kezdő cella. Próbáltam átírni, de nem sikerült.
(Fejléc nem kell, az úgyis törlődik, miután áthelyeztem a törlés parancsot.)

Do While Cells(tol, 1) <> ""
WSM.Cells = "" 'másolat lapjának kiürítése
sorM = Application.CountA(WSM.Columns(1)) + 1 'ebbe a sorba kell másolni
tol = Application.Match(sorszam, Columns(1), 0)
If VarType(tol) = vbError Then 'ha nem talált tol értéket
MsgBox "Kesz"
Exit Sub

[ Szerkesztve ]

(#28323) Delila_1 válasza tzimash (#28319) üzenetére


Delila_1
Topikgazda

Másold át a fejlécet egy új lapra.

Használd az autoszűrőt az eredeti lapon. Megadhatod, hogy azok a sorok legyen láthatóak, amelyek tartalmazzák a J karaktert. Ezeket a teljes sorokat kijelölöd, Ctrl+c-vel másolod, az új lap A2 cellájába Ctrl+v-vel beilleszted.

Marad a kijelölés az első lapon, ezeket a sorokat törlöd.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28324) Delila_1 válasza the radish (#28322) üzenetére


Delila_1
Topikgazda

Rows(1).Copy WSM.Range("A1") 'fejléc másolása ezt sort töröld ki a makróból.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28325) Delila_1 válasza the radish (#28322) üzenetére


Delila_1
Topikgazda

Figyelmetlenül olvastam az előbb. :((

Egy jól működő makrót ne írjunk át azért, amit könnyedén a makró nélkül is elintézhetsz. Kijelölöd a címsort, és nyomsz egy Delete-t. Ha meg úgyis törlődik, akkor ezt sem kell billentyűzetről elvégezned.

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28326) the radish válasza Delila_1 (#28325) üzenetére


the radish
senior tag

Nagyon köszi, de a forrásadat megnyitását is makró végzi, s a további műveletek miatt kell az első sort üresen hagynom azon a lapon, ahova a másolás történik.

Tegnap valamit elcseszhettem, mert amikor az utolsó adatot is átmásolta, a makró hibával leállt ahelyett, hogy a"kész" felirat jelent volna meg.

Most így van és működik, de ha megkérlek, vetnél rá egy pillantást, hogy megfelelő-e?

Do While Cells(tol, 1) <> ""
WSM.Cells = "" 'másolat lapjának kiürítése
sorM = Range("A2")
tol = Application.Match(sorszam, Columns(1), 0)
If VarType(tol) = vbError Then 'ha nem talált tol értéket
MsgBox "Kesz"
Exit Sub
Else
ig = Application.Match(sorszam, Columns(1), 1)
Rows(tol & ":" & ig).Copy WSM.Range("A2")
Makro 'Itt indul a saját makród
sorszam = sorszam + 1 'növeljük a keresendő értéket
End If
Loop
End Sub

Az eredeti:

Do While Cells(tol, 1) <> ""
WSM.Cells = "" 'másolat lapjának kiürítése
sorM = Application.CountA(WSM.Columns(1)) + 1 'ebbe a sorba kell másolni
tol = Application.Match(sorszam, Columns(1), 0)
If VarType(tol) = vbError Then 'ha nem talált tol értéket
MsgBox "Kesz"
Exit Sub
Else
ig = Application.Match(sorszam, Columns(1), 1)
Rows(tol & ":" & ig).Copy WSM.Range("A" & sorM)
Makro 'Itt indul a saját makród
sorszam = sorszam + 1 'növeljük a keresendő értéket
End If
Loop
End Sub

Előre is köszönöm!

[ Szerkesztve ]

(#28327) Delila_1 válasza the radish (#28326) üzenetére


Delila_1
Topikgazda

Az eredeti makró végére, az End Sub fölé tegyél be egy sort:

WSM.Rows(1) = ""

Ennyi az egész, ezzel a másolt lap első sorából kitörlöd az adatokat.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28328) the radish válasza Delila_1 (#28327) üzenetére


the radish
senior tag

:R
Gondolni sem merek arra, hogy mi lenne, ha Te nem- és nem ilyen lennél.
Ismételten nagyon köszönöm!

(#28329) Delila_1 válasza the radish (#28328) üzenetére


Delila_1
Topikgazda

Akkor segítene más. :DD

Szívesen. :)

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28330) spe88


spe88
senior tag

Olyan függvényt tudnátok mondani, ami megszámol egy adott tartományban különböző tartalmű cellákat?
Olyan kellene, ami nem csak sázmoakt kezel!

PL:

A oszlopban

alma
alma
alma
körte
körte
dió
narancs
narancs

és erre kidobja, hogy 4, mert 4 különböző szüveg van benne!

Köszi

Spóroljunk! Kerül, amibe kerül!

(#28331) Delila_1 válasza spe88 (#28330) üzenetére


Delila_1
Topikgazda

=SZORZATÖSSZEG((tartomány<>"")/DARABTELI(tartomány;tartomány))

vagy
{=SZUM(1/DARABTELI(tartomany;tartomany))}

Shit+Ctrl+Enterrel a 2. képlet.

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28332) spe88 válasza Delila_1 (#28331) üzenetére


spe88
senior tag

Köszi működik, egy baj viszont van: azt nem mondtam, hogy létezhet üres cella is és akkor zérosztóra módosul függvény értéke!
HA függvénnyel viszont én legalább is nem tudom megadni, hogy hagyja békén az üreseket, mert egy egész tartományt érint!

Ilyenkor mit tudok tenni?

Köszi

Spóroljunk! Kerül, amibe kerül!

(#28333) Delila_1 válasza spe88 (#28332) üzenetére


Delila_1
Topikgazda

Ilyenkor zéróosztó eredményt kapsz.

Csinálj speciális- (régebbi verziókban irányított) szűrést, jelöld be a "Csak az egyedi rekordok megjelenítése" négyzetet. Az F2 képlete =DARAB2(D2:D7)

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28334) spe88 válasza Delila_1 (#28333) üzenetére


spe88
senior tag

Köszi így működik!

Már nem látok ki a számokból lehet tudom a kézenfekvő megoldást, de msot nem jut eszembe, szóval:

Még egy kérdés:

01202012
85465465
85465465
85423465
9654984Q
93218756
9654984Q
278456PP
312354ZS
278456PP
273536PP
312354ZS
3122341S
85423465
85423466

Adott az adattömb, hogy tudom megszámoltatni vele, azokat a cellákat, aminek a szövege 2-vel vagy 3-mal kezdődik! Ami többször fordul elő azt csak egyszer számolja meg!

Tehát ennek az eredmény ez lenne: 4

Szűrés nélkül megoldható ez?

Köszi

Spóroljunk! Kerül, amibe kerül!

(#28335) Delila_1 válasza spe88 (#28334) üzenetére


Delila_1
Topikgazda

B1 -> =DARABTELI(A$2:A2;A2)
C1 -> =BAL(A2;1)
D2 -> =DARABHATÖBB(C:C;2;B:B;1)+DARABHATÖBB(C:C;3;B:B;1)

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28336) tzimash válasza Delila_1 (#28323) üzenetére


tzimash
őstag

Köszi.
Az a baj, hogy ez a mutatvány működik kb. 300k sorig, azon felül meg hibaüzit kapok.
Meg jó lett volna egy gombnyomásra túl lenni az egészen. Beleásom magam egy kicsit.
:)

(#28337) Delila_1 válasza tzimash (#28336) üzenetére


Delila_1
Topikgazda

Tettem fel egy fájlt, amiben egy makró teszi át az első lapról a jó tételeket a másodikra.

Az autoszűrő sajnos csak bizonyos határig működik.
Nem lesz túl gyors, mert soronként kell ellenőriznie a D oszlop tartalmát.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28338) Fferi50 válasza Delila_1 (#28337) üzenetére


Fferi50
őstag

Szia!

Milyen korlátait tapasztaltad az autodszűrőnek? Mert én még nem találkoztam vele.
Másrészt viszont a speciális szűrés kifejezetten megfelel ennek a célnak is.
Pl. az Eredeti munkalap M1 cellájába Kód, M2 cellájába *J* kerül.
Ezután egyetlen sor:
Sheets("Eredeti").Range("A1:I30").AdvancedFilter Action:=xlFilterCopy, criteriarange:=Sheets("Eredeti").Range("M1:M2"), copytorange:=Sheets("Jó").Range("A1:I1")

átmásolja a kívánt értékeket a Jó munkalapra.

De a Jó munkalapra átváltva - az Adatok - Speciális kiválasztása után megjelenő párbeszéd ablakot a fentieknek megfelelően kitöltve makró nélkül is megy a dolog.

Üdv.

[ Szerkesztve ]

(#28339) tzimash válasza Delila_1 (#28337) üzenetére


tzimash
őstag

Köszi, holnap megnézem. :R

(#28340) Delila_1 válasza Fferi50 (#28338) üzenetére


Delila_1
Topikgazda

Régebbi verziókban az autoszűrő 1000 sorig szűrt, a kérdező 300k-jánál megbukott.

Ezen felül gombnyomásra szeretné elvégezni a szortírozást, az eredeti lapon meg csak a nem jó tételeknek kell megmaradniuk. :)

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#28341) Mittu88


Mittu88
senior tag

Azt meg lehet csinálni, hogy az alábbi gantt diagramon az azonos adatok az Y tengelyen azonos sorban legyenek?

GANTT

(#28342) Raizer001


Raizer001
csendes tag

Sziasztok,

volna egy kérdésem, az excelbe van-e olyan lehetőség, hogy a helyesírás-ellenőrző egy cellát figyelmen kívül hagy. 1 külföldi nevet mindig átírja és ezért kellene azt az egy cellát figyelmen kívül hagyni.

előre is köszönöm

Bálint

[ Szerkesztve ]

(#28343) tzimash válasza Delila_1 (#28337) üzenetére


tzimash
őstag

Kicsit tényleg lassú így, de lehet nem is kell külön szednem a két adatot. Így talán pörgősebb lesz.
Ez a kódodból egy részlet, kicsit változtattam rajta.

For sor = usor To 2 Step -1
If InStr(Cells(sor, "D"), "MD0") > 0 Then
Rows(sor).Delete Shift:=xlUp
End If
Next

Hogyan kellene még megváltoztatnom, hogy csak olyan "MD0"-át tartalmazó sorokat töröljön, amelyeknek "F" oszlopban az értéke "7200", ahol ez az érték más, azt hagyja meg?

(#28344) szatocs1981 válasza tzimash (#28343) üzenetére


szatocs1981
aktív tag

If InStr(Cells(sor, "D"), "MD0") > 0 Then
helyett

If InStr(Cells(sor, "D"), "MD0") > 0 and Cells(sor, "F").Value = 7200 Then

(#28345) tzimash válasza szatocs1981 (#28344) üzenetére


tzimash
őstag

Köszi! :R

(#28346) sedyke


sedyke
tag

Sziasztok!

Akár Pivotban, akár képlettel lehetséges az, hogy mondjuk összegezzük a napi bevételt egy cellában, egy másikban pedig felsorolná az összesített értékhez tartozó értékeket?

Pl.

01/09 termék1 500,00Ft
01/09 termék2 350,00Ft
01/09 termék3 500,00Ft

és az összesítő táblazatomban úgy szerepelne, hogy

01/09 1350,50 Ft termék1, termék2, termék3?
A termékek egy cellában felsorolva...

(#28347) cekkk


cekkk
veterán

Sziasztok!

Van egy ilyen oszlopom:

Miért van az, hogy a A2009 után a A209 következeik?
Mit csinálok rosszul?
A szűrőbe azt állítottam be, hogy Nagyobb mint A2000 és kisebb mint A5000 és megjelenik a listában 49/50 stb érték is.

[ Szerkesztve ]

(#28348) szatocs1981 válasza cekkk (#28347) üzenetére


szatocs1981
aktív tag

szvsz, mert az "A" bezavarja. Mivel van benne egy betü, így már csak alfabetikus sorrendben lehet szürni, numerikus helyett.

2 lehetöséged van, hogy jó legyen:
a) kiveszed az "A" betüt
b) kiegészíted az összes számot pl. 4 jegyüre: A0001,....,A0105, ....,A2111

[ Szerkesztve ]

(#28349) cekkk válasza szatocs1981 (#28348) üzenetére


cekkk
veterán

Akkor érdemes lenne mondjuk az "A" kicserélni egy 9-esre esetleg?
Valamivel meg kellene különböztetnem őket egymástól.

Van valami módszer amivel lelehet vágni az első karaktert és úgy kivenni az A betűt?

Köszönöm a segítséged.

[ Szerkesztve ]

(#28350) szatocs1981 válasza cekkk (#28349) üzenetére


szatocs1981
aktív tag

Ha valamilyen számra cseréled az "A"-t, az is jó.

Van beépített funkció, amivel ezt meg tudod tenni (cserélheted vagy levághatod):

[link]

7.Pont

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)
Copyright © 2000-2024 PROHARDVER Informatikai Kft.