-
Fototrend
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
-
gyga
senior tag
sziasztok 1 kis segítséget ha kérhetnék.
adott 1 munkafüzet amin belül van 10 lap mindnek más a neve.
ezeken a lapokon kellene a h oszlopokban levő összes olyan adatot összeadni ami mellet a J oszlopban "PF" jelölés van. egy új lapra a szumha függvénnyel próbálkozok több kevesebb sikerrel de mindig hibára fut kivéve ha a lapokra 1esével küldöm a szumha függvényt de így meg igen hosszú lesz a függvény és nem fér ki. nincs valami rövidebb verzió?[ Szerkesztve ]
A kisebbség is számíít, teszkó.
-
Delila_1
Topikgazda
Megcsinálod a 10 lapon egyesével, de mindegyik lapon azonos cellába.
Itt példaként legyen ez a V100.
Az összesítő lapra ezt írd (tetszésed szerinti cellába):=SZUM('Első_lap:Utolsó_lap'!V100)
Természetesen az Első_lap és az Utolsó_lap helyett a saját első, és utolsó lapod nevét írd.
[ 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.
-
Delila_1
Topikgazda
A laponkénti képlet:
=SZUMHA(J:J;"PF";H:H)
Ezt egyszerre is beviheted a 10 lapodra. Kijelölöd a lapokat (elsőn állsz, Shiftet nyomva az utolsó lapfülre kattintasz), és a megfelelő helyre beírod a függvényt. Így gyorsabb, mint egyenként, és biztosan azonos cellában lesz minden lapon. Ezután az összesítő lapra beírod a SZUM függvényt, ahogy az előző hozzászólásomban írtam.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
toth_janika
őstag
Hello!
Help me pls!
Adott 4 táblázat, amikben szerepelnek oszlopokban személyek nevei. A táblázatokban programok jogosultságai szerepelnek.
Szükségem lenne egy ötödik táblázatra, amiben szerepel az össze személy neve, és hogy melyik programhoz vagy programokhoz vannak jogosultságai.
Magyarul ki szeretném zárni azokat az embereket, akiknek egynél több jogosultsága van, viszont a főnökeimnek el kell küldeni azt a táblát is, amiben szerepelnek ömlesztve a dolgozók, és hogy kinek milyen jogosultsága van!
Nem tudom mennyire voltam értehető!
Köszönöm előre is!Flickr - http://www.flickr.com/photos/toth_janos/
-
Delila_1
Topikgazda
válasz toth_janika #5756 üzenetére
A nevek mellett szerepeljen valamilyen azonosító, ami a lapon szereplő emberek által hozzáférhető programot képviseli. Ez a két oszlop elég is a kimutatáshoz.
Készíts kimutatást több tartományból [Adatok/Kimutatás vagy kimutatásdiagram/Több tartomány (összesítés)].Az elrendezés ilyen legyen:
A Végösszeg oszlop mutatja majd, kinek hány hozzáférés adatott meg.
[ 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.
-
gsc73
aktív tag
Sziasztok!
A gondom eléggé összetett, amire megoldást keresek:
Az egyik partnerünk átalakította az informatikai rendszerét, és az adatbázist, amit korábban *.xls formátumban küldött, mostantól *.csv-ben küldi (e-mailen). Ezzel még nem lenne baj, csak mivel ott sokan dolgoznak különböző tudásszinttel, így nem egyformák a fájlok, (ahogy esik, úgy puffan.. pontosabban az elválasztó karakterek különbözőek. Arra már rájöttem, hogy a Vezérlőpult/Területi beállítások/Testreszabás menüpont alatt kell átállítani a „Listaelválasztó”-t , méghozzá úgy, hogy nem lehet egyforma a tizedesjellel (!!!!!) hogy a *.csv-t tagoltan nyissa meg az Excel. DE egyrészt nálunk nem érhető el a vezérlőpult (szigorú rendszergazdai beállítások), másrészt itt is különböző tudásszintű emberek dolgoznak, akik – érthető módon – csak annyit szeretnének, hogy kattintnak az email mellékletre, ami normálisan nyílik meg, majd egy másik kattintás, ami indítja a makrót, ami elrendezi az adatokat.
A rendező makrót én írtam, csak azzal nem tudok mit kezdeni, ha nem tagoltan nyitja meg az Excel az adatállományt. Ennek a makrónak ez elejére kellene írni valamit, ami megvizsgálja, hogy tagolt-e, ha nem akkor tagolja. Hogyan lehetne ezt megcsinálni?
Üdv: g.
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
félisten
HAli!
Magam részéről nem foglalkoznék semmilyen makróval, mert szükségtelen, másrészt meg a Vezérlőpultnak ehhez semmi köze. Amikor Excel-lel megnyitsz egy CSV fájlt, akkor automatikusan végigvezet a tagolás menetén, kiválasztható egyszerűen, hogy mi a tagoló karakter(vagy meg is adható egyedi ha szükséges).
Ha valaki ezt nem tudja elsajátítani(nem tudod elmagyarázni neki), akkor add a kezébe a munkakönyvét, mert ezt általánosban tanítják.
Fire.
UI: makróhoz csak akkor nyúlj, ha nincs más megoldás, ugyanis egy csomó biztonsági problémát vet fel, hisz akkor azt is be kell állítanod, hogy kérdés nélkül lefusson a makró, ezáltal nem lesz vizsgálva a tevékenysége és még jó pár negatív dolog, amit nem részleteznék...
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)
-
gsc73
aktív tag
válasz Fire/SOUL/CD #5759 üzenetére
Hali!
Több kérdés nem olyan egyszerű, nézzük sorban:
1: makró így is úgy is van, mert az adathalmazt át kell rendezni, kinyomtatni stb… ez nem kérdéses. Ez a „rendezés” makró nem automatikusan indul, hanem kitettem egy gombot, amihez hozzárendeltem a Personal.xlsx-ben található makrót, így könnyen elérhető.
2: munkakönyv: egyrészt a gondolatod nem egyezik a cég filozófiájával (szerencsére), másrészt sokan vannak itt 50 felett, akik ezt a munkát még papíron kezdték, és nem is olyan túl régóta van számítógép, harmadrészt nekem is az a filozófiám hogy a számítógép van az emberért nem pedig fordítva. Amit csak lehet a legegyszerűbben kell megoldani, egyetlen gombnyomással. Ez a normális. (külnben ez nekem csak hobbim, a saját és munkatársaim munkáját könnytem meg vele. Nem vagyok rendszergazda)
3: A CSV fájlt megnyitása során NEM indul el automatikusan a varázsló! (vagy ez beállítható?) Az csak akkor működik, ha átnevezed TXT-nek. Ez nem megoldás! Elmenteni, átnevezni, megnyitni HDD-ről, végigcsinálni az importálás varázslót, majd elindítani a rendezés makrót. Na nem! Ebben ez esetben az ember lenne a számítógépért, nem pedig fordítva!
4: „A Vezérlőpultnak ehhez semmi köze.” Dehogy is nincs! Mindent kipróbáltam, tapasztaltam, tehát nagyon is sok köze van! Idézet az Excel súgójából: „ A .csv fájlok megnyitásakor az Excel az aktuális alapértelmezés szerinti adatformázási beállítások figyelembe vételével importálja minden egyes oszlop adatait.”
A kérdés: MI az az AKTUÁLIS ALAPÉRTELMEZÉS SZERINTI ADATFORMÁZÁSI BEÁLLÍTÁS. Ezt keresgéltem pár órát a neten, de egy utalásból kitaláltam:Ez az:
Nagyon köszönöm a válaszodat, de sajnos engem nem visz előre.
Üdv: g.
[ Szerkesztve ]
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
Delila_1
Topikgazda
válasz toth_janika #5760 üzenetére
Adatok/Kimutatás vagy kimutatásdiagram/Több tartomány (összesítés).
Valószínű, hogy nem a Több tartomány-t választottad a varázsló első lapján. Tégy úgy, és sikerrel jársz.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
Hali!
1. Az, hogy megpróbálod a munkatársak számára a legegyszerűbben kezelhetővé tenni, az dicséretes.
2. Nem tettem korra kitételt a válaszomban, egyszerűen aki képtelen minimális energiát befektetni, hogy fejlődjön, vagy 5szöri elmagyarázás után sem képes egy primitív feladatot elvégezni, annak semmi keresnivalója Excel előtt, függetlenül hány éves...
Ember nélkül nincs számítógép, jó szakember nélkül meg több bosszúságot okoz, mint örömöt..Szép a hobbid, de gondolom neked is lenne mással eltölteni az időd, mint megírni egy összetett makrót.3. Nos, mivel írtad, hogy CSV-be kapod alapból, ezért nem igazán értem, mit kellene átnevezni...Ezenkívül az sem világos, hogy miért nem nyílik mag a tagolás automatikusan, hisz pont az a gond, hogy a területi beállítások nem egyeznek meg, a CSV-ben található tagoló karakterekkel(többek közt)...
Valóban félreérthető voltam, hogy "megnyitni", arra értettem, amit írtál, azaz adatok importálása, ott meg KELL hogy nyíljon. Véleményem szerint, ez még mindig egyszerűbb, mint egy összetett makró, amiben fájlkezelésről/feldolgozásról formátumok kinyeréséről, stb stb kell gondoskodni, mindezeket persze hibakezeléssel felügyelve...4. Igen, az alap adatformázás az a területi beállítások leánykori neve...
Nem azt írtam, hogy a területi beállításoknak nincs köze a számformátumokhoz, hanem arra gondoltam, hogy a CSV-nek bármi köze lenne hozzá. Ha nem módosíthatod(jogok) miatt a területi beállítást, akkor azt makróval sem fogod egyszerűen megoldani.
A CSV NEM TÁROL FORMÁTUMOT! pl ezer forint, az így lehet letárolva a CSV-ben
1000
1,000
1,000 Ft
1 000
1 000 Ft
Az első változat kivételével az összes többi SZÖVEG, ergo át kell majd alakítanod számmá, ha számolni is szeretnél még vele a későbbiekben, DE simán nem fogod tudni átalakítani, mert a területi beállítások egyből formázzák is számként avagy pénznemként, DE ÚGY ahogy a területi beállításokban szerepel. Ezt a makróval csak úgy kerülheted ki, hogy EGYÉNI cellaformázást alkalmazol pl
#,###,### Ft (ezt csak hasra ütésre írtam, semmi értelme amúgy)
Tehát még egy dolog, amiről a makrónak gondoskodnia kell, arról már nem is beszélve, hogy az email-ből is automatikusan kiszedi a csatolmányt a megadott címről stb stb.
Ezért tartanám egyszerűbb megoldásnak, ha mindezt az alkalmazottaknak is megtanítanád(tudom, tovább tart mint egy gombra kattintás), de legalább fejlődnének és később már ilyen dolgokkal nem kellene foglalkozni.Kézenfekvő megoldás lenne elsőre, hogy a rendszergazdának szólni, hogy hát állítsa be "normálisan" a területi beállításokat, csak Én meg tudom, hogy az nem véletlen, nagyon valószínű, hogy valamilyen adatbázis kezelő, vagy "sima" adatbázis miatt van így belőve, ezért ha átállítaná "Excel kompatibilisre", akkor meg ott lenne gond...
5. A makró természetesen megírható, ez nem is kérdés, de nagy odafigyelést és kellő alapot igényel, nem egy ilyen 10 soros cuccról van/lesz szó, univerzálisnak és megfelelő hibakezeléssel ellátottnak kell lennie.
(pl fel kell ismerni a tagoló karaktert, majd a számformátumot (1000 vagy 1,000 stb), hány számjegy, az szám vagy pénznem stb stb)Természetesen a Te döntésed lesz mit választasz, ha a makrót, akkor sok sikert!
(ha meg a tanítást, akkor sok türelmet a "nebulókhoz)Fire.
UI: Delila_1 biztosan segíteni fog, hacsak nem már estére berakja Neked a komplett makrót(ahogy ismerem)
[ 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)
-
Delila_1
Topikgazda
válasz Fire/SOUL/CD #5763 üzenetére
Delila nem teszi be a makrót. Már csak azért sem, mert ismeretlen előttem a csv, az elválsztók, az adatok.
gsc73-nak kell rögzítenie, ahogy ő teszi kompatibilissé a csv-t az Excellel.
Ehhez előbb be kell gyakorolni, 1-2 sikeres konvertálás után pedig jöhet a rögzítés.A 2. pontban többnyire gsc73-mal értek egyet, ki ne rúgjuk már a más területen nagy tapasztalatot szerzett munkatársakat, ha nem áll rá a fejük az Excel kezelésére. Mit szólnál, ha mától öltönyt kellene szabnod? Elismerem, lüke példa.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
válasz Delila_1 #5764 üzenetére
Hali!
Igen lehet, hogy erősnek tűnik a dolog, de Én ehhez vagyok szokva, sokszor még megismerkedni sem volt időm munkatársakkal, mert pár nap alatt repültek. Hiába dolgozott más programozási területen x éve, ahhoz a melóhoz nem értett, mást meg nem tudtak adni neki....
Hát ha én szabnék Neked egy kosztümöt, azt megnézném, hogy áll rajtad...
(kár, hogy nem vagyok Mekk Elek, mert akkor csak levernék az egyik logóm )Fire.
[ 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)
-
Delila_1
Topikgazda
válasz Fire/SOUL/CD #5767 üzenetére
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
gsc73
aktív tag
válasz Fire/SOUL/CD #5763 üzenetére
Hááááát. Sok-sok véleményem lenne, de inkább koncentráljunk a feladatra, hogy ne legyen nagyon OFF.
Tehát. Úgy érzem kicsit elkanyarodtunk, pedig próbáltam nagyon egyértelműen fogalmazni, hogy mi is lenne a célom. A cellák tartalma nem érdekes, minden szöveg, nem kell számolni, nem is volt kérdés.
Mint írtam, az e-mailen kapott CSV fájlokban található elválasztó karakterek különböznek:
egyszer (1): valami,senki, 13:30,,,,akármi,345,,máskor (2): valami;senki;13:30;;;;akármi;345;;
Az egyiket (1)úgy nyitja meg az Excel, hogy minden „,” (vessző) karakter közé eső részt egy külön cellába tesz (vannak üres cellák is). És ez nekünk jó, ennek örülünk. Innentől egy kattintás, és elindul a rendezés makró, ami mostanra 900 sorosa dagadt (nem 10-20 sor, persze nagyon „komoly” dolgok nincsenek benne, nem vagyok én „Programozó”… )
A másikat (2) úgy nyitja meg, hogy „valami”-től „345”-ig az első cellába (A1) teszi bele a teljes sort, majd az alá (A2) a következőt. Tehát a sorok végét helyesen állapítja meg.
Én a következő folyamatot képzeltem el: a dolgozó rákattint az e-mail mellékletre, amit megnyit az Excel, majd nem törődve azzal, hogy mit lát a képernyőn kattint egy makrót indító gombra (arra ami a rendezést indítja). Ezután a „kis” makró megállapítja hogy tagol-e vagy sem az adatállomány. Ha tagolt, akkor nincs gond, indulhat a normál „Rendezés” makró. (ezt úgy gondoltam detektálni, hogy az első sor (fejléc) ugyanolyan, azaz ha A1-ben „DRE” van akkor okés, ha nem akkor nem tagolt.)
És itt jön az én kérdésem:
Ha nem tagolt, akkor hogyan tagoljam???? (nem kell nekem készre írt makró, szeretnék vele én küzdeni, inkább csak valamilyen iránymutatást szeretnék kérni, mert ebben a pillanatban nincs ötletem se. Általában a szintaktikai dolgok szoktak problémát okozni, meg az ilyen nagyobb falatok.)
Remélem egyértelműen fogalmaztam.
Üdv: g.
[ Szerkesztve ]
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
gsc73
aktív tag
Egy kis kiegészítés: Az adatok hossza nem egyforma, és az üres helyek (cellák) helye is telejesen véletlenszerű. Max 500 sorról van szó, általában 2-300.
Üdv: g.
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
Cuci3
tag
Nos Neked az Adatok/Szövegből oszlopok menüpont kellene 2003 alatt. 2007-ben nem tom hol van és hogy hívják. (ezt majdcsak elmeséli valaki)
És szerintem egypár rögzített makróval rá lehet jönni a szintaktikára.
Én mindig is úgy tudtam, hogy a pontosvesszővel tagolt fájl a csv, a vesszővel tagolt a txt - lehet, hogy szakbarbár vagyok -
gsc73
aktív tag
Igen, az kellene, ha Importálni akarnék, és ott pontosan meg lehet adni az elválasztó karaktereket, de nem az a cél. Egyébként ez 2007-ben is pontosan ott van. A cél hogy automatikusan legyen rendezve megnyitás után.
Üdv: g.
u.i.: én is úgy tudtam hogy Te, de a valóság néha más....
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
Cuci3
tag
Nem biztos, hogy értjük egymás gondolkodását. A következő folyamat megalkotása nem lehetséges:
CSV megnyitása mellékletből -> Progi indítása (valami bővítményként lehetne csatolni az Excelhez, és valamelyik menübe berakni, vagy valami gombot hozzárendelni) -> Ha tagolt, akkor a rendezés lefut. Ha nem tagolt, akkor előbb lefut a Szövegből Oszlopok majd a rendezés -> Mosolygás, öröm, boldogság -
gsc73
aktív tag
ÁÁÁÁÁÁÁÁÁÁÁ, elnéztem, most gyorsan ki is próbáltam, ez működhet!!!!!!!!!!!!!!!!
Most má' vége van a munkaidőnek, úgyhogy otthon, vagy holnap folytatom, de ez tetszik eslő felindulásomban!
Üdv: g.
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
Delila_1
Topikgazda
Sub PontosVessző_e()
On Error GoTo Hiba
If Application.Search(";", Cells(1)) > 0 Then MsgBox "Pontosvesszők az elválasztók"
Exit Sub
Hiba:
MsgBox "Nem pontosvesszők az elválasztók"
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
gsc73
aktív tag
válasz Delila_1 #5776 üzenetére
Köszönöm!
Ez egy igazán elegáns megoldás, amire én nem is gondoltam volna......
Kicsit próbálkoztam estefelé Cuci3 javaslatával, ami részben működött, de megint egy olyan dologgal találkoztam, amivel azelőtt még nem...vannak még ötleteim......ha kifogyok, kérdezni fogok 'ám.....
Üdv: g.
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
-
gsc73
aktív tag
válasz Delila_1 #5778 üzenetére
Szia!
Igen, tudom hogy itt egy nagyon segítőkész csapat figyeli a fórumot, élükön Veled.....
Ma reggel kicsit elkedvetlenedtem 2 dolog miatt. Egyrészt mert olyat küldtek, amit eddig még nem.... : most egy XLT file volt a csatolmányban. Ezzel nem volt különösebb baj, mert lefutott a rendezés, de pl a dátumformátum már nem stimmelt. Most ezzel küzdök.
Fire-nak teljesen igaza volt/van abban, hogy olyan makrót írni nagyon nehéz, ami teljesen univerzális, főleg úgy, hogy nem definiált előre hogy mi a bemenet, de a kimenetnek mindig ugyanolyannak kell lennie! (az sem megoldás hogy akkor én meg nem megyek szabadságra, nem leszek beteg..stb.. )
Most az egyik oszlop dátumformátumával nem tudok zöld ágra vergődni.
A cella így néz ki: 2009.11.30. 10:01
vagy így 2009.11.30. 5.47Ilyenné kell alakítani: 10:01
vagy ilyenné 5.47Ez igen egyszerűnek tűnik, de a valóságban nem az. Bizonyos esetekben, amikor az Excel felismeri hogy dátumról van szó, akkor jól működik az a macró sor, hogy
Selection.NumberFormat = "h:mm;@"
DE ha nem ismeri fel, akkor a fenti sorra nem reagál. Mondom oké, akkor "vágjunk" MID -del. az pedig csak akkor működik jól, ha kizárólag szöveg, különben nem lesz egyforma.
Ha átalakítom szöveggé, azzal a célzattal hogy akkor lehetne hasznáéni a MID-et, akkor meg "40147.4166666667" lesz belőle.................kezdek becsavarodni.
Üdv: g.
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
deicide
veterán
Sziasztok!
Újabb kérdés:
Hogyan lehet egy cellába legördülő menüt tenni, olyat, ahol meghatározott lehetőségek közül lehet választani?
Live fast - On high - Repentless - Let it ride
-
gyga
senior tag
ez a képlet összeadja a mostani munkafüzet összes oldalán lévő L154 es mezőben levő számokat de, olyan általános képlet létezik e amit nem kell állandóan változtatni ha változnak a lapok nevei,
=SZUM(Munka1:mák!L154)A kisebbség is számíít, teszkó.
-
Delila_1
Topikgazda
-
Delila_1
Topikgazda
válasz deicide #5780 üzenetére
Kétféle módon.
1. Érvényesítéssel: Adatok/Érvényesítés/Beállítások fül. A Megengedve legördülőből kiválasztod a Listát, a Forrás mezőjébe lépve a lapodon kijelölöd a területet, ahonnan az adatokat meg akarod jeleníteni.
Ezt akkor alkalmazhatod, ha az így érvényesített cella és a forráslista azonos lapon van. Ha másik lapon akarod létrehozni, akkor előbb a forráslistát el kell nevezned (kijelölve a területet Beszúrás/Név/Név megadása. A megjelenő ablakban lent, a hivatkozásnál megjelenik a kijelölt területed, a Munkafüzetben lévő nevek rovatában adsz egy nevet a tartománynak.) Az érvényesítésnél a forráshoz az adott nevet írod be egy egyenlőségjel után.
2. Űrlapelemmel: behívod az Űrlapok eszköztárát, ezen rákattintasz a Kombi panel ikonjára, a kapott szálkereszttel megrajzolod a legördülőt. Jobb klikk az elemen, Vezérlő formázása. A Vezérlő fülön a Bemeneti tartomány mezőjébe állva a lapodon kijelölöd a megjelenítendő tartományt. A Cellacsatoláshoz beírod a cellát, ahol a kiválasztott elem sorszámát szeretnéd látni (az elemek közötti sorszámot adja, vagyis ha a két elem Anna és Béla, Annát választva 1, Bélánál 2 lesz a csatolt cella eredménye). A csatolt cella tartalmát felhasználhatod pl. egy FKERES függvényben. Ezt a cellát célszerű a legördülő "mögé" tenni, hogy a megjelenő eredmény ne zavarja a felhasználót.Van harmadik megoldás is, mikor a Vezérlők eszköztárából veszel egy Beviteli listát, de ehhez már egy kis programot kell írni.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
gsc73
aktív tag
válasz Delila_1 #5782 üzenetére
Sziasztok!
Közeledünk a tökéleteshez….
Az elválasztó karakter problémaköréből adódó nehézségeket sikerült megoldanom.
Detektálásért köszönet Delila_1 –nek………… (On Error Goto….)
Szétválasztásért köszönet Cuci3-nak………… (Adatok/Szövegből oszlopok)
Makró rögzítés. Kis alakítás, és működik is, örül, boldog………Egy kicsit más kérdés (ez már csak olyan szépítés):
A mostani personal.xlsb modul szerkezete az alábbiak szerint néz ki:Sub egyes_verzio()
'valami 1
kozos
End Sub
Sub kettes_verzio()
'valami 2
kozos
End Sub
Sub kozos()
'közös dolgok
End SubMivel a közös rész a legnagyobb (90%-a az egésznek), így logikusnak tűnt, hogy szubrutinszerűen meghívogatom, ami sok-sok egyéb előnnyel is jár. Ebben az esetben a futtatható makrók listájában 3 sor jelenik meg: egyes_verzio/kettes_verzio/kozos. Természetesen a kozos rész nem működik helyesen önmagában. El lehet azt rejteni valahogy? (hide)
Üdv: g.
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.
-
Delila_1
Topikgazda
1. Szívesen.
2. Tudtommal nem, de ezt könnyen megtanulhatják a felhasználók.Ha a csv-k, txt-k behívása mindig egy állandóan használt füzetbe történik, kitehetsz 2 gombot, amikhez hozzárendelheted a 2 makró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.
-
Delila_1
Topikgazda
Sub SubTotal()
ucso = Worksheets.Count
For lap = 2 To ucso
Sum = Sum + Sheets(lap).Cells(154, 12)
Next
Sheets("Összesítő").Cells(154, 12) = Sum
End SubEzt a makrót vidd be. Alt+F11-re bejön a VB szerkesztő. Bal oldalon megtalálod a füzeted nevét, az előtte lévő + jelre kattintasz. Insert menü, Module. Jobb oldalon kapsz egy üres fehér oldalt, oda másold.
Ha az összesítő lapod neve nem Összesítő, a makróban írd át.
Ha az összesítőn az eredményt nem az L154 cellában szeretnéd látni, a Cells(154,12)-ben írd át az értékeket. a 154 a sor száma, a 12 az oszlopé (A oszlop=1, B oszlop=2, ... Loszlop=12).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
Sub SubTotal()
ucso = Worksheets.Count
For lap = 2 To ucso
Sum = Sum + Sheets(lap).Cells(154, 12)
Sum1 = Sum1 + Sheets(lap).Cells(155, 12)
Sum2 = Sum2 + Sheets(lap).Cells(156, 12)
Next
Sheets("Összesítő").Cells(154, 12) = Sum
Sheets("Összesítő").Cells(155, 12) = Sum1
Sheets("Összesítő").Cells(156, 12) = Sum2
End SubEzt vidd be az előző helyére.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
gyga
senior tag
na még 1 és igérem nem zaklatlak ma minden működik rendesen csak ha változik vmi adat az összeadandó helyeken akkor magától nem módosítja az összegzőben csak ha lefuttatom a makrót.
ilyen auto számolásra gondolnék ha lehet.A kisebbség is számíít, teszkó.
-
Delila_1
Topikgazda
Automatikus számolás akkor lenne lehetséges a szum(első_lap:utolsó_lap!L154) képlettel, ha állandó lenne a lapjaid száma és neve.
Tegyél ki egy gombot az Űrlapok eszköztárról az Összesítő lapra, és rendeld hozzá a makrót. Az adataid változásakor csak egy gombnyomás...Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
dtpeter
csendes tag
Meg lehet ezt csinálni automatikusra is szerintem, nem szükséges a gomb. A visual basic szerkesztőben válaszd ki bal oldalon az összesítő lapodat, majd középen fent azt a részt, ahol most jó eséllyel (General) szöveget látsz, állítsd át Worksheetre, és a mellette lévő lévő részt pedig Activate-re.
Ekkor kapsz egy
"Private Sub Worksheet_Activate()End Sub"
szöveget. Na, e közé a két sor közé illeszd be a Delila_1 által írt kódot (persze a Sub... és End Sub nélkül). Ez azt fogja eredményezni, hogy minden alkalommal, amikor más lapról átlépsz az összesítő lapodra, lefut a kód. Arra érdemes figyelni, ez csak akkor jó megoldás, ha az összesítő lapon lévő eredmény cellából más lapon nem dolgozol.Van még pár lehetőség, hogy milyen eseményhez lehet rendelni a kód lefutását, pl. olyan is van, ami akkor indítja el a programodat, ha megváltozik az adott munkalapon bármelyik cella. Ezt mondjuk érdemes lenne feltételhez kötni, hogy mely oszlopok változása esetén frissítgesse az eredménycellát, teljesen felesleges mindig elvégeztetni vele az összeszámolást. Ezt meg úgy tudod megcsinálni, hogy bal oldalon a ThisWorkbook-ot választod, középen fent Workbook-ra állítod a (General) részt, és jobb fent SheetChange-et választasz a legördülő menüből.
Ekkor ilyesmi szöveget látsz majd:
"Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Column = 8 Then
MsgBox "Most számol :)"
End If
End Sub"A középen lévő részt én írtam be, a msgbox-os sor helyére tedd Delila_1 kódját. Az eleje meg csak annyit jelent, hogy ha a 8. oszlop (azaz a H oszlop, amit emlékeim szerint összegezni szeretnél) változik, akkor indítja az összegzést.
Alapesetben az első variációt választanám, mert az csak akkor számol, amikor tényleg meg akarod nézni az eredményt. Ennek a másodiknak akkor van értelme, ha az eredménycellára más helyen hivatkozol, és fontos, hogy minden egyes változtatás után azonnal friss adatok álljanak rendelkezésre.
Első számú aranyszabály: Ha nincs probléma, csinálunk.
-
gsc73
aktív tag
Sziasztok!
Gondoltam leírom a dárumformátummal kapcsolatos végleges megoldást.
If Cells(x, 1).NumberFormat = "General" Then
Cells(x, 1) = Right(Cells(x, 1), 5)
Else
Cells(x, 1).Select
Selection.NumberFormat = "h:mm;@"
End IfEbben az esetben teljesen mindegy hogy az Excel minek ismeri fel az adott cellát, vagy milyen formátumban küldik, az eredmény egységes lesz.
Üdv: g.
kedvenc szavaim: palack, flakon, kredenc, fridzsider, ibrik, trafik, szvetter, fregoli, rezsó, sparhelt, vájdling, szifon, gardrób, partvis, spejz, tégely, drót, abrosz, lavór...szocreál.