- Poco X6 Pro - ötös alá
- Apple Watch Sport - ez is csak egy okosóra
- Honor Magic5 Pro - kamerák bűvöletében
- Új Beats fej- és fülhallgatók jelentek meg
- Yettel topik
- Samsung Univerzum: Az S23-at is megbabonázta a Galaxy AI
- DIGI Mobil
- Motorola Edge 40 neo - színre és formára
- Android alkalmazások - szoftver kibeszélő topik
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
Hirdetés
-
Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
it Egyre nagyobb probléma az AI hallucinálása – most az osztrák adatvédelmi hatóság veheti elő a ChatGPT miatt az OpenAI-t, alapvetően a GDPR megsértése miatt.
-
Kicsit extrémre sikerült a Hyte belépője a készre szerelt vízhűtések világába
ph A cég megoldása centralizált vezérelhetőséggel, masszív radiátorral és robusztus ventilátorokkal igyekszik vásárlásra csábítani.
-
Saját Redmi Note 13 Pro+ a világbajnok focicsapatnak (és indiai rajongóiknak)
ma Argentína nemzeti válogatottjának mezével díszítik az új Redmi különkiadást.
-
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
-
saab00
csendes tag
Köszönöm, a szumha függvény egész jól működik.....már csak egy problémám van, a függvény tábla kiírja a helyes értéket de ha rányomok a "kész" gombra vagy nyomok egy entert "0" ad eredményül !Ez miért lehet ???????
-
egykettő
aktív tag
Sziasztok!
Adott egy tábla ami több lapból áll. Egy olyan érvényesítésre, makróra, vagy bármire lenne szükségem, ami csak akkor enged beírni egy számot az F oszlop egyik sorába ha az a fájlban található lapok f oszlopába még nem szerepel.
Tehát röviden az kéne, hogy csak egyedi értéket írhassak be a z F oszlop soraiba.
ebben kérném a segítségeteket. -
saab00
csendes tag
Közben rájöttem....tömbképlet...tehát ctrl+shift+enter !!!!
-
cousin333
addikt
válasz zz76zz #14100 üzenetére
Még annyit, hogy a
sorok = ""
sort kiveheted, mert (már) nem csinál semmit.
emonitor megoldása is jó, és egész gyors.
"Már csak annyi gondom van, hogy a scrip futtatása köznem a dátumokat átformázza és katyavaszos lesz."
Ezt kicsit jobban is definiálhatnád. Eleve dátumok vannak benne, vagy ez Excel hiszi azt? Milyen formátumban? Mit jelent pontosan, hogy összekutyulja?
[ Szerkesztve ]
"We spared no expense"
-
hallgat
csendes tag
válasz cousin333 #14099 üzenetére
Szia!
Nagyon köszönöm!
Az ötlet tetszik, és tényleg lényegesen gyorsabb, mint ha egyenként vizsgálnám és a munkalapon törölném is a sorokat.Közben egy másik megoldásra kényszerültem (időhiány miatt), ami kissé "barbár", de működik és szintén villám gyors.
Persze ehhez az kell, hogy a célnak az így kapott eredmény is megfeleljen.
Viszont a makród szimpatikusabb, ezért le is cseréltem az én megoldásomat gyorsan.Leírom, hátha valaki hasznát veszi:
A tömbből kimutatást készítettem egy másik munkalapra, ahol minden oszlopot behúztam a sorok értékéhez, egy tetszőleges oszlopot pedig betettem az adattartomány értékhez, "darab" művelettel. Közben minden oszlop behelyezése után a kimutatáson belüli összegző sorokat rejtetté tettem, beleértve a végösszeget is. (lehet eset, ahol nem árt, ha előtte a forrás táblát sorba rendezi az ember a vizsgálni kívánt oszlop szerint, itt nem kellett)
A kimutatás ugyan eredményez utolsó sorként "ÜRES" jelölésű értéket is a végére, de ezt a fejlécben a szűrőben kivettem, így minden adatom csak egyszer jelenik meg, mellette a többi oszlop adatával. Ezt a tömböt tovább tudtam vinni makróval a kívánt helyre. Annyival lett "hosszabb" az eredeti makró, hogy frissítenem kell a kimutatást is egy sorban, valamint innen kell elvinnem az adatokat, nem az eredeti táblából. És persze született még egy munkalapom, kvázi feleslegesen.A kódot még egyszer köszönöm, megint tanultam valamit!!!
Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
hallgat
csendes tag
válasz cousin333 #14098 üzenetére
Előbb találtam meg a kódot tartalmazó segítséget, mint ezt a bejegyzést, pedig nincsenek messze egymástól
Igen, az eredeti megoldás úgy nézett ki, hogy keresd meg az utolsó sort. Utolsó sor felett vizsgáld meg, hogy mi van, ha egyezik utolsó sorban lévő értékkel töröld, ha nem, lépj egyel feljebb.
Ez volt a drámaian lassú.
Cca. 4000 sort törölt percenként. Sajna ebben a táblában rendszeres, hogy 40.000 feletti a sorok száma. (minden adat 19x szerepel benne)Viszont a kód, ami egyel lejjebb született, tökéletes
Köszönet![ Szerkesztve ]
Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
hallgat
csendes tag
válasz #90999040 #14096 üzenetére
Szia!
Nagyon köszönöm!
Ez nagyban hasonlít az enyémre, (az egyetlen működőre, a sok próbálkozásom közül ) de a táblán belül végzett egyenkénti vizsgálat és egyenkénti törlés nem a legjobb megoldás, mert rengeteg (tényleg rendszeresen 40.000 sor feletti) adatot kell végigmásznia.
Ennek ellenére tanultam ebből is, így nagyon köszönöm!!!
Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
hallgat
csendes tag
válasz saab00 #14103 üzenetére
Mivel nem válaszként írtad, hanem új hozzászólásként, így csak feltételezem, hogy a rendszámos, kilóméteres problémát sikerült megoldanodA másik kérdésedet is összehoztad? A találat alatti sor értéket?
Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
cousin333
addikt
válasz hallgat #14107 üzenetére
Tulajdonképpen a kódja nem egyenként töröl, legalábbis nem soronként, hanem kihasználja azt az adottságot, hogy az ismétlődések egymás után szerepelnek. Megkeresi a teljes ismétlődő blokkot és egy lépéssel törli. A sebesség tehát inkább a blokkok számától függ, mintsem a benne lévő ismétlődő sorok számától.
[ Szerkesztve ]
"We spared no expense"
-
cousin333
addikt
válasz hallgat #14105 üzenetére
Igen, a kódomat írva nekem is az volt a legfőbb gondom, hogy hogyan lehetne gyorsan törölni, Szerencsére rátaláltam arra az utasításra, ami képes kijelölni az üres cellákat. Innen már csak üressé kellett tennem a megcélzott elemeket, az meg ment gyorsan.
De egyébként a fenti problémára van jobb megoldás is, nem tudom, a 2003-ban megy-e:
- jelöld ki a teljes táblázatot: Ctrl + Shift + Space (ez is jó trükk amúgy)
- Adatok fül, Adateszközök, Ismétlődések eltávolítása
- kiválasztod az oszlopo(ka)t, amik alapján az ismétlődést megállapítodennyi...
[ Szerkesztve ]
"We spared no expense"
-
hallgat
csendes tag
válasz cousin333 #14109 üzenetére
Igen. Ezt azóta felfedeztem, de sajnos még így is csak cca 2,5x-es a tempó.
Azt nem értem, hogy miért, de kipróbáltam és ennyi.
A soronkénti vizsgálattal mint írtam 4000 sor körül törölt percenként. Ha minden számom 19x ismétlődik, akkor ugye ez 40.000 sornál kb. 2100 tömb, amit az előzőhöz viszonyítva meg kellene csinálnia fél perc alatt. De 1 percnél leállítottam és kb. 10000 sorral volt kevesebbem, mint előtte.
Arra azonban mindenképp jó, hogy látom hogyan kell ismétlődő blokkot keresni, tehát tanulságos.
Megint köszi!Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
hallgat
csendes tag
válasz cousin333 #14110 üzenetére
Igen, ez az egyik igen hasznos újítás 2003 óta Excelben.
Gondolom sokaknak és sokszor okozott gondot, ezért tették megoldottá menüből.
Ezt 2003 még nem tudja.A tábla különböző módon történő jelölgetése megy, köszi ha lehet kerülöm az egeret, sok időt lehet spórolni a billentyűparancsok ismeretével, ezt én is csak javasolni tudom mindenknek, még ha VBA-hoz láma is az ember...
[ Szerkesztve ]
Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
#90999040
törölt tag
válasz hallgat #14111 üzenetére
Azért annyi, mert a cellából/ba olvasás/írás nagyon lassú művelet.
Ha viszont a memóriába olvasod be "tömbként", azon sokkal gyorsabb maga a művelet sebessége, viszont így a memóriahasználat sokkal nagyobb. De hát ugye valamit valamiért.
Még lehetne úgy is, hogy a táblázathoz egy plusz oszlopot átmenetileg hozzáadni, ebben megjelölni a megmaradó cellákat, majd sorba rendezni. Ezután megkeresni ebben az új oszlopban az első nem üres cellát, majd a táblázat sorainak a celláit innentől kezdve törölni. Majd a végén az új oszlop celláit is törölni:
Application.ScreenUpdating = False
Set elsoadat = Range("A2")
Set rng = elsoadat.CurrentRegion
If rng.Row < elsoadat.Row Then Set rng = rng.Offset(1, 0).Resize(rng.Rows.Count - 1, rng.Columns.Count)
n = Cells(Rows.Count, rng.Column).End(xlUp).Row
tomb = Application.Transpose(Range(Cells(rng.Row, rng.Column), Cells(n, rng.Column)).Value)
ReDim tomb1(1 To UBound(tomb))
n = UBound(tomb)
tomb1(n) = 1
For i = n - 1 To 1 Step -1
If tomb(i) <> tomb(n) Then
tomb1(i) = 1
n = i
End If
Next
n = UBound(tomb)
Range(Cells(rng.Row, rng(rng.Count).Column + 1), Cells(rng(rng.Count).Row, rng(rng.Count).Column + 1)).Value = Application.Transpose(tomb1)
Range(Cells(rng.Row, rng.Column), Cells(rng.Row + n - 1, rng(rng.Count).Column + 1)).Sort Key1:=Cells(rng.Row, rng(rng.Count).Column + 1), Order1:=xlDescending, Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
m = Cells(Rows.Count, rng(rng.Count).Column + 1).End(xlUp).Row
Range(Cells(m + 1, rng.Column), Cells(rng.Row + n - 1, rng(rng.Count).Column + 1)).Delete
Range(Cells(rng.Row, rng(rng.Count).Column + 1), Cells(m, rng(rng.Count).Column + 1)).Delete
Set rng = ActiveSheet.UsedRange
Application.ScreenUpdating = TrueItt a elsoadat-ban kell megadni az első olyan adatot tartalmazó cellát, amelytől lefelé az ismétlődéseket figyelni kell. Előnye, hogy csak egy oszlopot ír(bár 2-t olvas be, valamint autómatikusan érzékeli a fejlécet is, ha a elsoadat jól van megadva, tehát a táblázat igazából bárhol lehet, nem csak az A2-ben.
-
kolja
tag
Üdv a Hozzáértőknek!
Bizonyára halál egyszerű a dolog de én mégsem találok rá megoldást.
Egy adott oszlop pl.: (F2;F28) celláiban található alulról legelső értékét kellene egy másik cellába beolvasni. Nem feltétlenül folytonos kitöltés mellett!
Előre is köszi[ Szerkesztve ]
Nem élteni sok fulcsaság ...
-
psg5
veterán
Üdv!
Lehet-e megvalósítani, hogy több cellában szereplő tartalmat egy cellába másolni?
Ne kelljen külön másolgatni beillesztgetni, ha lehet. Ha nem hát nemF.K.T.
-
kisspepe
tag
Sziasztok!
A 2007-es Excel DARABHATÖBB függvényét mivel tudom helyettesíteni 2003-as Excelben?
-
félisten
válasz kisspepe #14116 üzenetére
Pl SZORZATÖSSZEG fügvénnyel
Alapképlet DARABHATÖBB függvénnyel
=DARABHATÖBB(A1:A10;"d";B1:B10;3)
Megfelelője SZORZATÖSSZEG függvénnyel
=SZORZATÖSSZEG(1*(A1:A10="d");1*(B1:B10=3))
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
psg5
veterán
válasz bugizozi #14117 üzenetére
Alakul, de ez nem hagy szóközt, hanem mindent egybefűz és utána nem lehet javítani.
Bele javíthatok egy képlet által összefűzött szövegbe vagy akkor elveszik a képlet?Város, utca cím, kell összefűzni. Van 50 sor ezekben két oszlopban a város és a cím , a város cím menne egy cellába bele külön mindegyiknél.
F.K.T.
-
félisten
=A1 & " " & B1 & " " & C1 & " " & D1 & " " & E1
A kívánt cellába beírod ezt a képletet(saját igényeid szerint módosítva) és egérrel lemásolod, ameddig szükséges.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
psg5
veterán
-
psg5
veterán
Még egy kérdésem lenne:
Legördülő lista szépen megjelent idáig egy cellánál, de valamiért egy módosítás után üres a legördülő lista, de ha jobb egérrel kattintok és kiválasztom a legördülő választéklistát akkor már ott van, hogy lehetne visszahozni, hogy a nyílra is előhozza ahogy volt, ne csak a jobb egérre?
Köszönöm az előzőeket is, nagy segítség volt!
F.K.T.
-
félisten
-
psg5
veterán
válasz Fire/SOUL/CD #14123 üzenetére
Hát nem olyan egyszerű (legalábbis számomra) mert van 110 sor ezekben 30 oszlop és egy oszlop minden sorában van a legördülő lista. Nem én hoztam létre. Tudom egyszerre törölni az összes legördülőt és létrehozni helyettük egyszerre legördülőt?
F.K.T.
-
félisten
Ki lehet jelölni több cellát is és azokról eltávolítani az érvényesítést, ugyanígy több cellához is lehet azonos érvényesítést is hozzáadni, csak itt kérdéses, hogy a legördülők mindegyike ugyanazt a tartományt használja-e...
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
psg5
veterán
válasz Fire/SOUL/CD #14125 üzenetére
Igen ugyanazt használja. Azt hogyan tudom megnézni, hogy ez a használt tartomány hol van? (Sok lapfül van) Lehet az a baj hogy nem jól hivatkozik rá.
F.K.T.
-
félisten
Ráállsz a cellára, ami legördülőként üzemel és újra az érvényesítést választod és ott lesz a tartomány.
Ilyen esetekben érdemesebb lehet a tartománynak nevet adni és az érvényesítésnél tartománynevet megadni a tartománynak. Ennek az az előnye, hogy a tartományneveket nyilvántartja az Excel, ki lehet listázni és módosítani is lehet rajta, ezáltal minden objektum, ami az adott tartománynevet használja tartományként, annak automatikusan megváltozik a tartománya. (De sok tartomány van ebben a mondatban)
Gyakorlatban, miről is írtam:
1. Tartomány elnevezése
2. Érvényesítés->tartomány a tartománynév
3. Névkezelő (képletek fül/Definiált nevek csoport/Névkezelő)
4. Az 1. pontban létrehozott tartománynév tartományának módosításaMindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
psg5
veterán
válasz Fire/SOUL/CD #14127 üzenetére
Nagyon köszi! Megvan, valamiért a hivatkozott cellálból kivették az értékeket. Beírtam és megy minden. Köszi!
Amúgy az eredetiben ezek az értékek el voltak rejtve, csak ha rááltam a cellára, akkor írta ki fennt, hogy van bele írva valami. Hogy lehet rejteni?Megvan. Fehérrel írták be...
[ Szerkesztve ]
F.K.T.
-
hallgat
csendes tag
válasz #90999040 #14113 üzenetére
Oops!
No ez az a kód, amit már csak részletekben értek, vagy legalábbis azt hiszemEzt félig makróval, félig függvénnyel kipróbáltam úgy, hogy valóban betettem egy plusz oszlopot, állandóra.
Sima HA függvénnyel adtam értéket a celláknak, attól függően, hogy az előtte lévő sorban találhatóval egyezik, avagy nem "A" oszlop értéke. 1 vagy semmi.
Aztán a sorba rendezést már a makró csinálta, majd meghatároztam az utolsó sort az új cella alapján, amiben még adat van és onnan lefelé törlés mindent.Ez már jónak mutatkozott (igaz a függvény kicsit megnövelte a fájl méretet és a cellák újraszámolása is tovább tartott), de messze nem ennyire kifinomult, mint a makród.
Hálám a sírig..., hogy ennyit törődtök a nyavalyámmal!
Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
hallgat
csendes tag
válasz zz76zz #14130 üzenetére
Szia!
Ezt biztos nekem szántad?Ha engem kérdezel, állítsd át a cél cellák formátumát dátumra, akkor dátumként fogja megjeleníteni is.
Ha VBA-val másolsz, akkor már a kódban add meg a cella formátumát, mondjuk így:
Range("kezdő cella:Uccsó cella").NumberFormat = "m/d/yyyy"Ha csak sima másolással, akkor előre a cella formátumot, beilleszteni pedig csak az értéket szúrd be irányított beillesztéssel.
Ha szöveg kell, akkor szövegre állítsd, de akkor a képlettől ne várj eredményt.
Office 2010 Attól, hogy a verebek alakzatba állnak, az még nem SAS!
-
Sziszmisz
csendes tag
Sziasztok,
Árkód párosításban kérném a segítségeteket. W oszlopba szeretném megjeleníteni V oszlophoz árkódjaihoz tartozó Ft értéket. Azaz azt szeretném elérni hogy Voszlop árkódját keresse ki AA-oszlopból és a hozzá tartozó Ft-ot adja vissza AC oszlopból.
Előre is nagyon köszönöm -Sziszmisz
[ Szerkesztve ]
-
félisten
válasz Sziszmisz #14133 üzenetére
W1 cella képlete
=FKERES(V1;AA:AC;3)
Ezt követően W1 cellát egérrel lemásolod ameddig szükséges.
(természetesen a W oszlopot is Pénznemre kell formázni, AC oszlopban használt formátumra)[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
Sziszmisz
csendes tag
válasz Fire/SOUL/CD #14134 üzenetére
woww, köszi szépen, mostmár tudom miért nem ment ez nekem....
-
varsam
őstag
üdv
Probléma:
Adott három cella számértékekkel, és a három közül a legalacsonyabbat (minimumot) szeretném valamilyen színű háttérre állítani. Hogy tudom megcsinálni, hogy a többi cella ne változzon, csak a minimum értékes háttere?
köszi -
félisten
válasz varsam #14136 üzenetére
Feltételes formázással tudod megvalósítani.
Az itt linkelt képen egy olyan szabályt láthatsz, amely az A oszlopban jelöli meg piros háttérrel a legkisebb értéket. [link]
Ez alapján a saját igényednek megfelelően tudod módosítani.Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
varsam
őstag
válasz Fire/SOUL/CD #14137 üzenetére
Köszi, de valahogy nem akar összejönni
Képletnek beírtam ezt: =MIN(F4:H4) =F4, érvényességnek pedig =$F$4:$H$4, beállítottam egy formázást de nem csinálja.
Mi lehet a gond?
Az a baj, hogy nem értem mi az a két egyenlőség jel a képletben[ Szerkesztve ]
-
félisten
-
bozsozso
őstag
Sziasztok,
Excelben készítem a jelenléti ívemet a munkahelyemen. A túlórát külön sorban jelölöm meg T betűvel. A munka kezdet illetve befejezés 2-2 cellában található külön cellában az óra és a perc egy cellában pedig a ledolgozott munkaóra egy másikban pedig a túlóra. Adott egy másik munkalapon a túlórához szükséges lap aminél viszont a kezdete, vége 1-1 cellában található idő formában(pl.:10:30)
Azt szeretném ha a túlóra amit a sor végén "T" betűvel megjelölök a jelenlétin az óra percek összefűzésével átkerüljön a másik munkalap megfelelő celláiba. Mivel nem minden nap van túlóra ezt a "másolást" meg tudom oldani valami függvénnyel, hogy automatikusan átkerüljenek a másik munkalapra ezen adatok vagy csak valami makróval oldható meg?
Ja és még valahogy a jelenléti első oszlopában található napot az adott hónaphoz tartozó dátumként kellene átteni.
Adott munkalapon a sor végén meg tudom jeleníteni a számomra szükséges formában, de nem tudom, hogy ezeket hogyan tudnám sorban megjeleníteni a másik munkalapon. Ezek nem biztos, hogy egymást követő napok.
Remélem érthetően tudtam leírni
-
félisten
válasz bozsozso #14140 üzenetére
Ezt jó lenne, ha pár képpel illusztrálnád, mert az nagy segítség lenne. Nem kell minden adatról kép, csak az egyik munkalap pár soráról, a másik munkalap pár soráról és hogy milyen legyen (megfelelő cellába manuálisan beírod, hogy hogyan kellene kinézni a dolognak)
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
bozsozso
őstag
válasz Fire/SOUL/CD #14141 üzenetére
Egy kis magyarázat hozzá:
Felső táblázat a jelenléti. Alsó pedig ahová kellenek az adatok
A felső táblázatban található C-D illetve E-F cellák kellenek idő formátumban az alsó táblázat E illetve F oszlopába. Igaz T betűt írtam előbb, mert nem akartam bonyolítani a helyzetet, de a végén minden esetbe egy szám szerepel ami szintén látható, hogy hová kerül át. A felsőben az A oszlopban találhatók a napok amiből konkrét dátumot kellene varázsolni az alsó táblázat A oszlopába.
Fú ez kicsit körülményes leírás lett. Lényeg, hogy a felső táblázatban szereplő "jelölt" soroknak a másik munkalap(alsó táblázat) -ra kellene átkerülni abban a formában.
Lehetséges ez egyáltalán makró nélkül?
-
félisten
válasz bozsozso #14142 üzenetére
Ez azért nagy segítség, mert szvsz a korábbi leírásod alapján ilyen felépítésű munkalapra nem gondoltam volna.
Ennek kivitelezéséhez alapvetően nem kellene makró, csak akkor ha a jelenléti munkalapban fontosak az üres sorok és az alsó munkalapban meg ne szerepeljenek.
Ha a jelenléti munkalapból mellőzhetőek az üres sorok vagy az alsó munkalapba meg bekerülhetnek az üres sorok, akkor nincs szükség makróra.
Akárhogy is, egy infóra viszont mindenképp szükség van, nevezetesen hogy melyik év, melyik hónapjáról van épp szó. (mert ezt nem látom a képen, csak azt, hogy a jelenléti munkalap A oszlopa funkcionál a napok jelzésére)
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
bozsozso
őstag
válasz Fire/SOUL/CD #14144 üzenetére
A jelenléti munkalapok azok nem üresek csak jelen esetben nem töltöttem ki. Azokon a napokon is dolgozom szerencsére. A másik munkalapon kizárólag ezek a "jelölt sorok" kellenének a másik munkalapra ezért nehézkes számomra.
Tehát felsőben sorok nem mellőzhetők, alsóba "felesleges" sorok nem kerülhetnek bele. Azért fontosak ezek mivel nyomtatásra kerülnek és fontos, hogy szerepeljenek rajta ezen adatok is.
És tényleg hiányzik az év és a hónap. Az pedig úgy van az A2 cellában, hogy a megjelenítése évre és hónapra van korlátozva. Tehát oda beütöm, hogy 2012-06 akkor megjeleníti, hogy 2012.június, de így is a cell tartalma 2012-06-01
-
félisten
válasz bozsozso #14145 üzenetére
Remélhetőleg jól értettem és meg is felel (makró nélkül). Maradva a korábbi képednél, az alapján vannak a képletekben a hivatkozások. Ha nem jó cellára lenne a hivatkozás, akkor majd módosítod, ahogy megfelel.
Összesítő munkalap A9 képlete
=SZÖVEG(Jelenléti!$A$2;"éééé-hh-")&CSERE(Jelenléti!A24;HOSSZ(Jelenléti!A24);1;"")Összesítő munkalap E9 képlete
=SZÖVEG(Jelenléti!C24;"?0") &":" & SZÖVEG(Jelenléti!D24;"00")Összesítő munkalap F9 képlete
=SZÖVEG(Jelenléti!E24;"?0") &":" & SZÖVEG(Jelenléti!F24;"00")Összesítő munkalap G9 képlete
=Jelenléti!L24Az összes képlet másolható egérrel, ameddig szükséges
Nem tudom, hogy egyre gondoltunk-e, majd megnézed és írsz, ha valami nem kóser.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
bozsozso
őstag
válasz Fire/SOUL/CD #14146 üzenetére
Ez így azért nem jó mert nem függ attól, hogy az N oszlop a jelenlétiben ki van-e töltve így az összes sort átviszi az összesítőre. Nekem viszont csak azokra lenne szükség az összesítőn amik N oszlopban egy számmal meg vannak jelölve. Ez minden hónapban más napokra esik.
Pl.: egyik hónapban a 6-7, 15-16 másik hónapban meg már az 1-2, 7-8, 21-22 napokat kellene átrakni az összesítőre. Ezért tenném az N oszlopba a jelölést, hogy valamiből lehessen tudni, hogy ezeket kell átrakni (a beírt számnak nincs jelentősége és nem is sorban van) -
félisten
válasz bozsozso #14147 üzenetére
Public Sub FSCD_Summary_Bozsozso()
Dim MyCurDate As Range
Dim MySrcStartCell As Range, MyDestStarCell As Range
Dim MySrcWS As Worksheet, MyDestWS As Worksheet
Dim MyFXs As WorksheetFunction
Set MyFXs = Application.WorksheetFunction
'MUNKALAP neve, amely a jelenléti ívet tartalmazza
Set MySrcWS = Worksheets("Jelenléti")
'MUNKALAP neve, amelyen az összesítés található
Set MyDestWS = Worksheets("Összesítő")
'A jelenléti munkalapon találhat IDŐCELLA címe
Set MyCurDate = MySrcWS.Range("$A$2")
'Jelenléti munkalapon ettől a cellától kezdődnek az adatok
Set MySrcStartCell = MySrcWS.Range("A9")
'Összesítő munkalapon ettől a cellától kell bemásolni az adatokat
Set MyDestStarCell = MyDestWS.Range("A1")
j = 0
For i = 0 To Day(MyFXs.EoMonth(MyCurDate, 0)) - 1
If Not IsEmpty(MySrcStartCell.Offset(i, 13)) Then
MyDestStarCell.Offset(j, 0).NumberFormat = "yyyy-mm-dd"
MyDestStarCell.Offset(j, 0) = Format(MyCurDate, "yyyy-mm-") & Format(i + 1, "00")
MyDestStarCell.Offset(j, 1) = MySrcStartCell.Offset(i, 13)
MyDestStarCell.Offset(j, 4).NumberFormat = "[h]:mm"
MyDestStarCell.Offset(j, 4) = Format(MySrcStartCell.Offset(i, 2), "0:") & Format(MySrcStartCell.Offset(i, 3), "00")
MyDestStarCell.Offset(j, 5).NumberFormat = "[h]:mm"
MyDestStarCell.Offset(j, 5) = Format(MySrcStartCell.Offset(i, 4), "0:") & Format(MySrcStartCell.Offset(i, 5), "00")
MyDestStarCell.Offset(j, 6) = MySrcStartCell.Offset(i, 11)
j = j + 1
End If
Next i
End SubAz összesítő munkalap tartalmát nem törli a makró, mert a korábbi kép alapján nem tudhattam, hogy az összesítő munkalapon vannak-e még más adatok is, ezért a makró futtatása előtt manuálisan töröld az összesítő munkalapon lévő adatokat.
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
bozsozso
őstag
válasz Fire/SOUL/CD #14148 üzenetére
Nagyon szépen köszönöm pont ezt szerettem volna csinálni.
-
Metathrone
csendes tag
Sziasztok!
Szükségem lenne egy olyan fkeres függvényre, aminek a 3. argumentuma (oszlopszám) attól függjön, hogy két adott cellából melyikben van érték.
Tehát pl.: Adott "A" oszlop nevek, "B" munka kezdés, "C" munka vége, ezután "E" újra név, "F" munka kezdés1, "G" munka vége1, "H" munka kezdés2, "I" munka vége2. Oszlop nevek nem ezek, de magyarázatnak most jó. Szóval a fkeres függvénynek el kellene döntenie, hogy a "B" oszlopba az "F" vagy "H" oszlop megfelelő adatát írja, aszerint, hogy melyik nem üres.Fkeres függvényen kívül más megoldás is érdekel, biztos van
Előre is köszönöm a segítséget.