Az „Excel” fórum célja, hogy keretet adjon az Excel felhasználók széles táborának tapasztalataik megosztására, és lehetőséget a segítséget kérőknek. Az alábbi összefoglaló azért készült, hogy segítse a helyes kérdésfeltevést.
– Írd le szabatosan a problémát. Úgy fogalmazz, hogy ne csak te magad, de a szakértő is megértse, mire szeretnél választ kapni.
– Írd le, hogy milyen verziójú Excellel dolgozol. (Vagy ha nem – ill. nem csak – Excel, akkor micsoda?)
– Írd le, hogy milyen úton indultál el, és hol akadtál el rajta.
– A kérdés megértése szempontjából sokat segíthet, ha feltölteszt egy képet, amin látszik, hogy mit szeretnél, vagy illusztrálja azt.
– Még jobb, ha feltöltesz egy minta munkafüzetet valahová (pl. data.hu). Feltöltés előtt távolítsd el belőle a nem publikus adatokat.
– Ha a feladat jellege olyan, célszerű az "előtte" és "utána" állapotokat bemutatni. (Miből kellene csinálni mit?)
– Ha VBA kódon kell javítani, másold be a releváns kódrészt. Rövid kód mehet hozzászólásba, hosszú kód inkább ide: http://pastebin.com/
– Ha valami nem úgy működik, ahogy kellene, add meg a rendellenes viselkedés jellemzőit, a hibaüzenetet, és a hibát okozó programsort.
Hogyan lehet egy, a munkahelyem lokális hálózati meghajtóján lévő Excel táblázatot közös használatra megosztani? Az Excel korábbi verzióiban ez működött, de most egységesen az Excel 365 verzió lett telepítve. Ebben már nem jön fel csak a megosztás megosztásának a megszüntetése. Csak Onedrive meghajtón engedélyezné, de az nem lenne a legjobb. Van valami megoldás?
Egy egyszerű if képletről lenne szó amivel problémába ütköztem. Először is azt szeretném kérdezni,ez így miért nem műkődik? =IF(g1>h1,"A",IF(h1>g1,"B"))
illetve ha ezt így nem tudom megoldani,akkor hogyan tudnám? g1 és h1 semmilyen esetben nem lehet egyenlő,így annak a beépítésére nincs szükségem a képletben
Hát, vannak fenntartásaim, programozók állandóan azt bizonygatják, hogy mit nem lehet megoldani adatbázissal, de ha meggyőzöl, nézzük meg, mire jutunk. :-))
Irj egy rövid példát, hogy te hogyan gondolod a gyakorlatban, vagy Te írtál egy nagyon "lebutított" vázlatot, vagy én bonyolítom túl a végtelenségig.
Igen, csak szöveges adatról van szó, csak az embereknél kellenek kapcsolódó adatok, mint elérhetőség (jellemzően mél cím, vagy mobiltelefon), illetve a munkaköre. Valamint az egyéb adatok, hogy adott feladattal megbízott személy, vagy adott főnök rokona, vagy más cégnél lévő üzleti kapcsolata, de azok talán első körben nagyon bonyolultak lennének.
Az jutott még eszembe, hogy a "jegyzőkönyv" két részből áll, az egyik, amit írtam, kezdettől zárásig leírás, hogy mi történt és kik szóltak, hozzá, valamint az is benne van, hogy a gyűlés közben mely fontos személy jött, vagy ment el. Mellette van egy jelenléti ív, amit mindenki aláír, aki ott volt, de a leírásban látható, ha az illető csak pl. tíz percre ugrott be, mert egy kérdésben szükség volt rá, a többi nem érdekelte.
az átméretezés rendben működik, köszönöm szépen! :)
A szűrök viszont nem frissülnek vmiért, nem követik le a táblázat adatait. :-(
Ellenben ha minden táblázat átméretezés után, makróval feldobálom a szűrőket, akkor az úgy igazából rendben működik, kivéve azt a kis optikai problémát, hogy így lehetnek nagy szűrőkben egy-egy gombok csak, de az alapjuk viszont megmarad nagynak. De ezt a részét el tudom igazából most már engedni :-) Mégsem annyira néz ki rosszul, mint azt elsőre gondoltam.
Szóval köszönöm szépen! Így már elboldogulok szerintem:-)
A szűrés újrafuttatása előtt nem kell szerintem törölni a Rendszerezett Adat munkalapon levő táblázatot
Ezt a makrót futtasd a szűrés után:
Sub modos() With Munka2.ListObjects("Táblázat1") If Munka2.Cells(Rows.Count, 1).End(xlUp).Value <> "" Then .Resize Range(.Range.Cells(1, 1), Munka2.Cells(Munka2.Cells(Rows.Count, 1).End(xlUp).Row, _ .Range.Columns.Count)) Else .Resize Range(.Range.Cells(1, 1), .Range.Cells(1, 1).End(xlToRight).End(xlDown)) End If End With ActiveWorkbook.SlicerCaches("Szeletelő_Eladó_Megye").RequireManualUpdate = False End Sub
Az első rész hozzáigazítja a táblázatot az újra szűrt adatokhoz. Az utolsó sor pedig frissíti a Slicereket.
Megjegyzések:
1. Munka2 = a Rendszerezett Adat munkalap programozási neve (Codename), használható a Sheets("név") helyett.
2. A "With --- End With között részben a With sorban levő objektumra hivatkozhatunk a . (pont)-tal. Rövidebb és gyorsabb is a programirás és futás.
Itt egy példa, gyorsan netről szedtem le egy adatokkal lévő excelt. (Fórum példa)
Szóval az "Alap Adat" fülre töltjük be a rendszerből kiimportáld adatokat, excelbe tölti le, értékként. (AlapAdat 5000 sor + 57 oszlop) Ez a példában 57 oszlopból áll.
A "Rendszerezett Adat" fülön már történt egy irányított szűrés, hogy csak azokat hozza át amiben "Tehermentes" és "Légzsák" "IGAZ", de csak az 57 oszlopból nekem elég 8 oszlop adatsora, a többi felesleges. (Így a Rendszerezett Adat 1229 sor + 8 oszlop)
Az így kapott "letisztított adatsorban" kell különböző szeletelőket használnom, példában 3-at. (Eladó Megye + Beadás Nap Neve + Beadás Hónapja)
És ezeket használva szűrünk ki adatokat. Ezek a szeletelős megoldás azért kell, hogy aki nem ért az excelhez, az is tudja a szeletelőkkel szűrni az adatokat. (Az alapadatot VBA - makróval töltetem be - szóval az egy gombnyomás nekik + az irányított szűrést is makrógombbal oldom meg, az a második gombnyomás nekik)
Ahhoz, hogy szeletelőim legyenek, az irányított szűréssel megkapott adatsort táblázattá kell alakítanom előtte.
Na ez így rendben is van eddig.
De ha holnap új adatsort töltök be az Alap adat fülre, akkor borul minden. (Fórum példa2) AlapAdat 50 sor + 57 oszlop Rendszerezett Adat az irányított szűrést követően 11 sor + 8 oszlop
És így ekkor a szeletelelőkben megjelent az "üres" adatra szűrés opció, mivel a táblázat megtartotta az eredetei méreteit, amit a szeletelők továbbra is kezelnek. És ezekre nem lenne szükségem. Ez történik, ha korábban nagyobb adat volt benne és az új adatbetöltésnél kevesebb adatsor szerepel.
És küldök egy harmadik verziót is (Fórum példa3), amikor korábban kevesebb adat szerepelt benne, de aztán több adatsor került betöltésre. Itt sem működnek jól a szeletelők, mert csak az eredeti táblázat méretében lévő adatokat szűrik, holott most több adatot hozott az irányított szűrés.
"Alapvetően nekem az kellene, hogy a 2-es munkalapon lévő adat (ami táblázat formátumban van) lekövesse a forrásadat változásait (1-es munkalap), mind tartalomban, mind méretben" - azzal kiegészítve, hogy ugye nem kell minden oszlop a 1-es munkalap adataiból, csak egy része (erre használom az irányított szűrőt)
Alapvetően nekem az kellene, hogy a 2-es munkalapon lévő adat (ami táblázat formátumban van) lekövesse a forrásadat változásait (1-es munkalap), mind tartalomban, mind méretben
Szóval valahogyan összekapcsolni őket.
Egyébként úgy megcsináltam, hogy a 2-es munkalapon sima Fkeresel bekerestem az 1-es tábla adatait, de így ugye kénytelen voltam a 2-es tábla függvényeit oszloponként nagyon sok celláig lemásolni, mivel nem ismerem előre, hogy az 1-es munkalapban mekkora adat lesz
így viszont a 2-es munkalap rengeteg üres cellát hoz eredményül, amit optikailag el tudok tüntetni, hogy ne látszódjon, de a slicer viszont érzékeli őket, mint üres cella = üres adat és beteszi opciónak, mint szűrőfeltétel és az is hülyén néz ki
erre én is gondoltam már és ez lesz akkor, ha mást nem tudok/tudunk kitalálni Csak ezzel azért nem tökéletes mert a slicer-ben lévő szűrési "gombok" száma, függ attól, hogy a szűrendő adatban mennyi féle különböző adat van (például 1-12-ig is lehet, ha csak a hónapokat vesszük).
És ugye makróval nem tudom a slicer méretét a benne lévő gombok darabszámohoz igazaítani, csak egy fix méretre tudom elkészíteni őket a makróval, így viszont minden slicert mindig a lehető legtöbb opcióhoz kell méreteznem, mert nem tudhatom előre mennyi "gomb" lesz majd benne.
Így alakulhat olyan szitu, h nem fog jól kinézni, mert egy baromi nagy slicerben lesz 2 gomb.
De alapvetően ez lesz egyébként, ha máshogy nem megy. (csak szeretném, ha igényesen is nézne ki, a funkció mellett :-) )
"Az egyik munkalapon rendszerből lekért adatsor van (nem táblázatos formában), különböző adatokkal."
Ez milyen módon kerül a munkalapra, milyen lekérdezéssel?
A lekérdezett adatok mindegyikére szükség van a későbbiekben?
Irányított szűrés helyett nem lenne jobb egy kimutatás létrehozása, amit a forrás változása esetén csak frissíteni kell? A kimutatáshoz ugyanúgy lehet slicereket létrehozni.
Esetleg egy mintafájlt adhatnál - természetesen nem éles adatokkal - , amivel esetleg jobban tudnánk gondolkodni.
Van egy excel munkafüzet, két munkalappal Az egyik munkalapon rendszerből lekért adatsor van (nem táblázatos formában), különböző adatokkal. Ez az adatmennyiség minden egyes lekérésnél módosul. (Ezen a munkalapon van még hozzáadott oszlop, ami a bekért adatokból nyer ki további infókat.)
A másik munkalapon már csak azokat az adatokat jelenítem meg, ami nekünk kell, ezt irányított szűrővel teszem meg (makrósítva). Aztán a leszűrt adatmennyiséget táblázattá alakítva 4-5 hozzáadott slicer-rel használjuk.
Szóval a második munkalapon, már az eredeti adat egy leszűkített változata szerepel, amiben slicer-rekkel "kedvünkre" tudunk további szűréseket végezni.
És itt jön a probléma: Amennyiben változik az alap adatmennyiség az első munkalapon (ez lehet több is vagy kevesebb is, szóval nem folyamatosan nő), a második munkalapon lévő makrósított irányított szűrő nem tudja lekövetni, hiszen a slicerek miatt azt az adatsor táblázattá kellett alakítani.
Amennyiben nem alakítom táblázattá, akkor ugye le tudom követni az irányított szűrést a makróval, de akkor meg nincsenek meg a slicer-ek, hiszen azok táblázathoz kapcsolódnak.
Illetve fontos kritérium a második munkalapon ne maradjanak üres sorok, hogy a slicerek ne hozzanak üres mezőre történő szűrési opciót. azaz, ha az irányított szűrés után a leszűrt adatom 10 soros, akkor a slicerek azt lekövessék, ha 100 soros, akkor a slicerek, azt kövessék le.
És mindezt automatizálva kellene megoldani, hogy az excel az első munkalapra befrissített adat után, a második munkalapon a már irányított szűréssel leszűrt adatokat mutassa, és az ehhez tartozó slicerek is módosuljanak (például, ha hónapban csak két hónap van akkor csak azt a két hónapot hozza fel a sliceren belül, ha 12 hónap van, akkor meg mind a 12 hónapot)
Szóval az kellene, hogy az első munkalapra betöltött változó adatmennyiséget a második munkalap mindig lekövesse, de táblázat formában, hogy a slicerek is dinamikusak maradjanak.
Ha gondolod és pontosítunk, hogy mit is szeretnétek pontosan, akkor Excelben megpróbálom megoldani a problémátokat.
Van gyakorlatilag kész makróm, amivel Access adatbázist tudok manipulálnia. Kiolvasni, hozzáírni. Ha megbeszéljük, hogy pontosan mihez, milyen adatokat szeretnétek elmenteni kereshetően, akkor nem olyan nagyon bonyolult a dolog. A lényeg, hogy jól legyen felépítve az adatbázis szerkezete.
Ha jól értem, akkor egy gyűlésnél több bejegyzés is születik. Mindegyik kap egy az adott gyűlésre jellemző címkét.
Úgymond a fő bejegyzés kb. a mikor, hol és kik voltak jelen valamint a napirendi pontok felsorolásából áll.
Utána napirendi pontonként külön bejegyzések jönnek. Ez már két címkét kap. Az egyik a gyűlés címkéje, a másik az adott napirendi pontra jellemző címke.
Ezzel le is zártuk úgymond az első körös adatrögzítést.
Majd pl. amikor jön egy e-mail Józsi bácsitól az elektromos kapu javításával kapcsolatban, akkor az rögzítésre kerül a saját címkéjével. Ami már létezik, mert a gyűlésen szó volt róla, hogy meg kell javítani.
A címkékre tudunk szűrni adatbázisban, mert akkor azok egyediek lennének. A szűrés eredményeit pedig ki tudjuk írni egy sima TXT fájlba. Így ha a közgyűlés "jegyzőkönyve" kell, akkor a gyűlés címkéjére keresünk rá és akkor gyakorlatilag a bevezetőt és a napi rendi pontokat is kiírná a fájlba. De ha az elektromos kapu javításának a folyamata érdekes számunkra, akkor annak a címkéjére keresünk rá. Ekkor csak a közgyűlés adott napirendi pontja kerülne a fájlba írásra, ahol erről volt szó, valamint Józsi bácsi árajánlata. Ha pedig már kivitelezésre is került és ez rögzítésre is került az adatbázisban, akkor természetesen az is bele lenne írva. Utána azt a fájlt ki tudnátok nyomtatni.
Az egyszerűség jegyében csak szövegszerű tartalmakat tudna kezelni. Amennyiben fontos lenne, hogy pl. képeket is tudjon kezelni, akkor lehet, hogy az is megoldható, de az már bonyolítja a helyzetet, mert akkor már nem elég sima txt fájlba kiírni a keresés eredményeit.
Van egy adatbázisszerűen felépülő táblám, az oszlopfejlécekben autószűrővel. Az első oszlop sorszám. Ha leszűröm az adatokat a sorszám persze elállítódik. Létezik megoldás arra, hogy a sorszámozás mindig frissüljön a szűrésnek megfelelően?
Megnyugodtam, hogy nem bennem van a hiba, mert látom a későbbi hozzászólásokból is, hogy egészen másmiről írnak.
Biztos, hogy nem adatbázis volt, Access-t többször, mysql-t egyszer láttam, azt csak programozó tudja kezelni, aki nagyon utálja az egyedi feladatokat.
Leírtam, hogy mit láttam, de álljon itt újra, hátha segít:
Először nekiült és begépelte az aznapi gyűlést, hogy mikor és hol volt és kik voltak jelen, mik voltak a tervezett napirendi pontok, majd napirendi pontonként az egyes résztvevők beszámolóit, majd a kérdéseket és válaszokat.
Ezt szövegfájlként kinyomtatva eltette.
Majd, amikor valamit kérdeztek tőle, hogy pl. fél éve volt valami feladat, és az hogyan áll, akkor matatott valamit, majd kinyomtatott egy olyan szövegfájlt, amiben már az szerepelt, hogy pl. fél éve egy gyűlésen döntés volt valamiről, majd egy héttel később hasonló gyűlésen másik döntés volt a résztvevőkről és költségvetésről, stb. és még olyanok is voltak, hogy pl. Piftuka egy ismerőse telefonált valamikor, hogy megszerezte a kért dolgot és küldi postán Piftuka részére a céghez utánvétellel, stb.
Tehát az egész úgy nézett ki, mintha egy szövegfájl lenne, de minden bekezdés a különböző gyűlések bekezdéseiből és más, csak általa ismert dolgokból - pl. telefonüzenet, vagy postai küldemény - állt.
Biztos, hogy nem programozott semmit, csak a különböző szövegeket látta, ezért volt a tipp, hogy valami iktatórendszer lehetett - csakhát iktatórendszerbe csak postát és üzeneteket irnak, gyűlések jegyzőkönyveit nem.
Tudnátok segíteni, hogy hogy tudnám megtekinteni, hogy egy összeg milyen elemekből áll? Egyik partnerünk kifizette néhány számláját, de csak a végösszeget látom, és szeretném tudni, hogy ez a végösszeg pontosan milyen elemekből tevődik össze? Tehát van esetleg arra lehetőség, hogy lehívom a nyitott tételek listáját, és valahogy lekérem belőle azon összegek kombinációját, amik kiadják az utalt végösszeget?
Szerintem ikonkészlettel csak egymáshoz viszonyított relatív értékeket/adat sávokat lehet feltételes formázással megjeleníteni, egy adatkörön belül, ugyanúgy, ahogyan színskálákkal is.
Az "A" oszlopban kizárólag azokat a cellákat szeretném megjelölni pl. egy piros körrel, melyek megfelelnek annak a kritériumnak, hogy =ÉS(B$1>0;A$1>B$1)
Tudom, hogy van más módszer, amivel kijelölhető/színezhető az egész cella, de most kifejezetten arra vagyok kíváncsi, hogy ez ikonkészlettel megoldható-e?
Nem tudom jól hámoztam-e ki a mondandódból, de azt gondolom a Trello a segítségetekre lehet.
Bár mostanában már nem igazán használom, helyette Figmát használok jegyzetelésre, és mindenre is.
Csapatmunkára a legjobb választás mindkettő.
Érdemes elmélyülni bennük. PC-re, iPadre, mobilra is elérhető mindkettő. A FigJam-ben pencillel is jegyzetelhettek, és valós időben láthatjátok egymás tevékenységét.
A printelés módját, és lehetőségét ellenőrizni kell, ha ez fontos.
Szerintem egy ticketing rendszer kell nektek. Alapból ügyfélszolgálatoknak találtak ki, de ezeket használják a szoftverek hibakövetésére is (pl. Bugzilla). Ezekbe bárki (jogosult) felvihet témákat, hozzárendelhet felhasználókat, akik kommentelhetik, vagy rögzíthetik a jegy státuszának változásait (pl. új hiba, személyhez rendelve, több infó kell, javítva, ellenőrizve stb.) vagy bármilyen más munkafolyamat lépéseit.
Ha van belső szerveretek, még külsős tárhelyet sem kell bérelni, mert alig kell erőforrás. Ha nincs, az sem katasztrófa, kb. évi 10-20eFt-ból megvan. A szoftverek, amelyeken fut, mind ingyenesek (Apache webszerver, MySQL adatbázis). A fejlesztés tényleg sokba kerülhet, de ha nem akartok sok extra fícsört, akár nevetségesen olcsó is lehet (a CodeCanyon-on pl. 16$-tól vannak kész rendszerek). Már csak kell valaki, aki párszor ennyiért telepíti és beállítja.
Az első bekezdésre reagálva, azért nem annyira drága a dolog. Lehet bérelni is tárhelyet.
Én elvesztettem a fonalat, hogy pontosan mit is szeretnétek. Szerintem ugyan arról beszélünk amúgy.
Maradva az adatbázisnál, vannak korlátai, de messzemenőleg nem olyan szűkek, mint azt gondolnád. Lehet bennük komplett szöveges dokumentumokat is tárolni. Adattípus szerint 65.000, 16.800.000 vagy 4.300.000.000 karakter tárolására van lehetőség. Ha csak feljegyzéseknek kell, akkor szerintem untig elég a 65.000 is.
Ezt megfelelő programmal pedig úgy jeleníted meg ahogy szeretnéd.
Tovabbá annyi témakört rendelsz hozzá, amennyit szeretnél.
Ha DOS-os volt az alap program, akkor szinte biztosan Windowson futott a "megbuherált" változata. A WIN98-ig, ha nem csal az emlékezetem, akkor futott szinte az összes ahhoz képest nem túl öreg dos-os program. Maga a WIN98 is DOS alapú volt még.
Többször ki lettünk oktatva, hogy mi buta felhasználók vagyunk és hülyék az IT-hez, ilyet csak mérnökök tudnak megtervezni és rendszerterv kell hozzá jó sok pénzért és persze felhő meg webszerver, szóval, milliós az induló költség.
De az biztos, hogy nem adatbázis, mert ott meg vannak szabva, hogy milyen adatbázisban milyen adatokat lehet bevinni és milyen formában.
Olyat használják külön a pénzügyesek, van külön a könyvelőknek, meg a bérelszámolóknak és vannak, akik excelt használnak rengeteg munkafüzettel.
A szuper megoldás az olyan szöveges valami volt, amiben tetszőlegesen tudta összekapcsolni a különböző adatokat, és mindig gyorsan ki tudta deríteni, hogy mi mivel volt összefüggésben.
Ráadásul úgy, hogy egyben voltak a beírások, és mégis, amikor szükség volt rá, akkor a kapcsolatok révén úgy tudta kinyomtatni a különböző beírásokat, mintha egyetlen szövegfájl lett volna.
Próbáltunk szöveges fájlokat csinálni, de amikor ötven fölé mentünk, már nem tudtuk, hogy melyikben mi van, és nem lehetett őket összekötni, csak fizikailag másolni a tartalmak egy részét.
Félfüllel hallottam, hogy talán valami régi DOS-os, még az 1990-es években kötelezővé tett iktatóprogramnak volt valami megbuherált változata, de biztos, hogy windowsos vagy linuxos volt, nem DOS-os.
Hihetetlen dolgokat tudott vele pillanatok alatt kideríteni, csak néztünk.
Van sejtésem róla, hogy mit is szeretnél. Hogy őszinte legyek nem tudok ilyen jellegű programról.
De el tudok képzelni egy webes programot, ami ezt tudja. Az én olvasatomban ez viszonylag primitív program.
Ha jól értem az kell, hogy legyen egy adatbázis, amiben rögzítésre kerül, hogy ki, mikor, mit és melyik témához ír hozzá. Aminek kell hogy legyen egy rögzítő lapja és egy lekérdező lapja.
Ezt meg lehet oldani PHP és SQL alapon netes felületen. Ennek előnye, hogy ha publikus szerveren van, akkor bárhonnan és bármikor írható/olvasható. Ha helyi hálón van, akkor viszont kell egy szerver, ami ezt kiszolgálja, de "csak cégen belül" lesz elérhető.
Netes alapon egyszerre több eszközön is mehet az adatbevitel és az olvasás is.
De egyszerű excel dokumentumban is nyilvántartható. Akkor viszont egyszerre csak egy ember tudja szerkeszteni. (Kivéve Office 365 esetében). Ha vállalati közös tárhelyre van mentve, akkor többen is hozzáférhetnek és többen is szerkeszthetik egy időben. Viszont ügyelni kell rá, hogy ne írják felül egymás adatait.
Vagy lehet kombinálni a kettőt. Van egy adatbázis fájl, ami céges szerveren van és az tartalmazza az adatokat. Ehhez hozzá lehet férni excelben írt makrókkal és lehet azokat írni/olvasni.
Előre is elnézést kérek az off témáért, nem találtam megfelelő fórumot és a beírások tömegét olvasva úgy látom, itt az értelem uralkodik, ezért kérdezem:
Létezik "elektronikus titkárnő", vagy olyan program, amivel azonnal lehet mindenféle témához hozzáírni az aznapi fejleményeket, és ha kell, témánként látni, hogy csak abban a témában mikor mi történt?
Most abba a helyzetbe kerültünk, hogy elvesztettük a titkárnőt, akinek egyetlen jegyzetfüzete volt, abba írt mindent, de utána mégis mindig minden ügyről volt nyomtatott kimutatása, mikor mi történt.
Hasonló program kellene, az összejövetelen valaki beírja, hogy adott témákban mi történt, és később a beírásokat már a témákban lehet látni időrendi sorrendben.
Nem tudom, hogy egyértelmű volt-e, hogy csak azok a sorok duplikációját kellene teljesen törölni, amelyik soroknál minden cella egyezést mutat egy másik sorral.
utolsoSor = Cells(Rows.Count, "A").End(xlUp).Row Dim RangeToCheck As Range Set RangeToCheck = Range("A1:AL" & LastRow) Columns("AM:AM").formula = "=A1&B1&C1&D1&E1&F1&G1&H1&I1&J1&K1&L1&M1&N1&O1&P1&Q1&R1&S1&T1&U1&V1&W1&X1&Y1&Z1&AA1&AB1&AC1&AD1&AE1&AF1&AG1&AH1&AI1&AJ1&AK1&AL1" RangeToCheck.RemoveDuplicates Columns:=Array(39), Header:=xlYes ' Az 39. oszlop tartalmazza az egyesített értékeket Columns("AM:AM").ClearContents
Jól sejtettem, hogy a dátummal van a gond és az általad átírt kóddal tökéletesen működik (az első változatot próbáltam ki, másik kettőt még meg kell értenem (tanulom a VBA-t)). Köszönöm mindenkinek a gyors segítséget, kb 1hónapja kűzdöttem vele.
Lenne még egy kérdésem esetleg hátha erre is tudtok megoldást: Ismétlődések eltávolítása nagy adathalmazból.
Volt rá egy kódom amit kiokoskodtam, de nagyon lassú volt. Ugyan ennél az adathalmaznál a Menű -> Ismétlések eltávolítása pillanat alatt megoldotta. Ezt, hogyan lehetne lekódolni, hogy ilyen gyors legyen?
Ugyanezt a metódust használtam egy másik részen (igazából azt kopiztam le), de ott nem dátumot, hanem szöveget szűrtem és ott is A1-van és ott működik. ezért gondolom, hogy A1-el nincs gond.
Range("A1").Select If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False End If ActiveSheet.Range("A1").AutoFilter Field:=4, Criteria1:="*SZÖVEG*" Dim adatTartomany As Range Dim masolniTartomany As Range Set adatTartomany = ActiveSheet.AutoFilter.Range Set masolniTartomany = adatTartomany.SpecialCells(xlCellTypeVisible)
Az alap probléma az, hogy a dátumot az Excel makróban az amerikai "stíl" (MM/DD/YYYYY") szerint kell megadni, bármilyen formátumban és nyelven van is az adott táblázatban. Ez sajnos némi trükközést - függvény többszörözést - igényel. Ráadásul a szűrőben szöveg formátumban használandó. Az általad mutatott feltétel így hozható létre makró által "ehetően":
DE létezik ennél egyszerűbb lehetőség is időszakok szűrésére. Ilyenkor a Criteria2 paramétert kell használni az alábbi formátumban:
Also used as single criteria on date fields filtering by date, month or year. Followed by an Array detailing the filtering Array(Level, Date). Where Level is 0-2 (year,month,date) and Date is one valid Date inside the filtering period.
A szűrendő tartományt természetesen nem árt megadni egzaktul, de az Excel képes "kitalálni", amennyiben pl. az A1 cella része a tartománynak, akkor az egész tartományt fogja szűrni.
Van egy fejléces excel táblázat. 5.oszlop dátumokat tartalmaz. Feladat, szűrés makróval 2022-es dátumokra és szűrt adat sorok másolása. Az oszlop tartalmaz 2022es dátumokat.
Makró kód: Application.Workbooks(2).Worksheets(5).Activate Range("A1").Select If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False End If Dim startDate As Date Dim endDate As Date startDate = DateSerial(2022, 1, 1) endDate = DateSerial(2023, 1, 1) ActiveSheet.Range("A1").AutoFilter Field:=5, Criteria1:=">=" & startDate, Operator:=xlAnd, Criteria2:="<" & endDate
Ez egy másik próbálkozás, de ezzel is ua.: 'ActiveSheet.Range("A1").AutoFilter Field:=5, Criteria1:=">=2022.01.01", Operator:=xlAnd, Criteria2:="<2023.01.01"
Hiba jelenség leírása:
Szűrés a fejlécen bekapcsol, szűrés ikon az oszlopon ott van, szűrés ikonon megnézve a szűrést, tartalmazza a szűrés feltételt, de nincsenek szűrt adatok. Szűrt oszlop ikon jó helyen van. Szűrésbe belépve, rányomok egy OK-ot a szűrésre, megjelennek a szűrt adatok.Ugyanez a kódrészlet, ugyanebben a makróban egy másik helyen szöveges szűréssel működik. Dátum oszlop egyedi formátumban van, de átállítva dátum formátumra is fenn áll a hiba. Csatoltam egy excelt amiben a kód lefutása utáni állapot van.
Ha még olvasod a fórumot, akkor elkezdtem írni hozzá egy makrót. Kicsit másképpen fog működni, mint ahogyan eredetileg szeretted volna, de szerintem így is jó lesz.
Gépen rájöttem erre a trükkre ma, de most, hogy írtad telefonon is működik. Én az egyszerűség jegyében Chromeot használok telefonon és gépen is.
A Word körlevél készítőjét üzemorvosi beutaló készítésére használtam. Illetve én töltöttem ki a megfelelt papírokat is. Be volt víve egy adatbázisba a dolgozók összes lényeges adata és volt egy logikai mező, hogy ki az aktív dolgozó. Akkor egy kattintással lehetett nyomtatni a beutalókat és a megfelelt papírokat is. Az üzemorvos olyan lusta volt, hogy a megfelelt papírokat se szerette kitölteni... Mondjuk 3 alkalmazott volt velem együtt, plusz a főnök.
Átlag Jánosnak persze nincs telepítve a Notepad++, így ezt az utat kell bejárnia. Ha a beillesztett számok nem csak mellékes adatok, hanem számolni is kell velük, akkor pedig természetes, hogy ez a módszer kell, mert nem mindegy milyen tizedesjelölő van a szövegben.
Ami nekünk fontos az a leírás alapján az attachment paraméter. A szimpla macskakörmök közé kerülnek a csatolmányok, amiket vessző választ el kötelező jelleggel. Emiatt volt a hiba, mert a mappa nevében lévő vesszőt csatolmány elválasztónak vette. Ha jól emlékszem, akkor hibát írt ki felugró ablakban a Thunderbird és a body részt be se vette. Végül a body rész sincs már használva, mert a message részben TXT fájlból van beolvasva maga az üzenet. Ott meg lehetett formázni HTML kódokkal azt. Van valahol egy sor, hogy if message<>"" then body="" End if. Ez nem okoz problémát neki. A wait függvényre azért van szükség, mert kb. 3 secundom alatt töltődik be a Thunderbird új e-mail ablakja és utána kell, hogy "lenyomódjon" az enter a levél elküldéséhez.
A Wordre rátérve. Szerintem az első számítógépünkön is márt volt '98 vége felé. Jóformán sohasem használtam a nélkül, hogy ne látnám a rejtett karaktereket. Egyszerűen frusztrál, ha ki van kapcsolva. Amúgy az NP++-t azért szeretem, mert jóval gyorsabban megnyílik, mind a Word és rögtön eldobja az összes felesleges formázását a szövegnek. Így nem kell még pluszban mindent kijelölné, az egeret lökdösni, hanem rögtön mehet a CTRL+A&C és már a vágólapon van a szöveg eltüntetett formázással. Ha a volt munkahelyemen valakinek magyaráztam számítógép kezelési alapokat, akkor törekedtem arra, hogy minél kevesebb lépésből és egyszerűbben legyen megoldható egy probléma. Már az feladta a leckét és 8 év alatt amíg ott voltam, nem tudtam megtanítani, hogy ALT+Enter az új sor cellán belül, nem pedig 999999 space. Szóval reménytelen volt kicsit is összetettebb dolgokat megtanítani. Ezért próbáltam meg mindent makrókkal megoldani, amik elvégzi a felhasználó helyett a feladatokat, mert akkor csak a nyers adatokat kell bevinni és mindent elvégez a makró. De sajnos ez se jött össze minden esetben, pedig megpróbáltam a lehető leszájbarágósabban leírni minden lépést. De a számlázó programból való adatkinyerésnek is változott az oszlop sorrendje hébe-hóba és hiába írtam le, hogy mi legyen a sorrend és mi az ami egyáltalán nem kell, nem sikerült elmagyarázni. A vevők listájánál egy-két fontos oszlop volt nálunk: nyilván a neve, adószáma, vevőcsoportja és ha hivatkozni akartam rá Excelben, akkor a vevőkódja. (Mivel néha változtattak nevet, így egyszerűbb volt egy kód-név adatlapot csinálni, mint utólag módosítani mindenhol a régi nevet az újra). De akkor a fejlesztők egyszer csak gondoltak egyet és megjelenítettek számunkra teljesen felesleges oszlopokat is: levelezési cím, fax, weboldal, cégjegyzékszám, bankszámlaszám, hitelkeret, stb. Nagy részük ki sincs töltve, mert felesleges infók lennének vagy a kutyát se érdekli. De a fejlesztők gondolnak egyet és kirakják a listába plusz oszlopként, ahol összekuszálják a meglévő oszlopaink sorrendjét. De van rá lehetőség, hogy legalább elrejtsük.
Bizonyára félreérthető voltam az első hozzászólásban. Ott az általad megadott linken levő táblázat bemásolását próbáltam bemutatni az elválasztójel megváltoztatásával, azzal, hogy nem lett dátum egyetlen számból sem, hanem a tizedespontos szám került be.
Vagyis copy-paste történt.
Azt már nem mutattam be, ami a mostani hozzászólásban volt, hogy simán vissza lehet állítani a tizedesvesszőt és marad számként az érték, ezt most pótoltam. Még annyit kiegészítésül, hogy a módszer alkalmazható akkor is, ha ilyen tizedespontos számokat tömegesen szeretnénk kézzel bevinni.
Szerintem pont nem kanyarodtunk el. Hiszen itt is copy-paste van.
"időnként dátummá varázsol egyes számokat."
Nem időnként és nem csak a copy-paste, hanem minden olyan esetben, ahol általános cellaformátum van és dátumként értelmezhető adat kerül bele. Pl. ha 8.5-öt írsz be, akkor bizony dátum lesz a cellában.
Viszont a bemutatott esetben, amikor a módosított tizesjellel beolvassuk az értéket, utána visszaállíthatjuk a rendszer szerinti elválasztót és a pontok helyén megjelenik a tizedesvessző:
Tehát ez megoldás a copy -> paste problémára, nem kell Notepad++ vagy Word-be másolás!
Azért javaslom, hogy a makrót abban a környezetben mutasd be, ahol használod. Feltételezem, hogy a makrót nem abban a munkafüzetben indítod, ahol az adatok vannak, ezért az Excel VBA csoportban írt mintádban rögtön az első sor hibaüzenetet ad, ha azt a belinkelt munkafüzeteden belül próbálom indítani:
Application.Workbooks(2).Worksheets(5).Activate
Természetesen a Workbooks(2) nélkül működik: Application.Worksheets(5).Activate
Sziasztok. Láttam, hogy van Excel VBA csoport is, de ott nem kaptam választ problémámra. Esetleg itt tud na valaki segíteni Excel VBA programozásban? Ha igen, akkor megírom miről lenne szó.
A Wordben, ha bekapcsolod a rejtett szimbólumok megjelenítését (¶) sok ilyen problémát kiküszöbölhetsz.
A Wordben is egyszerű az összes formázás törlése.
Makrókat abban is lehet írni. De tény, hogy nagyon másra vannak!
A parancssorban a fájlnév idézőjelek nélkül van? Érdekes. Windows Servert én már nem használok, a W10 parancssora elvárja az idézőjelbeni fájlneveket, és a Word makrók is, mert a szóköz is gondot okoz neki. Idézőjelek közt mehet a szóköz, és a vessző is.
Nekem a Notepad++ az egyik első program amit telepítek. Nálam az egyik legalapabb a számítógépes munkavégzéshez. A Word-öt nem szeretem ilyen szinten, mert van benne csomó haszontalan funkció, miközben rengeteg hasznos nincs benne. Nyilván a kettő programot össze se lehet hasonlítani, mert teljesen másra van, hiába szövegszerkesztő mindkettő.
Ha kell egy gyors jegyzet, akkor azt is NP++-ba írom fel, el se kell menteni, mert csinál neki ideiglenes fájlt és a program bezárása, majd újranyitása után is ott van.
Apropó, ha már Word. Az előbb futottam bele egy problémába. Volt munkahelyemnek segítettem be EPR+KVTD bevallás elkészítésébe. A jó előbb sikerült a végére pontot tenni. A lényeg, hogy már nem rendelkezem a jogosult ügyfélkapus adatokkal, így megkértem volt kolléganőmet, hogy írja már bele egy dokumentumba az asztalra. Ő Wordbe írta bele. Én naivín kimásoltam, majd beillesztettem az ÁNYK-ba, de nem akarta elfogadni a jelszót. Egy kis telefonálgatás után kiderült, hogy a jelszónak jónak kell lennie. Mivel távoli asztalra voltam bejelentkezve és hogy biztosan átjön-e az éteren a CTRL+C, így beillesztettem az itthoni gépemre NP++-ba. Kb. nálam megszokás ilyen esetben az automatikus CTRL+A&C és úgy illesztettem be az ügyfélkapuba és el is fogadta. Visszalépve a távoli asztalra ott is bemásoltam NP++ba és ki is másoltam. Utána már ott is elfogadta. Én arra gondolok, hogy a Wordből való másolnál bekerül a sor végére egy felesleges CRL, LF karakter sor. Amit bevitt a jelszó mezőbe, amikor közvetlenül a Wordből másoltam. Az NP++ pedig nem teszi oda automatikusan, csak ha kijelölöd az új sor karaktert is.
Amúgy többek között ezért is szeretem, mert eldob minden felesleges formázást. És hozzá is készíthetők makrók.
Anno szintén a volt munkahelyemen csináltam árjegyzék kiküldő Excel táblázatot, mivel a Thunderbird levelező meghívható parancssorból így adta magát az automatizálás. A magyar karaktereket viszont nem igazán csipázta, így át kellett őket konvertálni html kóddá. Pl az á-ból lett "á". Minden magyar karakterhez csináltam egy kicserélő makrót az NP++-ban, így könnyű volt a szövegben minden karakter módosítani. Végül Excelesítettem azt a lépést is, sok-sok egymásba ágyazott helyette függvénnyel. Ami még feladta a leckét, az a mappa nevekben lévő vessző. A cégnél Windows Server fut és Windows 10 munkaállomások vannak. Viszont eszembe jutott (mert még volt szerencsém használni anno), hogy kompatibilitási okokból a régi windosokban benne maradt a DOS-os 8.3-as fájlnév formátum. Kis utána járással kiderült, hogy manapság ez már a MS Serveren le van tiltva, mert felesleges helyet és erőforrást foglalna ezek legenerálása. De ideiglenesen be lehetett kapcsolni a generálást, úgy hogy az ne automata legyen és annak az egy mappának adtam 8.3-as fájlnevet. A dolog érdekessége még, hogy nem kellett betartani az eredeti 8.3-as formátum generálási szabályait, hanem "szabadon" adhattam meg bármit. Ez alatt azt értem, hogy a "TextFile1.Mine.txt” a szabályok szerint "TEXTFI~1.TXT" lett volna, de én akár "alma.txt" nevet is adhattam neki. Csak nem fájlról volt szó, hanem mappáról, de a lényeg ugyan az. Majd kikapcsolva a generálást megmaradt az egy darab legenerált 8.3-as mappanév. Erre csak egy dolog miatt volt szükség, túl sok hivatkozást kellett volna átírni, ha megváltoztatjuk a mappa nevét, viszont logikailag onnan kellett csatolni a csatolmányt. Viszont a parancssor a vesszőt paraméter elválasztó karakternek vette és nem tudta csatolni a vesszős nevű mappából a fájlokat. Próbálkoztam jó pár megoldással, hogy a vesszőt másként adjam meg, de vagy nem edte meg a parancssor vagy vesszőként értelmezte.
Apósom volt a postása. Így volt szerencsém találkozni vele élőben három éve. Alá irattam a saját példányomat is, valamint édesapámét is. Így még nagyobb értéket képviselnek a szememben a könyvek.
A tizedespontot tartalmazó, és dátumnak is nézhetőt dátumnak rakja be, a kötőjelest is.
Én azt szoktam, hogy Wordbe rakom, ott (ha nem zavaró a végeredményben) lecserélem a tizedespontot vesszőre, a "-"-t "_"-ra. Ha gond, akkor marad az átbogarászás, utólag.
Aposztrófot előre nem lehet berakni, majd copy-paste. (Vagy nem tudok róla.)
Sziasztok! Bizonyos adatok Excelbe történő beillesztésekor vagy importálásakor az Excel a dátumnak vélt karaktersorokat dátumformátumban írja be. Pl. a 10-12 (telefonszám mellék) helyett dec. 10 -t jelenít meg dátumformátumban. Hogyan lehet ezt a funkciót kikapcsolni? Excel 2007
Lapfülek színezgetésével és megfelelő elnevezésével közelíthető a téma max. szerintem.
Amúgy összerakhatsz egy munkalaphierarchiát egy külön munkalapon úgymond félmanuálisan. Több lehetőség van erre - de beépített opció nincs. A munkalapok között pedig egy-egy hivatkozásra kattintva lehet ugrálni. Megfelelő szintű excel tudással egész jól meg lehet egy ilyet csinálni.
"Azt tudod tenni, hogy az xx... és az yy... munkalapokat külön-külön munkafüzetekben tartod." Amikor ezt írtam, nem láttam a pár perccel korábbi beírásodat, hogy pont ezt akarod elkerülni.
"...azt szeretném,ha az "xx,xx stb" nevű munkalapjaim tudnám valamilyen módon egy mappában helyezni..."
A mappaa számítástechnikában azt jelenti, hogy bizonyos szempont szerint összetartozó fájlokattudunk benne egy csoportba tenni, így egy kattintással láthatóvá tenni őket. Aztán mappákat is lehet csoportosítani, ilyenkor az ebben lévő mappákat almappának nevezzük.
Viszont az Excel munkafüzet egyetlen fájl, így a mappa fogalma nem értelmezhető ezen belül. A munkalapok nem csoportosíthatók az általad kívánt módon. Azt tudod tenni, hogy az xx... és az yy... munkalapokat külön-külön munkafüzetekben tartod.
Szia. Csoportosítani szeretném a munkalapjaimat. Azért lenne erre szükségem mert nem 7-8 munkalapról van szó egy fileon belül,és csoportosítás nélkül már néha nehézkes megtalálni amelyikben épp dolgozni szeretnék,de nem szeretném külön fileon menteni ezeket a munkalapokat.
Amire szükségem lenne egy olyan csoportosítás ahol pl alul ahol a munkalapok vannak tudnék valamilyen csoportokat létrehozni,egy legördülő menüt akár, és ott felsorolja melyik munkalapok vannak az adott "csoportban"
Tudtommal fájlon/munkafüzeten belül nem lehet mappákat használni. Viszont a munkafüzeten belül úgy csoportosítod a munkalapokat, ahogyan csak szeretnéd - megfogod a lapfület és áthúzod oda, ahol szeretnéd ha lenne.
Sziasztok. Azt szeretném kérdezni hogy tudom e valahogy külön csoportosítani a munkalapjaimat. Képen lévő példával élve azt szeretném,ha az "xx,xx stb" nevű munkalapjaim tudnám valamilyen módon egy mappában helyezni ugyan így az összes többi munkalapjaimmal eljárva csoportosítani egybe azokat. A legegyszerűbb megoldás az lenne ha a csoportosításokat egyszerűen több file-al oldanám meg,de egybe szeretném ha meglennének. Megoldható?
Ezt könnyebb volt megérteni, mint az előzőt. :) Kicicomáztam, az Összesítés lapra tettem egy kis korrekciós lehetőséget, ha mondjuk valaki ciklus közepén hagyja ott a szakkört, akkor ott le lehet nullázni. Itt van. Kipróbáljuk az osztályfőnökkel, remélem, szeretni fogja. Köszönöm a segítséget még egyszer!
Köszönöm még egyszer a szakkörnyilvántartó táblázatot. Működik, tudom formázgatni, fejlécezgetni, megvédeni a számolt cellákat, de van egy probléma, amivel nem tudok mit kezdeni.
A szakköröket elvileg valóban heti órarend szerint tartják, de ebbe folyton belerondít valami: ünnepek, iskolai kirándulás, a tanár betegsége stb., így gyakran elmarad egy-egy. Ezért a szakkörök megtartása nem egyszerűen az eltelt idő függvénye, hanem a tanár jelzi, hogy megvolt a négy szakkör, lehet fizetni a következő adagot. Ahogy az elején írtam:
"Ha megvolt a négy foglalkozás - akár ott volt a gyerek, akár nem - akkor az osztályfőnök jelzi, hogy most be kell fizetni az adott szakkör következő díját, és kezdődik az egész elölről."
Tehát valami olyan bemenet kéne, hogy "Szakkör1 - x alkalom fizetendő". Hogy mikor telt el az x alkalom, azt nem is kell nyilvántartani, majd a következő "Szakkör1 - x alkalom fizetendő" bemenet előírja a következő fizetést. Az x az nem mindig négy, például év végén lehet, hogy csak kettő.
Esélyem sincs, hogy ezt magam megcsináljam, de ha megcsinálnád, örömmel hozzájárulnék a közben elvesztegetett energiáid pótlásához. :)
Azért jöttem vissza, hogy beírjam, hogy rájöttem, hogy cellamásolásokkal megoldható a feladat, a megoldásod nagyon elegánsnak tűnik, gratulálok és nagyon köszönöm, hogy foglalkoztál vele!
Funfact nálam MS Office Professional Plus 2021 verzió ketyeg, ha lehet hinni a névjegynek akkor 32 bites verzióban. (Bár emlékeim szerint 64 bites verziót vásároltam és telepítettem...)
Ez okozhat problémákat a gyakorlatban, ha egy ilyen egyszerű esetben is van eltérés. Persze itt látom, hogy nincs hiba, noha az ellenőrző cella hibát jelez (értéke eltér 0-tól, ezért a feltételes formázás miatt színnel jelzi a hibát)
2 db 30 tizedesig megegyező szám különbsége a 12. tizedesnél eltér 0-tól.
A B2 cella egy másik táblázatra hivatkozik, és az értéke egy másik munkalapon korábban beírt érték 1000-el való osztás, majd szorzás után. A zöld szám egy másik táblázatba beírt érték, ami értékbeillesztéssel került a D2 cellába. Az itt látható értékek formátuma szám.
Nem exceles megoldás, csak azért mertem javasolni, mert ilyen esetekben van létjogosultsága. :)
És ha jobban belegondolunk, néha jobb a dolgokat nem túlbonyolítani.
Magamból kiindulva, soha nincs olyan hogy egy táblázatom eléri a tökéletes végleges változatát, mindig elcseszem a csinosítgatással és a továbbfejlesztéssel az időt.
A jó öreg kartotékrendszer! :) Kösz a tippet, az én szívemnek kedves, és lehetett volna így kezdeni. De ha már nagy pofával bemondtam az online megoldást, nem mehetek oda egy marék színes papírral. :)
Mi van ha a tanárnő készíttet kis kártyákat, mint egy teniszklubban?
4 alkalmas kártya, és a szakkörvezetőnek szignózni kell az alkalmakat, vagy készíttethet perforáltat, melyet leszakítanak. (kb. 100 Ft/bérlet) Faék egyszerű, kevesebb feladat.
Köszönöm szépen, úgy látom, a lényeget megcsináltad, azt hiszem, ebből már össze tudok hozni valamit amivel mindenki boldog lesz. Az adatvédelem tényleg problémás lehet, azt fogom a tanárnőnek javasolni, hogy csak ő használja, a nem fizető szülőket pedig nyektesse privátban. Még egyszer köszönöm, délután nekilátok, remélem bírok vele.
Tudnátok segíteni? Befutottam az erdőbe tátott szájjal....
A gyerek osztályfőnöke láthatóan nem tudja kezelni a tíz kölök szakkörbefizetéseit, én hülye meg azt mondtam hogy csinálok neki egy on-line táblázatot hozzá. Már bánom.
Először Google spreadsheet-ben akartam, de rájöttem, hogy itt több a dimenzió, mint kettő, ráadásul a Google spreadsheet-ben Pivot tábla sincs, csak a fizetősben. Néztem ingyenes on-line adatbáziskezelőket, pl. seatable.io, de nem tudok velük se egy rendes relációt, se egy használható űrlapot létrehozni. Nem is adatbáziskezelőnek néznek ki ezek, hanem felhízlalt Excel-tábláknak. Persze simán lehet, hogy csak én nem értek hozzá.
Van valakinek ötlete, miben, hogyan érdemes ezt megcsinálni?
Az osztályban van tíz tanuló, az iskolában tíz szakkör. Minden tanuló választ magának szakkört, ahányat akar. Minden szakköröknek van egy ára, ami négy foglalkozást fedez. A tanulók befizetik, a tanárnő felírja. Ha megvolt a négy foglalkozás - akár ott volt a gyerek, akár nem - akkor az osztályfőnök jelzi, hogy most be kell fizetni az adott szakkör következő díját, és kezdődik az egész elölről.
Hogy ne kelljen a képleteket átírni az kapott fájlban lévő oszlopokra, hanem az eredeti mintában lévő oszlopok szerepeljenek, ezért a Bevitel munkalapból készítettem két másolatot. Külön a férjeknek, és külön a feleségeknek: Bevitel teszt férj és Bevitel teszt feleség néven. Így mindkettőben az E és F oszlopban vannak a vesszőhelyek, az A oszlopban a vesszővel elválasztott nevek, és a B, C, D oszlopban a szétszedett nevek. A Feri technikájával szétszedett nevek pedig a G, H és I oszlopban vannak. Végül a J oszlopba egy teszt függvényt írtam, ami üresen marad, ahol egyezik a két megoldás mindhárom oszlopa, eltérés esetén meg azt írja bele, hogy eltér.
Ezzel a megoldással a férjek esetén egyetlen eltérést nem találtam, a feleségeknél is csak a 190. soron lett egy nem túl lényeges eltérés:
Ettől függetlenül azt gondolom, hogy Feri megoldása elegánsabb, és könnyebben kezelhető. Ha nem közel egy időben írjuk, akkor nem is kezdtem volna bele.
Nagyon köszönöm a fáradozásotokat, hálás vagyok érte!
Delila10 és pimre képleteinél bizonyos esetekben, ahogy észre vettem a nevek hosszának aránya a függvényében lett hibás a végeredmény (hol belekerület egy vessző, hol lemaradt valamelyik név eleje és/vagy vége). Igazából nem értem miért, hiszen ha a műveletet manuálisan elvégeztem akkor rendben volt. Én mindenféle "HA" művelettel és csillió segédoszloppal sem jutottam el idáig. :)
Fferenc50 képlete viszont hozta a kívánt végeredmény. Néhágy új szabályt alakalmaznom kellett, mert üres cellánál és két vessző közti szóközzel fals volt az eredmény, de semmi ilyen eshetőségről nem szóltam az elején, de ezeket könnyedén orvosoltam.
A függvények alakalmazása a BEVITEL munkalapon történt, a végeredményt jelentő INDEX munkalap pedig így reszponzív módon szépen megjeleníti a kívánt tartalmat.
Hú, ez a villámkitöltés tényleg óriási. Nem ismertem, de az előző példámon kipróbáltam. Ez egy kis lépés az AI felé.
Az első nevet - nálam: Kovács,péter,sándor a közvetlen mellette lévő 3 oszlopba (B, C, D) kimásoltam. Aztán az egyes kimásolt nevek közül az elsőre állok a B oszlopban, majd a Ctrl+E lenyomására végigmásolja. Aztán ugyanezt megteszem a C és D oszloppal. Azokat is másolja, és ha valamelyiknél nincs kitöltendő adat, akkor üresen hagyja. Egy feltétel van, az A oszlopban a neveknek folyamatosan kitöltve kell lenniük. Ha üres sor van, ott befejezi a munkát.
" én egy segédoszlopos megoldást csináltam". Elegánsabb lett volna, ha azt írom, hogy én is egy segédoszlopos megoldást csináltam, mert az eredeti kiindulópont Deliláé volt.
Szia, én egy segédoszlopos megoldást csináltam. Figyelembe véve egy olyan lehetőséget, hogy akkor is működjön, ha egyetlen vessző sincs valamelyik sorban:
Megnéztem a villámkitöltést, de hiába adok meg neki mindenféle variációt, nem igazán talál benne logikát. Ahol nincs harmadik név ott megismétli a másodikat. A legjobb eredményt a "szövegből oszlopok" adja ami a vesszőket figyeli és úgy dobja szét az oszlopokat.
Viszont ez és a villámkitöltés is független a kiindulástól, így ha az eredetiben módosítok az nem jelenik meg a végső feldolgozott formában, ezért görcsölök a függvényekkel. :)
Hasonló furcsaságokat produkál mint amikor én próbálkoztam, csak a te képleteid jóval egyértelműbekk.
Bizonyos esetekben megkergül, ezeket kezdtem a HA függvényekkel kigyomlálni, de abba nagyon belezavarodtam. Pl ebben az esetben a G5 értékét nem is értem...
Legfőképp az ilyen típusú eltérések okozzák a problémát, valahol csak egy vessző van, valahol kettő, illetve a nevek hossza is változó ami az általam próbálgatott képletekben csak problémákat szül. "HA" függvények halmazával sem tudok egységes függvényeket alkotni, ami mindegy típusú cellára jó lenne.
Vesszővel elválasztott, neveket tartalmazó cellákból szeretném függvény segítségével kinyerni az adatokat, későbbi feldolgozás céljára. A cél az lenne, hogy az egy cellában szereplő 3db vesszővel elválasztott nevek, 3db különböző cellába kerüljenek. Mindenképp függvénnyel szeretném, mert az alap adathalmaz változhat és emiatt a „szövegből oszlop” átalakítás nem célszerű út.
A cellák tartalma így néz ki:
Valahogy az én agyam nem tud ráhangolódni a függvényekre. Gondolom ez megoldható LEFT,RIGHT,MID és SEARCH függvények kombinációjával. Örülnék ha a függvény Google Táblázat kompatibilis lenne.
=HA(KEREKÍTÉS(A1;2)=KEREKÍTÉS(A2;2);"OK";"Valami nem OK")
Ez azt csinálja, hogy a matematika szabályai szerint kerekíti A1 és A2 cellák tartalmát 2 tizedes jegy pontosságra. Ha így egyenlőek, akkor kiírja, hogy "OK", ha nem egyenlőek, akkor kiírja, hogy "Valami nem OK".
"Ha nem nyitja meg az excel ma reggelre a gépen a fájlokat dupla kattintással. Ami még látszik, hogy #appvlp lett társítva a fájlokhoz. A hiba egy frissítés az office-hoz (szeptember 12). Megoldás. Office-on belül fiók-nál frissítések tiltása, majd rendszergazda joggal ennek a parancsnak a futtatása: "C:Program FilesMicrosoft Office 15ClientX64officec2rclient.exe" /update user updatetoversion=15.0.5571.1000 A fenti parancs Office 2013 64 bites verzióra vonatkozik, eltérő verzió esetén módosítani kell! Ezzel visszaállunk a július 11-én kiadott verzióra."
Hogyan tudok excelben úgy pdf-filera mutató hivatkozást vagy honlapra mutató hivatkozást befűzni, hogy a befűzés után a hivatjozás neve átnevezhető legyen? Illetve fog e működni a hivatkozás, ha utána az excel file-ból pdfet készítek?
Én az új munkafüzeteket mindig a Mentés gombbal mentem, mert egyszerűbb elérni, és hozzá vagyok szokva, hogy úgyis rákérdez a mentés helyére és a fájlnévre.
De nyilván más szokásokat is ki lehet alakítani :)
Nem szeretem, hogy alapból minden cella függőlegesen lentre van igazítva. Ezért egy új füzetben minden cellát függ. középre igazítottam, majd Munkafüzet.xlsx néven elmentettem az XLSTART könyvtárba. Azóta ezzel a füzettel nyílik meg az Excel (és persze a háttérben a personallal).
Egyebeket is be lehetne állítani ebben a füzetben, pl. hogy az első oszlop dátum formátumú legyen, ha általában ilyen lapokat használunk.
Valószínűleg a másik lapon "nevek" vannak. Ezek valójában tartományok, amelyeknek saját nevük van. A Képletek menüben a Névkezelő alatt lehet menedzselni őket.
Az ilyen névvel rendelkező tartományokat meg lehet adni adatforrásként Érvényesítés során.
A kijelölt cellákra a következő képen lehet ezt beállítani:
Ki kell jelölni a cellákat.
Át kell kattintani az adatok fülre.
Majd az "Adateszköz" csoportnál az "Érvényesítés" parancs
Megengedve szövegnél ki kell választani, hogy lista.
Forrásnak be kell állítani a lehetséges értékeket
A "Legördülő lista" mellett be kell pipálni a négyzetet
Illetve nézd meg a többi beállítást is. Pl. be lehet állítani, hogy csak az érvényes listaelemeket fogadja el, ha nem olyat ír be kézzel az ember, akkor milyen üzenetet kapjon, stb.
Más fájlnevekkel nem próbálkoztam, szerintem ha sok fájl van az XLSTART mappában, akkor mindegyiket megnyitja. De valószínűleg a PERSONAL.XLSB név speciális, és csak akkor lesz rejtett munkafüzet, ha így hívják.
De ez csak az én véleményem, szerintem jobban jársz, ha szépen módszeresen kiteszteled.
Fogalmam sincs, hogy ez mitől függ. Talán Office verziótól, vagy OS verziótól, vagy a csillagok állásától...
Mindenesetre az aktuális pontos helyet ki lehet deríteni. Ha a VB Editorban a Project Explorer ablakban ráállsz a PERSONAL.XLSB feliratú projektre, aztán az Immediate ablakban kiadod ezt a parancsot:
? ThisWorkbook.Path
akkor kiírja.
És ha már megtaláltad, szerintem ez is csak egy ugyanolyan fájl, mint a többi. Ha kiveszed a mappából, akkor nem nyílik meg automatikusan, ha visszateszed, akkor megnyílik.
Rá állsz a B1 cellára, majd feltételes formázásnál új szabály. A szabálytípusnál pedig válaszd "A formázandó cellák kijelölése képlettel" opciót. Értékek formázása, ha ez a képlet igaz mezőbe írd be:
=A1=2
Formátumnál pedig állítsd be, hogy mi legyen kék (vagy amit szeretnél).
Majd OK gomb.
Utána ugyan ezt meg kell csinálni, csak a mezőbe "=A1=1" szerepeljen macskakaparások nélkül és ott is állítsd be a formátumot olyanra amilyenre szeretnéd.
Használtam már feltételes formázást, de azt csak arra a cellára tudtam beállítani ami meg is lett formázva. Itt viszont másik cella értéke alapján kell formázni.
Köszönöm. Ez az egyéni makró munkafüzet ugye az XLSTART mappában lévő personal.xlsb? Csak ezen a néven ismeri az Excel vagy bármilyen nevű .xlsb -t ebben a mappában ugyanúgy kezel? Okozhat-e problémát, ha ez a fájl csak időnként van ebben a mappában (amikor szükségem van rá), máskor pedig nincs, illetve időnként cserélgetem?
Úgy hívják, egyéni makró-munkafüzet. Elindítod a makrórögzítőt, és amikor megkérdi, hogy mi legyen a rögzítés helye, kiválasztod a lenyílóból az "Egyéni makró-munkafüzetben"-t. Aztán rögzítesz egy tetszőleges makrót. Akkor létrejön ez a fájl, a Visual Basic editorban látod, és utána oda mindenféle makrókat be lehet pakolni. Ez a munkafüzet mindig a háttérben, rejtettként nyílik meg, valahányszor elindítod az Excel alkalmazást.
Hátránya, hogy ha indítasz párhuzamosan egy második Excel instance-ot, akkor az is meg akarja nyitni ugyanezt a fájlt, és abból lehet némi kavarodás. De nem vészes.
Ha van egy ilyen makróm, akkor azt hogy lehet elérni, hogy bármelyik megnyitott Excel fájlban működjön? Korábban, mikor tömegesen volt szükségem értékbeillesztésre, úgy sikerült megoldanom, hogy egy üres makróbarát munkafüzetben volt a makró, és ha használni akartam, akkor ezt a munkafüzetet is megnyitottam. Van ennél egyszerűbb megoldás?
Először irtam egy elnézést kérő hozzászólást, jelezve a hibát. Aztán törlést kértem a moditopikban mindkettőre, és szerencsére gyorsan megtették. Láthatsz két lyukat a számozásban.
"Nálam pl. nem megy, pedig tök jó ötlet." Nem egészen értem, hogy mi az oka, hogy nálad nem megy. Nincs Menü gomb?
Sajnos vannak olyan gépek, ahol nincs. Persze van olyan, ahol a jobb oldali Windows gomb hiányzik, és csak Menü gomb van.
Ha viszont van Menü gombod, akkor lehet, hogy nem jelöltél ki másolandó cellá(ka)t? Mert egyébként működnie kellene. Vagy a menü gomb egyáltalán nem ad a gépeden helyi menüt más helyzetben sem? Mert akkor a gépeden van valami másképp beállítva.
2016-os, 2019-es és 2021-es verzió alatt próbáltam. Mindhárom verzió alatt működött. Nem tudom, hogy mikortól érhető el a jobb egérgombos menüben a gyorsgomb. Régen emlékszem, hogy egy külön ablakban kellett beállítani a beillesztés beállításait.
Nálam így néz ki a menü, a piros feliratok akkor jelennek meg, amikor ráviszem az egeret. Nálam "É" betűvel lehet köztük váltani, a második "É" betű lenyomására ugrik az érték beillesztésre.
Férfiasan bevallom én se használtam túl sokat. De tavaly év végén felmondtam a régi munkahelyemen és írtam néhány utasítást, mit hogyan csináljanak az excel táblázatokban. Akkor jöttem rá, hogy ez a legegyszerűbb és a leggyorsabb módja. Amúgy is jó magam előnybe részesítem a billentyű kombinációkat az egérrel való hadonászással szemben, mert jóval gyorsabb velük a munka.
Amikor gyerekként egy-két alkalommal voltam a sebészeten ellátáson, akkor mindig csodáltam, hogy anya milyen gyorsan lépked ide-oda a programban. Akkor még valami DOS alapú programot használtak, gyakorlatilag egér nélkül lehetett csak. Mivel addigra már nagyon sok évet lehúzott ott, így a kisujjában volt minden kombináció és szinte csak egy villanásnyi időre jött fel egy új ablak, de ő már tovább is lépet.
Igaz a gomb nevére már nem emlékeztem :) De ezek szerint egész találó neve van.
Off: Ez nekem új. Nem használtam sose. Most rákerestem, és kiderült, hogy a neve is az, amit írsz menü billentyű, angolul menu button, vagy menu key: https://en.wikipedia.org/wiki/Menu_key. Lényegében a jobb egér gomb funkcióját látja el. Mellesleg a Shift + F10 is használható ugyanerre a célra.
Ha magyar Exceled van, akkor a jobb oldali alt mellett van egy speciális billentyű, azzal menüt lehet előhívni. Ha cellán állsz, akkor gyakorlatilag jobb kattintásnak felel meg. Utána kétszer É gomb, majd enter. És máris csak értéket illesztesz be.
Egy olyan kérdésem lenne, hogy megoldható-e makróval, hogy a ctrl+v lenyomására csak az értéket illesze be, és semmi mást. Szóval formátumot, meg ilyeneket ne.
Viselkedjen úgy, mintha csak az érték beillesztésére mennék egérrel.
Mert szerintem a második csoportnak így kellene kinéznie:
A4: 2 B4: 5
A5: 6 B5: 2
A6: 9 B6: 1
És az összegzőnek is így kellene kinéznie:
C1: =SUM(A1:A3)=12
C2: =SUM(A4:A6)=17
Mert Garashan ezzel a feltétellel gondolta a javaslatát. Szerintem helyesen, különben nem stimmelnek a számaid. A Sum (A3:A6) =11 lenne (3+2+6), és a második csoportban is - bár ott két A6 szerepel - a Sum (A3:A6) ott is 17 lenne.
Légy szíves figyelmesebben add meg a képleteket, bár szerintem Garashan megoldása jó.
Nem,viszont a probléma megoldásra kerül ha nem továbbküldöm a filet,hanem megoszton megnézésre.
Egy másik kérdésem lenne.
egy nagyon egyszerű példával szemléltetve a dolgot.
A1: 5 B1: 3
A2: 4 B2: 4
A3: 3 B3: 6
A5: 2 B5: 5
A6: 6 B6: 2
A6: 9 B7: 1
C1: =SUM(A1:A3)=12
C2: =SUM(A3:A6)=17
A B oszlop az egy sorrendet jelent a számok alapján legnagyobb az 1. és így tovább.
Vegyünk egy másik példát,amivel problémába ütközöm
A1: 3 B1: 4
A2: 4 B2: 3
A3: 5 B3: 2
A5: 1 B5: 5
A6: 11 B6: 1
A6: 0 B7: 6
C1: =SUM(A1:A3)=12
C2: =SUM(A3:A6)=12
A problémám az,hogy a C1 és a C2es számok nem lehetnek egyenlőek,ez esetben szeretném ha a táblázat hozzáadna az összeshez a C1 és C2 cellában,amelyiknél a B oszlopban az "1" szerepel. Ez esetben a C2eshez,mivel az A6os számhoz tartozik az egyes szám. Ezt hogyan tudnám megoldani?
A makró megakadásról jut eszembe. három évvel ezelőtt kezdtem el írni egy meglehetősen szertegátazó interaktív programot, akkor még Office 2010 alatt. Minden rendben volt vele. Aztán, amikor a befejezéshez közeledtem - jó néhány hónap múlva -, telepítettem a 2019-es verziót. Legnagyobb döbbenetemre a program időről időre egyes helyeken megállt. Nem küldött hibaüzenetet csak megállt. Amikor megtaláltam a megállás helyét - mindig más helyen volt - akkor F5-el tudtam folytatni. Csakhogy nem magamnak szántam, és nem lett volna elfogadható, hogy így adjam át a felhasználónak. Sok találgatás után kiderült, hogy a ScreenUpdating kikapcsolása volt az ok. Hogy miért, arról fogalmam sincs. Kiirtottam, és onnantól hibátlanul működött. Kicsit rángatódzott néha a képernyő, de ezt inkább tartottam elfogadhatónak, mint a rendszeres megállást.
Az eredeti makrót évekkel ezelőtt írtam, 2016-os vagy 2019-es Office verzió alatt. Itthon 2021-es verzióm van. Tegnap este viszont jött egy telefon, hogy jó lenne, ha hasonlóan a korábbihoz itt is meg lehetne vizuálisan jeleníteni, hogy hogy áll a kamion töltöttsége. Átmásolva a makrót és a hivatkozásokat rendbe téve az új dokumentumhoz jött a fekete leves, hogy sokszor hibára fut. Még éjjel a felhasználási helyén is ellenőriztem, ott amúgy nem tudtam reprodukálni a hibát. De csak egy munkaállomást érek el távolról az 5 darabból, így kicsit idegesített, hogy itthon megakad a makró. Amióta elkészült az eredeti makró azóta amúgy nem volt vele gond, nem is volt rajta módosítva még sohasem. De nyilván, ha új munkaállomás kerülne be a rendszerbe, akkor okozhatna gondot.
Egyelőre úgy hagyom, hogy marad a dupla copy-s sor. Ha esetleg mégis problémát okozna, akkor felhasználom az általad küldött kódrészletet. Bár a sok próba alatt 1 esetben a copy sorra is hibát adott. Esetleg még a DoEvents, mint lehetőség.
Ma nem akarta az igazságot. Sohasem jött ki 0 hiba :) Az esetek 90%-ban hiba=1, 10%-ban pedig hiba=2. 3 hibát sohasem regisztrált.
Közben rájöttem még valamire. Az Application.Wait függvénynek hiába lehet letuszkolni a torkán milliszekundumokat is jó formán nem veszi őket figyelembe. Szóval tegnap csak placebó hatás volt, hogy segített. Maximum 1 pillanattal több ideje volt utolérnie magát a makrónak. Arra alapozom az állításomat, hogy ha 500 ms várakozási időt adtam meg, akkor nem volt érezhető lassulás. Viszont ha 501 ms várakozási időt adtam meg, akkor kb. 1 mp-re felfüggesztette a futást.
Itthon a Sleep függvényt nem sikerült működésre bírni, pedig biztos vagyok benne, hogy már csináltam olyat.
Elküldtem e-mailben a dokumentumot, miután kipucoltam belőle az érzékeny adatokat.
A kérdező szerint a 9. javaslat (ezen belül nyilván a Sub maybe_4) a Paste megkerülésével oldotta meg a dolgot másolással. Nem tudom, nálad is megoldás lenne ez.
Ha egyik megoldás sem működik, akkor remélhetőleg jelentkezik Jimmy. Ő már többször talált az én hasonló problémáimra megoldást.
ha a munkafüzet megváltozott, akkor törli a megfelelő nevű képeket róla
a kocsi telítettségének megfelelően beilleszt egy képet
majd a képet eltolja a megfelelő koordinátákra
Nos nekem a beillesztéssel van probléma. Eddig tökéletesen futott a makró. De most itthonról nyitottam meg és hibára futott....
A hiba:
Run-time error '1004':
Worksheet osztály Paste metódusa hibás
vagy angolul "Paste Method of Worksheet class failed"
Arra magamtól is rájöttem, hogy túl gyors neki a gépem. Hahaha. (Vagy túl lassú) Ugyanis, ha hibakereséshez betettem a következő sort 'MsgBox kepnev', akkor sohasem futott hibára.
Amúgy pedig teljesen véletlenszerűen jött elő a hiba.
Itt az egyik kommentben azt javasolták, hogy 'Application.Wait (Now + TimeValue("0:00:01"))' sort szúrjuk be és akkor csökken a hibák száma.
Tudtok erre valami elegánsabb megoldást? Hogy ne legyen annyira zavaró az 1 másodperces szünet, így levittem 250 ms-ra a várakozási időt. De attól függetlenül nem tetszik a megoldás... Illetve az itthoni gépemen így igaz, hogy csökkent az esetek száma, de nem szűnt meg teljesen. Másik gépen tesztelve viszont nincs probléma.
A kérdéses kódrészlet:
i = Variables.Range("B1").Value If i < 5 Then kepnev = "kocsi000" ElseIf i < 10 Then kepnev = "kocsi005" ElseIf i < 97.5 Then i = i / 5 kepnev = "kocsi0" & i * 5 ElseIf i <= 100 Then kepnev = "kocsi100" Else kepnev = "kocsi101" End If Range("L1:M2").Select Variables.Shapes(kepnev).Copy 'MsgBox kepnev Application.Wait Now + ms * 250 ActiveSheet.Paste
A megoldástól még messze vagyunk, de annyival előrébb jutottunk, hogy a probléma a továbbküldéstől független.
Ha jól értelek, arról van szó, hogy van egy Excel munkafüzeted, és azon az egyik munkalapot a Drive-on formázod: képeket teszel bele, betméreteket módosítasz, cellákat formázol, és mindezek a módosítások elvesznek, mikor a munkafüzet kikerül a Drive környezetből.
Jól értem? Ha igen, akkor azt, hogy mi az ok és a megoldás, egyelőre nem sejtem, csak annyit tudunk,hogy a munkafüzet letöltése után a módosítások elvesznek. (A visszaimportálás ebből a szempontból érdektelen. Naná, hogy az elveszett formázások nem jönnek vissza:-)
Szóval arra keressük a választ, hogy a Drive-on végzett módosítások miért vesznek el letöltés után. Ugye az Office verziód viszonyleg friss? Mondjuk nem 2003-as?
letöltés utáni változát sem jó nálam sem már sem driveba újra beimportálva sem microsoft excelel megnyitva,ugyan ez a helyzet ha valakinek továbbküldöm
Sziasztok. Google Driveban szerkeztett táblázatnál ha továbbküldöm a fájlt elcsúszik az egész táblázat. A képek,a betűméretek visszaváltoznak eredeti méretre,a cellák nagysága visszaváltozik eredeti méretre (microsoft excel és google driveba is)
És ha kiválasztasz egy színt, akkor annak színkódját lekérdezed a Delilától kapott lekerdezes() makróval, majd a kapott színkódot beírod a masolo() makróban a szinkód helyére és utána indítod el a masolo() makrót.
Természetesen a megtartandó képletek színkódja mindenütt ugyanaz legyen.
A betűszín használatához az If forrashely.Cells(sor, oszlop).Interior.Color = 255 Then sorában az Interior.Color helyett Font.Color álljon.
A színkód lekérdezésére nem tudok jobb megoldást, mint a VBA oldalon (ALT + F11 után) az Immediate ablakban az aktív munkalap egyik már beszínezett cellájának színét lekérdezed: Ha mondjuk az A1, akkor ezt írod be: ?range("A1").Font.Color, majd az Enter után kiírja a színkódot.
Ha nálad nem jelenik meg az Immediate, akkor a fenti menüsorban a View alatt kérd a megjelenítését.
Köszönöm, működik. Kisebb módosításokkal fogom tudni használni. Ha nem a cella háttérszínével, hanem a karakter színével különböztetem meg a képletes cellákat, akkor az Interior.Color helyett mit kell használni? Az Excel által a betűszín kiválasztásánál felajánlott színek (Alapszínek és Színösszeállítás) kódjait hol tudom megnézni?
Elmondásod alapján arra gondolok, hogy van egy sablon táblázatod, aminek mindig ugyanaz a felépítése, és mindig ebbe pakolgatod bele az adatokat, de bizonyos adatokat képlet nélkül kellene.
Ha így van, akkor én azt tenném, hogy
a sablonban létrehoznék egy nevesített tartományt, avagy "nevet" az érintett cellákból,
átmásolok mindent úgy, ahogy van, képletestül
és utána futtatnék egy olyan makrót, ami a named range összes cellájában cseréli a képletet értékre.
Pl. ha a nevesített tartományt úgy hívják, hogy "no_formula_cells", és a Munka1 lap következő celláiból áll: F8, K12, J5, A7, J8 (valójában mindegy, milyen cellák vannak benne, ez tényleg csak egy példa)
akkor a makró ilyesmi lenne:
Dim c as Range
For Each c in Range(ThisWorkbook.Names("no_formula_cells").RefersTo).Cells
De ha ez sem megoldás. Akkor a makró futtatása előtt, ha kijelöléssel kijelöli azokat a cellákat, ahol át kell vinni a képletet, akkor szerintem meglehet úgy írni a makrót, hogy ezt le tudja kezelni.
A kijelölt cellák hivatkozását el kell menteni egy tömbben. Minden átmásolni csak értékként, majd a tömbben elmentett hivatkozásokat átmásolni függvényként.
Arra gondolok, hogy a táblázat szerkezete mindig ugyan az. Mondjuk egy árajánlat adó A4-es lap. A tételek változnak és mondjuk máshonnan jönnek az árak (nyilván azokat számként kell átvinni), de mondjuk a lap alján a szummázás már lehet képlet.
De lehet, hogy életszerűbb példa, ha megrendelő lapként gondolunk rá. Akkor az eladási ár kerül át számként, míg a sorösszegnek képletnek kell lennie.
"Esetleg ha a táblázat szerkezete statikus, akkor nem kell trükközni se az eltérő formázással." Bocs, de ezt nem értem. Kíváncsi vagyok, mire gondolsz.
Készítettem is egy makrót, ami megcsinálná. Piros hátteret (színkód 255) csináltam a meghagyandó képletet tartalmazó cella hátterének.
A program végigmegy a teljes táblázaton, és mindent számmá alakít, ha nem piros a háttér, utóbbiaknál megtartja a képletet. A formázást nem tartja meg, feltételezem, hogy a célhelyen már nem lesz rá szükség.
Egyetlen munkafüzeten belül terveztem meg, Munka1 és Munka2 lapokkal:
Sub masolo()
Dim forrashely As Worksheet, celhely As Worksheet, cell As Range, utolsosor, utolsooszlop, sor As Long, oszlop As Long
Set forrashely = ThisWorkbook.Worksheets("Munka1")
Szerintem a felsorolt 3 függvénnyel meg lehet oldani. Most éppen utazok és nincs nálam papír és ceruza, de annyi a trükk, hogy fel kell rajzolni az összes lehetőséget és utána azt vizsgálni, hogy annak megfelel-e vagy sem.
A két intervallum legyen (a;b) és (x;y).
Ha nem tévedek, akkor a következő esetek kellenek neked:
x<=a<=y
x<=b<=y
a<=x<=b
a<=y<=b
Nyilván nem mindegy, hogy nyitott vagy zárt intervallumról beszélünk. Annak függvényében a relációs jelek változhatnak.
Segítségetek szeretném kérni számintervallumok közös részével kapcsolatban. A kérdés az, hogy egyik intervallum és másik inetrvallumnak van-e közös része. Nem kell kiírni mi a közös intevallum, csak hogy van-e.
Próbálkoztam órákat IF , AND , OR fügvényekkel , szémos féel relációval,, de eredménytelen.
Milyen egymásba ágyazott függvény parancsot tudtok adni erre az esetre?
Szerintem ez makró nélkül nem oldható meg. Legalábbis nem tudok olyan eszközről, amivel jelezni tudnám az Excelnek, hogy másoláskor melyik cella tartalmát másolja, és melyiknél a függvényt.
Azt viszont el tudnám képzelni, hogy mondjuk az egyik típusú cellákat - mondjuk a képletet megtartandókat - másképp formázod, pl. eltérő betűtípus, vagy háttérszín stb., majd a makró végigmegy a munkalapon (vagy annak kijelölt területén), és ennek megfelelően másolja át az értéket, vagy a képletet.
Munkám során gyakran szükséges képletekkel és hivatkozásokkal teletűzdelt táblázatok adatainak elküldése (számítások, hivatkozások nélkül). Ez egyszerűen megoldható munkalapon végzett másolás-értékbeillesztés funkcióval. Bizonyos esetekben szükséges, hogy egyes cellákban a képletek a továbbküldött táblázatban is megmaradjanak, mások helyett csak érték szerepeljen. Jelenleg úgy oldom meg, hogy a számként beillesztendő tartományokat egyesével másolom a küldendő munkalapra, ám ez nagyméretű és bonyolult táblázatoknál időigényes. Van-e arra mód az Excelben, hogy egy-két lépésben csak az értékeket illesztem be, de a beillesztési területen lévő bizonyos cellák (a képletet tartalmazók) ne módosuljanak? Többszörös kijelölés ebben az esetben nem működik. Excel 2007 verzió.
Bocsi, közbe jött egy kis nyaralás, és nem tudtam vele foglalkozni.
Nagyon köszi a segítséget.
Ez a mondatod segített: "a másik az, hogy az input adatokkal van valami gond. Olyan adat keveredett be (pl. szám helyett string), amivel nem tud mit kezdeni"
Átnéztem az utoljára bevitt adatokat, és egy dátum formátum volt a hibás.
Az OTP excel táblájából másoltam át egy dátumot, amely látszólag ugyanolyan formátumú volt mint az enyém, de mégsem tetszett neki.
Sajnos az ismétlődések nem lehet ilyen egyszerűen, de jófelé kapirgálsz.
Csakhogy a DARABTELI függvénynek nem lehet tartományt/tömböt megadni kritérium paraméterként, ezért minden keresett értékre egyenként kell felírni a függvényt és a találatokat összegezni. Ezt lehet egy cellában is, a példádban a J15 cella képlete ez lenne:
A DARABTELI függvényeket beteheted segédcellákba és a végén összegzed. A képen így van, láthatod a J2 cella képlete megegyezik az előző képlet első DARABTELI függvényével és a képlet húzható lefelé és oldalra is.
Annyi DARABTELI függvényre van szükség, ahány keresést szeretnél végrehajtani. Természetesen az első paraméter (Tartomány) nem csak egy oszlop lehet, de összefüggőnek kell lennie.
Ha képlettel is lehetne, az lenne a legjobb, egyszerű, elegáns megoldás. Megpróbáltam analóg módon felírni azzal, ahogy mutattad, a 4-nél kisebb formázásra, de nem ment. Nekem ismétlődő értékek feltételes formázásra kellene. Mutatom a konkrét példát:
A J15 cellába ezt írtam: =DARABTELI(E2:E36;"="& E38:E44)
Gondolom az E38:E44 tartomány felírását kellene másképp. Legalábbis, ha csak annyit írok be, hogy E38, akkor beírja az 1-et. Próbáltam / jelekkel elválasztva:
=DARABTELI(E2:E36;"="&E38/E39/E40/E41/E42/E43/E44), de így nem jó, pedig végül is ez a kritérium kellene: ha egyenlő ezzel vagy ezzel vagy ezzel…
Meg lehet így valahogy, mit kellene beírni a / helyett?
2007-es Excel-t használok, szégyellem is magam, de újabbat nem sikerült beszereznem. Kerestem online használható verziót, de az meg nagyon más, a makrókat pl. sehol nem találtam benne, pedig szerettem volna kipróbálni és végre látni szépen megszámolt színes cellákat.:)
Megpróbálok szerezni újabb verziót. Köszönöm a segítséged! Talán ezzel érem el a régen várt áttörést az életemben.:)
A cellát szerintem nem lehet több színűre színezni.
Viszont beszúrhatsz képeket a munkalapra és azokat beformázhatod és hozzákötheted egy cellába.
Beszúrás - képek beszúrása. Ha nem találod itt, akkor a beállítások - menüszalag testreszabása - gyakori parancsok között találod meg, ebben az esetben a menüszalagon létre kell hoznod egy új egyéni lapot.
Egy utolsó kérdésem még lenne,talán ez nem is megvalósítható.
Egy adott cella színét lehetséges több színűre állítani? a példám kedvéért,azt szeretném elérni ha néhány cellám a Magyar zászló színeiben nézne ki. Egy átszerkeztett képet mellékelek,amiből látszik hogy nagyjából mire gondoltam.
Vagy ha így nem jó, hová célszerű feltölteni, hogy láthassad?
Gondoltam, nézek valahol online használható Excel programot vagy töltök le valahonnan, de nem tudom, honnan lehetne. Talán úgy indulhatnék tiszta lappal és úgy működne, ahogy nálad. Bár lehet, nem ez a gond.
Üdv. Köszönöm a választ. a g2es képlet tökéletesen működik. a h2esnél viszont hibát ír (Az argumentumok száma nem megfele a(z) MATCH függvényhez. 2 és 3 közötti argumentumot várt,4érkezett)
mindenesetre kitudnád másolni azt a képletet is,mert lehetséges hogy én írtam ki rosszul.
A minta cella betűszíne biztosan fekete, mert az írja ki a makró és a képen is annak látom. :(
Így néz ki a kijelölés nálam, mielőtt elindítom a makrót (ezt a Ctrl billentyű nyomvatartásával lehet elérni):
Talán kevésbé látszik, de az F1 cella betűszíne is piros.
A betűszín miatti összesítést akkor is megcsinálja, ha a kitöltőszínnel nem foglalkozunk:
Tehát csak a betűszín alapján is összead. Ez nyilván akkor probléma, ha ugyanazon betűszinhez más-más háttérszín van párosítva eltérő feltételekkel. Ez utóbbira is van megoldás.
Most igazából azt kellene elérnünk, hogy nálad is ugyanúgy működjön, ahogyan kell.
Esetleg valahova fel tudnád tenni ezt a minta fájlodat, hogy ránézhessek?
Természetesen az is fontos, a kijelölés a leírt sorrendben történjen: vizsgálandó terület - utána mintacella - végül a célcella!
Sajnos nem ez baj. A feltételes formázásnál nem csak a cellaszínt változtatja, hanem a betűszínt is(piros kitöltőszín, sötétvörös szöveggel), a formázott cellákban nem fekete betűk vannak. Meg a 2.próbában, ahol csak egyenként változtattam a betűszíneket, nem feltételes formázással, ott sem működik.
Azért kipróbáltam a FONT-ot INTERIOR-ra cserélni, ahogy írtad, de nincs változás, ugyanazt írja be.
Ahogy belegondoltam, valószínűleg tényleg jó lehet a makró, hiszen nálad jól működik. Valamilyen beállítás lehet a gond, környezet, ami nálad más, mint az én gépemen. Csak nem tudom, mi. Ajj… pedig már majdnem jó.:)
Ja, meg a 2.próbából az is következik, hogy nem csak a feltételes formázást nem veszi figyelembe, hanem az sem érdekli, hogy külön megváltoztattam a betűszínt.
Azt hiszem, az a gond nálad, hogy a feltételes formázást a cella kitöltő színére adtad meg. A makró pedig a betűszint vizsgálja (FONT.COLOR). Ezért is irja a végén, hogy betűszín 000000, azaz fekete, hiszen minden betű fekete színű a cellákban.
Ha a kitöltő színre szeretnél keresni, akkor a FONT -ot INTERIOR-ra kell cserélned a makróban a két helyen. Mert nem mindegy, mit vizsgálunk.
Egyenlőre azt javaslom, ha kitöltő színre szeretnél vizsgálódni, akkor másold át a makrót egy új névvel és ott INTERIOR legyen a FONT helyén, a kiírásban pedig a betűszínt írd át kitöltő színre vagy egyszerűen csak színre.
Más: 1. Azokat a cellákat, amelyekben nincs érték, azt kihagyja a számolásból. Sajnos a feltételes formázás ezt úgy értékeli, hogy kisebb, mint 4 :( ezért színezi be.
2. A 4. próba cellaszáma sem "helyes" az elvárásod szerint, hiszen mindenhova 6-ot írt, ugyanakkor a makró feltételei szerint jó.
Kipróbáltam, de valamiért nem úgy működik, mint neked. Vagyis rosszul működik.
Az 1.próbában kisebb, mint 5 feltételes formázott számok vannak.
A 2-ban egyenként változtattam meg a betűszínt, hátha csak a feltételes formázást nem veszi figyelembe.
A 3-ban megpróbáltam mindent pontosan ugyanúgy, ahogy te mutattad a képen, kisebb, mint 4 feltétellel formázva.
De nekem nem számolja. Mit csinálhatok másképp, mint te?
A 3.próbában, érdekes, hogy 5 darab cellát adott eredményül, tehát nem csak simán az összes cellát megszámolja az adott oszlopban, hanem csak ahol valamilyen érték van. Vagyis valamit biztosan csinál. Illetve a számok összegét is beírja, bár a feltételes formázást ebből a szempontból sem veszi figyelembe. Mondjuk azt sem értem, hogy a feltételes formázás miért színezte be azt a cellát, ahol semmilyen érték nincs.
Negyedszerre kipróbáltam, hogy ha kitörlöm az eljárásból az output végét
akkor csak egyetlen számot ír be, az adott oszlop színes celláinak számát, nekem ez kellene. Vagyis elvileg azt írná be. Tehát valószínű, az eljárásban van a hiba, nem én csinálok rosszul valamit. Már bocsánat, hogy így mondom, de sajnos nem értek hozzá eléggé, pedig nagyon érdekes dolog.:)
Esetleg valami ötlet, miért nem sikerült nekem ugyanaz, mint neked, az alapján, hogy mit csinál nálam a kép szerint?
Sajnos olyan függvény nem működik, amely a feltételes formázás paramétereit figyelembe véve írná ki a kívánt értékeket. Azonban egy kis ügyeskedéssel elérhető, hogy egy menetben írja ki a kívánt értéket.
A következő módosított eljárást másold be egy modulba:
Sub SumCountByConditionalFormat2() Dim indRefColor As Long Dim cellsColorSample As Range Dim cntRng As Range Dim curRng As Range Dim cntRes As Long Dim sumRes Dim cntCells As Long Dim indCurCell As Long Dim colNum As Long Dim indCurColumn As Long Dim colRng As Range Dim clRng As Range Dim outputRng As Range If Selection.Areas.Count <> 3 Then MsgBox "Nem tudom, melyik területtel számoljak!" Exit Sub End If On Error Resume Next
cntRes = 0 sumRes = 0 With Selection Set cntRng = .Areas(1) Set cellsColorSample = .Areas(2) Set outputRng = .Areas(3) End With cntCells = cntRng.Cells.Count colNum = cntRng.Columns.Count indRefColor = cellsColorSample.Cells(1, 1).DisplayFormat.Font.Color indCurColumn = 0 For Each colRng In cntRng.Columns For Each clRng In colRng.Cells If indRefColor = clRng.DisplayFormat.Font.Color Then If Not IsEmpty(clRng) Then cntRes = cntRes + 1 sumRes = WorksheetFunction.Sum(clRng, sumRes) End If End If Next outputRng.Offset(0, indCurColumn).Value = cntRes & " Darab " & Left("000000", 6 - Len(Hex(indRefColor))) & Hex(indRefColor) & " betűszínű cella összege: " & sumRes cntRes = 0 sumRes = 0 indCurColumn = indCurColumn + 1 Next End Sub
Hogyan működik:
Ki kell jelölnöd a Ctrl billentyű segítségével 3 tartományt: 1. ahol a megszámolandó értékek vannak 2. ahol a minta van 3. ahova az eredményt szeretnéd látni. EZUTÁN lehet a makrót elindítani a Fejlesztőeszközök - makrók menüpontból.
Képen így néz ki a kijelölés pl:
Kijelöltem az A1:C6 tartományt, majd a Ctrl gombot nyomva az F1 továbbá az akkor még üres I1 cellát. A kijelölés sajnos nem látszik a képen valami miatt.
Ezután indítottam a makrót.
A makró az első kijelölt terület oszlopain végig megy, megszámolja az F1 cellában levő minta szerinti cellákat és az eredményt beírja a harmadik terület következő cellájába. A minta a piros betűszínt tartalmazza feltételes formázásban a 4-nél kisebb cellákra.
Állj bele a kimutatásba, jobbklikk-frissítés, jobbklikk-kimutatás beállításai, Adatok lap, és ott kell beállítani, hogy frissüljön, vagy mentse el a forrást.
Szerintem ennyi információból sötétben tapogatózás lenne találgatni, hogy mi lehet a hiba oka. Az ilyen hibakódok önmahukban keveset mondanak. Ha látjuk hozzá a hibás sort, ahol a program elakadt, az talán többet elárulna, de még az sem biztos,hogy elég.
A lehetséges okok közül a legkevésbé valószínő, hogy "az excel eghülyült". Nem szokott:-)
Az sem valószínű, hogy a makró módosult úgy, hogy eddig jól működött, most meg már nem. Ilyet se szokott csinálni.
Így távolból két lehetőségiet tudok elképzelni:
Az egyik, hogy a makróban van valami hiba, de az eddig használt adatokkal nem futott rá a hibás sorra, a másik az, hogy az input adatokkal van valami gond. Olyan adat keveredett be (pl. szám helyett string), amivel nem tud mit kezdeni, vagy sérült a letöltött fájl.
Ha nem bizalmas adatokról van szó, akkor jó lenne, ha feltöltenéd a munkafüzetet a makrókkal együtt felhőbe, és megadnád a linket.
Ha ez nem megoldható, akkor nincs igazán ötletem a megoldásra.
Hasznos volt a segítséged, egy lépéssel közelebb jutottam, de sajna még mindig nem jó. Mutatom, mit csinál az a makró, amit a linkelt részletesen magyarázó angol nyelvű oldalon találtam.
Valami nem jó benne, mert nem csak a piros, hanem az összes cella összegét adja meg. És a cellák száma is az összes, nem csak a piros.
Az tényleg működik, amit írtál módosítást, beírja a cellába az eredményt, ez tényleg jól jön, így szeretném. Ha jól látom, akkor a makróba kellett beírni, hogy az F1 cellába írja. Nekem az kellene, hogy beírja egy adott cellába az eredményt és utána kitöltéssel az egész keresést kiterjeszthessem a szomszédos cellatartományokra is, és oszloponként beirkálja az eredményeket, mint ahogy egy függvénnyel csinálnám. Ezt ezzel nem lehet?
Engem egyébként nem érdekel a piros cellákba írt számok összege, csak az egy tartományban található piros színű cellák száma. De úgy tűnik, ez sem olyan egyszerű…
Sziasztok, most egy idegen gépen dolgozom. Office 365. Amikor keresek és nem találja a megadott szöveget, akkor hangjelzést ad. Enélkül is rájövök, hogy nem találja:-). Hol tudom kikapcsolni ezt a funkciót?
1." halvány, nem aktív a „létrehozás, futtatás” gomb" Az első részben levő kódok mind függvények és nem eljárások! Ha megfigyeled, Function a kezdetük, zárójelek között a nekik szükséges paraméterek vannak. Ezek nem számolják meg a feltételes formázás által kiváltott színeket.
2. Count and sum conditionally formatted cells cím utáni részben viszont a feltételes formázás eredménye is megszámolható. Itt nem függvény van, hanem eljárás - ami Sub kezdetű és nincs utána paraméter. Használata a következő címben van megmutatva:
How to count and sum conditionally formatted cells using VBA macro egy cellát be kell színezni a keresett színnel, utána ki kell jelölni a megszámolni tervezett területet. Elindítani a makrót, megadni neki azt a cellát, amelyben a keresett szín van.
A Sub SumCountByConditionalFormat() makró a kitöltő színt vizsgálja. Ha a betűszin szerint szeretnél számolni, akkor az Interior -t mindenütt Font -ra kell cserélned benne.
Ha az eredményt cellába szeretnéd íratni, akkor az End Sub előtt End If elé ezt a sort írd be:
Próbáld ezen a linken Excellel megnyitni ezt a fájlt! Ez egy DropBox Public mappa, de zavaros elöttem a működése. Ez csak egy modell, de ha meglátod benne a fantáziát, ki lehet dolgozni egy óra alatt.
Szívesen. Azért ha módosulnának az input adatok, mondjuk a második pont után is elmennek 9 fölé a "számok", akkor jelentkezz. Arra is van elképzelésem. Ott bevezetnék egy újabb segédoszlopot, amelyik az elsőnek az adatait nézi át hasonló módon, ugyanis további egymásba ágyazott függvények alkalmazása meglehetősen nehezen lenne áttekinthető.
Sajnos én eddig csak az általad a 37424 hozzászólásodban talált kód technikai kérdéseivel foglalkoztam: Miért adott hibajelzést elsőre, aztán miért nem működik az Alt + F8 az UDF függvény esetében.
A függvény érdemi részével egyáltalán nem foglalkoztam, és most nem is nagyon tudnék elmélyedni benne. Remélem, lesz itt, aki megnézi, és javítja a függvény használhatóságát.
Működik, ha egy számsorban megváltoztatom a cellaszínt, azt tényleg megszámolja. De nekem arra kellene, hogy az ismétlődő értékeket feltételesen formázott cellákat (piros kitöltőszín, sötétvörös szöveggel) számolja meg, de ezt nem csinálja.
Végigpróbáltam 1-10-ig a számokat a piros 3-as helyére, hátha a piros/sötétvörös különbség a hiba, de nem. Mintha az ismétlődő értékek formázást nem venné figyelembe.
Keresgéltem máshol is és találtam egy oldalt, ahol leírnak lépésről-lépésre kezdőknek mindent ezzel a cellaszín számolással kapcsolatban, de ott meg a VBA kód futtatásánál akadok el, halvány, nem aktív a „létrehozás, futtatás” gomb. Bár nem tudom, az figyelembe venné-e az ismétlődő értékek formázott cellaszíneket.
Amit te most használni akarsz, az nem Alt+F8-al indítható makró, hanem UDF, azaz User Defined Function, magyarul felhasználó által definiált függvény, egyszerűbben felhasználói függvény. És mivel függvény, ugyanúgy viselkedik, mint az Excel beépített függvényei.
Ahogy az általad belinkelt példa írja, egy Excel munkafüzetben beírod a következőt:
=CountColor(B1:B11;IGAZ;3)
És itt megadod a vizsgált tartományt, aztán ha háttérszínt akarsz vizsgálni, akkor igaz, egyébként hamis, majd a vizsgált háttérszín kódját adod meg. A példában 3.
És ha ezeket beírtad, akkor végzi a dolgát.
Megjegyzés: Az ilyen függvényeket általában nem egy szokásos munkafüzetben használjuk, hanem saját függvénygyűjteményben, ami a háttérben van, de mindig elérhető. Egy úgynevezett Personal.xlsb munkafüzetben, ami egy erre a célra fenntartott helyen van, és a háttérben mindig rendelkezésre áll. De erről most elég ennyi.
Még annyit, hogy az Alt + F8-al indítható makrók kezdősora nem Function(), hanem Sub(), de erről majd később, ha egyáltalán érdekes lesz.
Természetesen Neked kell megadnod, hogy az Adat lap melyik celláját melyik sorba és oszlopba másolja a Nyomtatni lapon. Eszerint kell átalakítani a makrót.
Nagyon műkedvelő szinten foglalkozom az Excel-lel, hiányoznak az alapok, de azért már sok mindenre rájöttem. Itt viszont most megint elakadtam. Még soha nem használtam makrót. Ahogy megtudtam, azt úgy kell, hogy miután beillesztettem a kívánt VBA makrót(cellaszín) és visszatértem a munkafüzethez, nyomok egy Alt+F8-at, hogy elérjem a Makró párbeszédablakot. Itt kellene kiválasztani a kívánt makrónevet és elindítani, de nálam minden gomb halvány, nem lehet az Indítás-ra kattintani. Gondolom, valami beállítás hiányzik hozzá, de nem tudom, hol találom. Tudnál még ebben segíteni?
"...így ránézésre nem biztos, hogy pontosan azt csinálja, amire én gondoltam." Valóban nem, tekintve, hogy Delila sem gondolatolvasó:-)
Most, hogy megadtan az űrlap elrendezését, már biztos meg lesz oldva a kérésed. Még egy olyan apróság lehet kérdés, hogy az összes nyomtatandó adat a mintádon középre pozicionált, a motortérfogat kivételével. Ez szándékos? Vagy nincs jelentősége?
Köszi, a hét második felében tudom majd kipróbálni, de így ránézésre nem biztos, hogy pontosan azt csinálja, amire én gondoltam. Persze lehet nem voltam egyértelmű, illetve lehet hogy azt csinálja, mondom még kezdő vagyok nagyon VBA-ban.
De biztonság kedvéért teszek be példát. Az adatokat csak kitaláltam, de arra jó, hogy lássátok, mit szeretnék.
Adat fülön első ID a "202213", ezt bemásolva a nyomtatni fül B2-es cellájába, betölti a hozzá tartozó adatokat, amit kinyomtatunk. Aztán bemásoljuk az Adat fül ID - 202244-et, ami a soron következő, szintén a nyomtatni fül B2-es cellájába és bekeresi a hozzá tartozó adatokat, amit kinyomtatunk. Aztán megyünk a következő ID-ra és így tovább, amíg van az Adat fül ID oszlopban (ez mindig változó, hogy éppen hány sor adat van)
Szóval ezt szeretném, hogy VBA menjen végig egyesével az összes ID-n, amíg van adat és mindene egyes ID betöltés után nyomtassa ki a nyomtatni oldalt.
Szia, Excel függvényes megoldást nem tudok, mivel ezek nem számok, hanem stringek.
Egy segédoszloppal talán meg tudnád oldani. A C2 cellába írd be a következő képletet, és húzd végig lefelé, majd rendezd a táblázatot a c oszlop szerint:
Mi arra a megoldás, hogy egy adatbázisból kinyert és a bal oldalon felsorolt elemekből, egy a "Pos" oszlop szerint növekvő sorrendet kapjak. Ha egyszerű módban próbálom elrendezni, fura lesz az eredmény - jobb oldal - mert az A1.1 után az A1.10 jön ami logikus lehet, de nekem ott az A.2-nek kellene következnie. Tehát például az A1.7.1 és A1.7.2 ... az A1.7 altételei, tehát azoknak azt kell követniük jó sorrendben.
Excel 2007-ben kellene függvény, ami megszámolja B1:B11 tartományban a piros írószínű cellákat.
Találtam egy hozzászólást erről a problémáról, hogy UDF-fel lehet, de valamiért nem működik. Ha a függvény beírása után Entert nyomok, azt írja:” Compile error: Expected: type name”.
„Ezt csak UDF-fel lehet megcsinálni:
Function CountColor(MyRange As Range, fontbackgr As Boolean, colorcode As Integer) Dim iCount As Long, i As Long Application.Volatile iCount = 0 For Each Cell In MyRange If fontbackgr Then If Cell.Font.ColorIndex = colorcode Then iCount = iCount + 1 End If Else If Cell.Interior.ColorIndex = colorcode Then iCount = iCount + 1 End If End If Next Cell CountColor = iCount End Function
Használata: =CountColor(B1:B11;IGAZ;3) range írószín: IGAZ háttérszín:HAMIS A harmadik paraméter a keresett színkód, a 3 pl. a piros. Ez a példa tehát a B1:B11 tartományban számlálja meg a piros írószínű cellákat.”
Erre van kész megoldás az Excelben. A kérdés az, hogy a Nyomatóoldal formájára nézve mennyi a valódi megkötés? Pl. ha egy nyomtatványt kell kitölteni, az nem egyszerű, de ha csak egy jól tervezett adatlap készül belőle, akkor az nem probléma.
Makrókat ismerem, makrófelvevővel. VBA-val most ismerkedem.
Lenne egy feladat :)
Van egy excel munkafüzet, két munkalappal Az egyik munkalapon rendszerből lekért adatsor van, különböző adatokkal. Ez a táblázat minden egyes lekérésnél módosul, attól függően, hogy milyen intervallumra kérjük le az adatokat. Több oszlop van - minden oszlopban más jellegű adat. Az egyes sorok, egy-egy ID-hoz tartoznak. A másik munkalapon van egy összeszerkesztett nyomtatási forma, amivel kinyomtatjuk az egyes ID-k jellemzőit.
A nyomtatatást úgy csináljuk, hogy az Adat fül első oszlop első ID-t átmásoljuk (CTRL+C / Ctrl + V) a nyomtatási fül megfelelő cellájába és akkor a nyomtatási lapon kitölti a megfelelő bekeresett adatokkal (az Adat fülről) és kinyomtatjuk azt az 1 oldalt. aztán kimásoljuk az Adat fül első oszlop második ID-t és bemásoljuk ismét a nyomtatási fül adott cellájába (ez fixen mindig ugyan az) és akkor betölti az ehhez az ID-hoz tartozó adatsort és kinyomtatjuk. És így megyünk egyesével sorba az Adat fül első oszlopának celláin, addig amíg van benne adat és kinyomtatjuk egyesével.
Nekem kellene egy olyan VBA, amit aztán makro gombra tennék és onnan indulna, hogy autómatikusn betölti az első ID-t, kinyomtatja, aztán lép egyet tovább az ID oszlopban, betölti a másodikat, kinyomtatja, aztán ismét lép egyet a következő ID-ra és így tovább, mindig addig amíg van adat az ID oszlopban.
Szóval ne egyesével keljen adott esetben 50 különböző ID-t betölteni és kinyomtatni, hanem egy gombnyomással futtasa végig az excel egyesével és nyomtassa ki, addig amíg az Adat fül ID oszlopában van adat.
(ez az adatsor változik, van amikor 5 sor van, de van amikor 50)
Gondolom vmi ciklussal kell az utolsó adatig bekeresve.
Szeretnék segítséget kérni egy feladat megoldásában.
Van egy táblázat. Mindegyik sorban adatok vannak.
Azt szeretném, hogy a 8. sorban, ahol lefelé folytatódna a táblázat, befüggvényezni, hogyha A vagy B terméket mérjük akkor <és egyenlő 1.48 és 1.50 egyenlő és < számok esetén pirosodjon a cella.
Viszont egyszerre kellene, hogy függvényezve legyen a C termék is, csak az <egyenlő 1.50 és 1.52 egyenlő és < értékekre pirosodjon be a cella.
Ezek a termékek (A B C) az I oszlopban vannak, tehát ha az I oszlopba beírjuk, hogy pl. C, akkor eszerint kellene, hogy működjön a következő sorban a cellák bepirulása. C-hez tartozó 1.50 - 1.52 tartományban.
Ha A vagy B van az I oszlopban akkor meg az 1.48 - 1.50 tartományban.
Ha 3-4 lépésből megfelel, akkor a következő a megoldás:
1. A segédoszlop 1. sorába beírsz valamit. Aztán Shift + Ctrl + End kijelöli a teljes táblázatot. Aztán Shift + balra nyíllal visszalépkedsz, hogy csak a segédoszlop legyen kijelölve.
2. Ctrl + D megnyomása a teljes segédoszlopba bemásolja az első sorba írt adatot.
3. Innentől már működik a Garashan által a 37405-ben javasolt megoldás a teljes táblázatra, közte az üres sorokra is.
Szerintem többszörös szűrő alkalmazással talán egyszerűbb:
Először kiszűrni az üres cellákat - ide hozzá lehet venni még a számokat is ha kevés van belőle.
A kiszűrt sorokat kijelölni és törölni.
Ezután a maradékot szűrni egyéni szűrővel, nagyobb mint 0-ra. Ezeket a sorokat is törölni.
A szűrőből még látható a maradékban levő kritikus - nem szükséges érték, azokat is ki lehet jelölni és törölni.
Persze a számoknál fontos, hogy valóban számok legyenek, pl. az első példád ugye nem kellene, de egyik feltétel sem szűri ki (legalábbi nálam szöveg lett a másoláskor).
Egyéni szűrővel elég sok variáció lehet. Pl. Nem tartalmaz * feltétel az üres és a számot tartalmazó cellákat egyaránt mutatja. A tartalmaz * feltétel a szöveget tartalmazó cellákat szűri ki. (* = csillag karakter.)
Mutatja v. kiszűri = a szűrés eredményeként látható.
Hát, próbáltam egyértelműen írni, de azért csak sikerült félreérteni.;)
Ilyenek vannak:
0:13-24
fekete
189/4
kerekes kocsi
739:4
12 valami
Erre kellett megoldás, hogy csak azok a sorok kerüljenek ki szövegfájlba, ahol szöveg van, az üres sorok és a számok az egyéb írásjelekkel nem. Problémá, hogy néha a szöveges sorok is sámmal kezdődnek.
Erre jött a megoldás, amit legelőször írtam, sorbarendezés után törlés, majd a segédoszlop alapján a sorrend visszaállítása és mehetett a szövegfájlba mentés már segédoszlop nélkül.
Mutatnál egy rövid példát, mert számomra értelmezhetetlen, hogyan kerülhet egy sorszámozott táblázatba üres sor, illetve mi legyen az üres sorokhoz tartoz(and)ó sorszámmal. Előtte-utánna helyzet lenne jó.
Akkor szerintem makróval lehetne a leggyorsabbá tenni a dolgot. Ha estig nem ír valaki használható megoldást, akkor ha gép előtt leszek kreálok hozzá egy makrót.
Van olyan oszlop amiben minden sorban van adat, kivéve az üres sorokat?
Kijelölöd az első két cellát, amibe beírtad a sorszámokat, majd a jobb alsó sarokba dupla klikk. Ha nincsenek üres sorok, akkor az utolsó sorig lehúzza a sorszámokat.
Sorszámozásra keresek egy gyors módszert, mert sokezer soros táblázatoknál már sokáig tart a hagyományos lehúzásos megoldás.
(táblázat elé üres oszlop beszúrása, első két cellába 1 ill 2 szám beírása, majd egérrel a pluszjel lehúzva a táblázat aljáig - illetve valamennyivel tovább, és a felesleges sorok törölve)
Az előző bejegyzésedre: nyilván rengeteg olyan eset van, amikor látni kell a 0 eredményt, erre nem megoldás a 0 kikapcsolása.... :(
Csak egy másik ötlet: duplikálni a lapot, a duplikációt elrejteni, a képlet pedig hivatkozhat a rejtett lapra. Képletet módosítás ellen levédeni, sőt el is lehet rejteni a beállításokban (nem a betűszínre gondoltam most) - cellaformázás - védelem - rejtett, az érvényesítéshez be kell kapcsolni a lapvédelmet.
Köszönöm! Az első megoldás (nulla megjelenítésének kikapcsolása a Beállításokban) tök jónak tűnt, amíg ki nem derült, hogy nem csak a keresőfüggvényekre hat, hanem mindenre (pl. SZUM). De meglesz az.
Szia! Úgy mellékesen szerintem MS igazán megoldhatta volna már az elmúlt évtizedek alatt, hogy a beépített Excel függvényei meg tudják különböztetni az üres cellát a 0 tartalmú cellától. Nem hiszem, hogy olyan nagy fejlesztést igényelt volna, így meg a szerencsétlen felhasználó küzdhet vele minden alkalommal. (Nem igazán elegáns, sőt bosszantó a HA függvény ajánlgatása....)
Ez volt a helyzet a HAHIBA függvény bevezetése előtt minden hibás eredmény "eltüntetése" érdekében, most legalább van már ez a függvény.
Egy szintén nem igazán elegáns megoldás, de a HAHIBA függvény alkalmazását lehetővé teszi, ha az üres cellákat feltöltöd hibás művelettel, pl. =1/0 képletekkel, amit aztán át is alakíthatsz értékké. Ha később mégis kerül oda érték, akkor simán átírható és a képlet működni fog továbbra is.
'reggelt! Hogy lehet elérni, hogy az XKERES ne nullát adjon vissza, ha a keresési tömbben megvan a keresett adat, de a visszaadandó tömb aktuális mezője üres? Üres mezőre lenne szükségem. A képlet a G5-ben:
=XKERES("I2";Staff[ID];Staff[Spec.];"";0;1)
A hibakezelők (szerintem) nem alkalmazhatók, mert nincs hiba, a keresett adat megvan. Így kezelni tudom, hogy hogynézmárki? :)
A makró amit kaptam tőletek teszi a dolgát jól. :)
A kérdésem/kérésem az lenne. - 1=Kijelölöm a 20 sort és az 5 (A.B.C.D.E.) oszlopot 2=A makrót indítom. 3=A BB1 sorba elkészíti a feladatát. - A következő kijelölés és makró indításával felülírja a BB1 sort és teszi a dolgát.( ezt tudja most a makró ) - A többi makró indításkor kellene vele megoldatni hogy ..... 1. kijelölés és makró indítás BB1 sorba írja ( ezt tudja most a makró ) 2. kijelölés és makró indítás BB2 sorba kellene iratni az eredményt ( ezt még nem tudja ) 3. kijelölés és makró indítás BB3 sorba kellene iratni az eredményt ( ezt még nem tudja ) 4. stb.... - Ezzel a módosítással teljesen ki lenne maxolva ez a makró amire nekem kell. Az esetleges segítséget előre is köszönöm.
Szerbusz. Köszönöm a makrós megoldásod.Teszi a dolgát és " duplikál" is serényen :) Egy kis hiba van azonban. " BB1-től írja emelkedő sorrendbe a számokat." --- nem teszi sajnos :( Rendezetlenül írja a sort, nem veszi figyelembe az emelkedő számsorrendet. - Köszönöm a segítségedet előre is.
Ha összetettebb megoldást szeretnél, akkor makrót kell írni.
Vagy szintén feltételes formázással szöveg.keres függvényt kell használni. Akkor a részeredményeket is színezi. Pl. alma kereső szóra az almafa szót. Míg Delila10 megoldása csak a pontos találatokat színezi.
A megyék kikeresése szerintem egy egyszerű FKERES (VLOOKUP), pl.: =FKERES(2100;C:E;3;HAMIS), ami visszaadja a 2100-ra (Gödöllőre), hogy Pest. Ha viszont régiót is szeretnél, akkor a neveiket vagy minden megye mellé oda kell írnod egy plusz oszlopba, aztán ugyanúgy FKERES, vagy egy másik munkalapra/táblázatba bemásolni a 19+1 megyét, mellé a régiót és ezen a táblázaton FKERESs. Az utóbbinak az az előnye, hogy csak egy helyen kell javítani, ha hibás.
A keresésnél ügyelj arra, hogy ne keress településnév szerint, mert több olyan település is van (nem csak Bp.), amelyiknek több irányítószáma van.
Köszönöm ezt beimportáltam és tovább? :) Sajnos nem megy. Irányítószám megvan és a település név. A megyét kellene mellé írni egy oszlopba. A régiókra gondoltam Pest, Közép-dunántúl stb...
Sziasztok! Tudna esetleg nekem abban segíteni valaki hogyan lehetne iárnyítószám/ település név mellé megyét párosítani és utána országos régiókra bontani? Valami külső adatbázisból importálni esetleg. A TikTokon láttam néha egy-két ilyen videót de nem találom. A válaszokat előre is köszönöm.
Van 4 oszlop (5000 sor) és ebben szeretném megkeresni azokat a sorokat amik ugyanazt tartalmazzák, azaz duplikáltak és elég belőlük egy is. Az erre szolgáló "Ismétlődések eltávolítása" meg is oldaná a problémát, de én szeretném látni hogy melyek voltak azok a sorok, de a parancs rögtön törli és csak azt mutatja meg hányt törölt.
A G1 cellába írod a keresendő szöveget, vagy számot.
Kijelölöd a területet, ahol színezni akarod a keresett cellá(ka)t. Legyen ez pl. az A1:C20 tartomány. A feltételes formázásnál A formázandó cellák kijelölése képlettel opciót választod, majd az Értékek formázása, ha a képlet igaz rovatba beírod: =A1=$G$1, a Formátumnál megadod a kedvenc formátumodat.
Marad a kijelölés, új formátumnál a képlet =A1<>$G$1, ennél ne legyen formátum megadva.
Ezzel a megoldással a keresendő cellák színeződnek, új keresésnél az eredeti formátumot veszik fel az előzőkben kiválasztott cellák.
Köszönöm a tanácsot, de lehet, hogy én nem írtam le jól amit szeretnek. Szóval, ha keresek az excel-ben, természetesen az eredményre ugrik, fókuszál, de a szememnek jó lenne, ha a keresett eredmény sorát, kiemelné egy adott színnel. A sorban több adat van, alatta fölötte több szám,
Köszönöm! És még az is lehet, hogy nem teljesen értem amit írtál! :)
Sziasztok! Tudna nekem valaki abban segíteni, hogy az Excel-ben, ha keresek, a keresett eredményt kijelölje mondjuk egy általam kiválasztott színnel? Kutools-t használtam már, de ha van más alternatíva, akkor nem fizetnék elő, csak ezért az egy funkcióért! Köszönöm!
"Így csináltam eddig ezt szeretném gyorsítani." Ez érthető, és ha nem írtad volna oda a végére ezt: "A többlépcsős makró használatot kellene kiváltani.", akkor én is makrót írtam volna.
Nem "értsétek", hanem "tudjátok", mi történt. A kis "kód" tökéletesen működik, nem tűnnek el adatok, a másolás miatt tűnt úgy.
Ma ezzel játszottam, hogy kollégáknak csak pár másolat kelljen csinálni, szerintem elértem a minimumot. Közben nézegettem a fel nem ismerhető sorok (rekordok) kezdő elemét, nem sikerült megfejtenem. Hogy ezt ki és milyen megfontolásból generálja ilyennek, elképzelésem sincs. Nem is olyan kevés, kb. a sorok ötöde ilyen, de már az nagy segítség a munkában (időben pláne), hogy a 80 %-ot sikerül felismerni.
Köszönöm mindenkinek hogy a Vasárnapjából áldozott erre a dologra. Külön köszönöm az érdemi hozzászólásokat. Elnézést ha félreérthető voltam valamiben. - pimre Így csináltam eddig ezt szeretném gyorsítani. - Delila10 Ez a segítség több mint reméltem. Külön köszönet a makrós megoldásodnak. :)
Ha kézzel szeretnéd csinálni akkor ott van pimre megoldása. Ha pedig gyorsan akarod mindig, akkor lehet rá makrót írni. De az eredeti hozzászólásból úgy jött le, hogy nem szeretnél makrót.
Szerbusztok. Kérdezni/kérni szeretnék. - Adott egy tetszőleges kiragadott számokból álló számhalmaz. Mindig 5 oszlop (A,B,C,D,E)és 20 sor a kiragadott vizsgálandó számhalmaz. Összesen 100 db. szám amiben sok a szám ismétlődés. - Kérdésem. Hogyan tudom az 5x20-as számhalmazt 1 sorba rendezni. Növekvő számsorrendben az ismétlődő számokat kiszűrve/elhagyva. A többlépcsős makró használatot kellene kiváltani. - Köszönöm.
Csak hogy kerek legyen a történet, és értsétek mi történt: de.
Ha a D oszlopba másoltam a függvény értékét, random hosszúságnál levágta (legalábbis szemre, de lehet x karakternél, csak a különböző betűszélességek miatt tűnik így), ha egy másik sheet A oszlopába, ott meg megvan.
A kérdésednél azt hittem, arra gondolsz, hogy a képernyőn nem húzom elég szélesre az oszlopot.
Úgyhogy elvileg minden szép és jó - csak kiderült, hogy néhány új sort nem /abc/ kezdettel jelöl, teljesen mással indul (nincs / sincs), úgyhogy a sorok mondjuk 5 %-át nem tudom kinyerni, de azt már letojom.
De hogy ez az elválasztójel-különbség mekkora f.szság.. Jó, tizedes vesző-pont különbözik, mert az helyesírás kérdése, na de a paraméterek elválasztása... Ez döntés kérdése, "legyen vessző minden nyelven", és kész.
Legjobb tudomásom szerint igen. Bár ennek némileg ellentmond pimre tapasztalata.
Én nem egyszer nyitottam már meg angol nyelven szerkesztett Excel munkafüzetet, minden esetben minden jól működött nekem. Olyannyira biztos, hogy nem magyar nyelven szerkesztették eredetileg, mint hogy kék az ég. Külföldi fórumról származott, ahol nem is beszéltek magyarul.
Az is látszódik, hogy az xlsx fájlon belül az adott munkalap xml fájlján belül már vessző az elválasztó karakter és nem pontosvessző.
@pimre: Engem eddig nem foglalkoztatott az Office nyelvének a módosítása. Ha hamarabb váltasz nyelvet, minthogy megnyitnád a fájlt, akkor is hibásak a függvények?
Csak azok a paraméter elválasztó jelek ne lennének.....
Egyébként rémlik nekem olyan példa is már valahonnan, ahol a magyar Excelben is vessző az elválasztójel. Nem tudom, nem emlékszem hol láttam. Jó lenne, ha valaki esetleg tudna valamit mondani azzal kapcsolatban, hogyan lehet ilyet beállítani.
Én annyit pontosítanék a leírtakon: amilyen nyelvű az adott Excel olyan nyelven kell a függvényeket megadni neki, de ő ezt minden esetben angolul tárolja el.
Látszik a két képernyő mentés összevágásánál is, hogy én a magyar Excelemben magyarul írtam meg a függvényt és ha "megnyitottam szövegszerkesztővel", akkor ott már angolul látszódik a függvény. Így ilyen szempontból mindegy, hogy eredetileg milyen nyelven írodott az Excel tábla és hogy a későbbiekben milyen nyelvű Excellel lesz az megnyitva, mindig az adott nyelven fognak a függvények megjelenni.
A magyarban magyar, az angolban angol függvény neveket kell használni :( (és mások a paraméter határolók is) , sajnos nincs kétnyelvű Excel, legalábbis én így tudom.
Nálad nem fogja "megenni" az angol függvényneveket.
Makróval lehet megoldani, ha makróval írod be a képleteket, akkor az international szabvány szerint angol függvényneveket, elválasztót kell használni a Range.Formula paramétereként. Viszont ezt az Excel a saját verziójának megfelelően fogja megjeleníteni a cellákban.
A makrót beleteheted a sablonfájlba és új munkafüzet nyitásakor egyszer le kell futtatni - ez mehet automatikusan is.
Ha ez a lehetőség működik nálatok akkor mintát tudok mutatni.
De megoldódott, kiszedtem a nekem amúgy sem kellő részt (annyi, hogy én oda vesszőt írtam, de nem hiszem, hogy az kavart be, mindegy, mit szúrnék be szerintem), és így már tökéletes. Köszönöm ismét.
A tegnap félre tett kérdésem:
Én magyar Excelt használok, más angolt. Ott is működik a jobb, bal... függvény? Vagy angolosítsam nálam, és az működik mindkettőben?
Én ezt használtam, mert nálam a fájlkezelő keresője nem adott találatot, de ez tarthatott 5 percig is, az Excelben meg 5-6 mp. Előttem próbálták mutatni a kollégáknak ezt, hogy jobb mint a fájlkezelő, de nem tudták meggyőzni őket. Nekem a sebességgel végül sikerült. :)
Jövőbeni ötletnek a Totál Commandert ajánlom, mint kereső.
Az ALT + F7 kiadja ezt az ablakot.A "Mit keres"-be *txt --> minden txt fájlt megkeres (ezt lehet cifrázni, *alm* pl minden olyan fájlt keres, amely tartalmazza az alm-t). Szöveg bejelölésével ezekben keresi a megadott szót.
Az 1 értelemszerű, az adott fájlra ugrik, a 2 kiad egy ablakot
Ebben egyesével lépkedve F3-al belenézhetsz a fájlokba.
A Bővített fül alatt további paraméterekkel szűkítheted a találati listát (időpontok között, fájlméret figyelembe vétele).
Sokkal gyorsabb, mint a Win keresője, jobban paraméterezhető, zseniális. Szerintem.
Igen, képletek vannak a sablonban most is, csak nem ismert a sorok száma, ezért berakom az első sorba, és onnan lehet bemásolni annyi sorba, amennyi éppen kell.
Megpróbálom majd, de az egész szenzitív, mindent át kell irni.
De röviden így néz ki:
/abc/rzgcfgh
fgjbb
dbFFe
renc27vbgfh
fghBud
apestchvdd
/abc/fgghh
fghvfg
eggfgh
thh
/abc/zgg
vbbb
gh? gbb
/abc/pkhf
fbvgh
g hFt
hghfhh
thgtzu?
zzhftz
hjhgj
hj?ggzuk
k hffgu
/abc/ghbf
dgh
Amelyik sor végén kérdőjel van, ott (onnantól)nem adódik hozzá a következő sor. Sor elején még nem bukott ki, hogy zavart okozna, de lehet, az első 300 sorban pont nem volt olyan sor.
Amúgy gratulálok annak a programozónak, amelyik ilyen összevissza adatot képes kiadni a kezéből.... annak pedig külön diploma jár, aki ezt így el fogadja, netalán még fizet is érte. :( :(
Ahol összefűzés miatt van a & ";" & akkor a ; elhagyható. A kérdőjelet nem értem, nálam a példában simán betette. Ezért mondtam, hogy jó lenne látni, hol van. Esetleg mutasd meg a képleted. Milyen Excel verziót használsz, mi a paraméter elválasztó?
Érdekes, mert nekem nem teszi be a ;-t. Valamit elírtam volna? De nekem nem is kell pontosvessző, úgy kell összefűznie a sorokat, ahogy vannak. Pl. a név, számlaszám sem 1-1 sorban van, hanem sor végén elkezdődik a név (FFe), a másik sor elején meg folytatódik (renc). Ugyanez a számlaszámmal: sor végén HU123, következő sor elején meg 45678901234567890123456. Tehát csak össze kell fűzni.
Akkor ezek szerint kiszedhetem a ";" & részt, marad az D2 & A3 (ha jól emlékszem, hátha nem borul meg a kérdőjeltől.
Lehet, hogy járható lenne, de azt már nem nyomnám le a kollégák torkán. :)
FFerenc megoldásával egyelőre kell egy. txt import, oszlop másolás, beillesztés a sablonba, x db oszlopban a 2. sor lehúzása végig, szűrés, pár oszlop másolása, másik fájlba/lapra beillesztés értékkel. Ezt talán el tudom érni.
Napi több óra munkát lehet megspórolni 5 perc alatt, de nagyon nehezen mozdulnak a kollégák, óriási a tehetetlenség, "így szoktuk", "X így találta ki", ha nem pofon egyszerű, inkább szüttyögnek órákig. Én meg látom, csapágyasra vannak hajtva nem túl jó fizetésért, próbálok erővel is segíteni rajtuk. :)
Most volt egy "projektem", az is sok órát spórolt meg, de küzdelmes volt a dolog: csak annyi a változás, hogy csináltam egy böszme .xls-t, abban tudnak keresni - max. 5-6 mp (múltkor ezt akartam még gyorsítani), ha a táblázat legvégén van az adat, külön cellába kiraktam ami kell; eddig meg a windows fájlkezelőjében keresték a szöveget, nem túlzok, volt hogy 5 perc alatt lett meg a .txt, megnyitották, abban megkeresték a szöveget, az ömlesztett sorból kivadászták, ami most ott van külön cellában. Na, ez is nem nagyon tetszett, 1 ember mondta, szerinte a táblám lelassítja a fájlkezelőt, rögtön volt, aki csatlakozott. Aztán 1 ember használta, elmondta, hogy 10-20-100x gyorsabb, aztán 3, ma már mindenki, éppen ma hálálkodtak, mennyire jó. Csak nehéz rávenni őket, hogy van új a nap alatt, ezért kell a végletekig egyszerűsítenem.
Megmutatnád legalább képen a kiinduló adataidat? (Persze ne a titkosad, csak a szerkezete fontos.)
A ; a Ha függvénynél paraméter elválasztó, egyébként pedig az egyes sorok közötti elválasztás lenne a funkciója, nézd vissza a hozzászólásomban a képet.
Egy hiba van: ha a sorom utolsó karaktere ?, akkor a D2 & ";" & A3 "parancs" eredménye marad D2. Ezt kellene még megoldani, utána tökéletes lenne szerintem.
Bevallom, az a ";" nem tudom, mi célt szolgál, mert pontosvesszőt nem tesz be, azt látom.
Megnyugodtam, az félelmetes lett volna, ha ilyen memóriád van. De számomra az is csoda, am(enny)ire emlékeztél. :)
Tökéletesen értetted a problémát. :)
Szoktam importálni (na nem sokat...), de nem láttam olyan beállítást, hogy több sorból 1 sor. Erre gugliban keresve az 1 cellában több sort hozza, egyetlen fordított (nekem kellő) találat sincs.
Jól érzed, szenzitiv a cucc, még "kihoznom" is nehéz lenne, próbálok összedobni valami hasonlót, úgyis csak az elv a lényeg. A : és , abszolút nem számít, mert tulajdonképpen nem is kell cellákra bontani, jó egyben is a sor.
Szia, nem emlékeztem, csak rémlett, hogy talán nálad volt valami lassulási probléma. Próba szerencse rákerestem az Excel hozzászólásaidra (tudod, bárki nevére kattintva egy hozzászólás felett listát kapsz arról, hogy hány hozzászólásod volt az adott topikban. Neked kevés volt, így pillanatok alatt rátaláltam a 2020-as lassulásra.) .
A txt-s kérdést nem tudom, jól értem-e. Tehát egys sorok valamilyen fix karaktersorozattal kezdődnek, legyen /xyz/. És akkor az adott sor tartalmához hozzá kell fűzni (és törölni) a további sorokat addig, amíg nem találunk egy /xyz/-t, mert ezzel új összefűzést kezdünk új sorba. Az első üres cellánál befejezzük a keresést.
Nem hinném, hogy ez komoly nehézséget jelentene. Az excel és a txt jóban vannak, könnyű konvertálni ket. Gondolj a CSV kiterjesztésre.
"Amúgy érdekes a .txt, hol :, hol vessző a szeparátor jel, ". Ha a kettőspont és a vessző egyaránt csak szeparátorként fordul elő, akkor nem nehéz törölni, vagy másra változtatni, vagy egységesíteni őket.
Ha tudsz küldeni emailben, vagy felhőből (pl. Google Drive) egy mintát, akkor szívesen megnézem. Az adataid nyilván bizalmasak, de próbálj meg egy olyan részt kivágni, ahol nincs érzékeny adat, vagy valami hasonlót generálni 6-8-10 sornyit.
Erre most emlékszel, vagy visszakerestél? Ha előbbi, le vagyok esve a székről. :) Volt ilyen, az más probléma volt. Elbújó képek miatt bődületes fájlméret, alig lehetett megtalálni, a fájlt meg megnyitni is alig.
Itt most csak sima "lassúságról" van szó, pár mp, amin van aki hisztizik, de ezen is túl vagyok.
Még egy bajom van, hálás lennék, ha erre lenne megoldás. Makró biztos jó, csak nem értek hozzá. :(
Van egy .txt, abban sok tétel, de így:.
Első sor /xyz/abcd
Következő sorok: szövegek, amiket az előző sorhoz hozzá kellemes fűzni. "Az egyszerűség kedvéért" változó, hány sor van, azzal nem lehet kalkulálni.
Valami olyan jut eszembe, nézze meg, szöveg eleje /xyz/-e, ha igen, lépjen a következő sorra. Megint vizsgálja, ha igen, lépjen lentebb, ha nem, fűzze hozzá az előző sorhoz, ezt a sort törölje, következőt vizsgálja, mindaddig ismételve, amíg üres cellát nem talál.
Programmal bármikor menne fél óra alatt (rég csináltam ilyet, azért írok ilyen sokat), de multi, (tök jogosan amúgy) nincs helye saját programoknak, Excelben kellene összehozni. Aztán még egy kis bűvészkedés az adatokkal, aztán az egészet úgy összerakni, hogy a kollégáknak csak a .txt tartalmát kelljen bemásolni, és kiessen a kész adat. :) A vége nem gond, de a kiinduló adatot nem tudom előállítani.
Amúgy érdekes a .txt, hol :, hol vessző a szeparátor jel, de az is megoldható, csak nem tudom, ki és miért ilyet generál.
A táblázat amit havonta lehívsz, minimum három oszlopot tartalmazzon! 1. kelt, vagy hónap, 2. partnerkód, 3. összeg
Ezeket az adatokat másold egy "Egyesített adatok" nevű munkalapra, havonta egymás alá!
Az "Egyesített adatok" nevű munkalapot elemezd kimutatással! A kimutatást egyszer kell megszerkeszteni. Bármilyen formázás, rendezés létrehozható.
A havi teendő annyi, hogy becopyzod az adatokat, és mented. Frissíted a kimutatást és annyi. Praktikus, ha a kimutatás és az adatok nem egy munkafüzetben vannak. Ha a havi lekérés nem tartalmazza a partner nevét, akkor kell egy nulladik havi táblát is hozzáadni az egyesítetthez, hogy a nevek is kéznél legyenek.
Biztos, ami biztos itt elérhetők az általam használt fájlok, amik azonosak a mintában megadottakkal. Hogy ha valamiért nem működne nálad, akkor össze tudd hasonlítani, és megtalálni az eltéréseket.
Munkahelyen, a számítógépes programból kell lehívnom minden hónapban egy táblázatot, ezt szeretném összefésülni egy másik, a meghajtón lévő táblázattal.
A saját gépen lévő táblázatnál fel van sorolva az összes ügyfél név és partnerkód alapján, mellettük lévő oszlopokban pedig egy összeg, hogy a különböző hóapokban milyen értékben vásároltunk tőlük. A legutóbbi hónap (június) még nincs kitöltve, ebben lenne szükségem a segítségre. A programból lehívott táblázatbanc sak azok az ügyfelek szerepelnek, szintén partnerkód alapján, akiktől a legutóbbi hónapban (júniusban) vásároltunk, valamint mellette az összeg, hogy mennyiért. Ezt a két táblázatot kéne a lehető leggyorsabb módon összefésülnöm egybe.
Segítségképpen itthon készítettem egy egyszerűsített példát. A lenti, fehér táblázat B (Összeg) oszlopából szeretném a számokat átrakni a felső, kék táblázat B (Június) oszlopába, a partnerkódnak megfelelő sorba. Tehát az első, 50 000-res összeget szeretném berakni az első táblázat A/4 cellájába, és így tovább.
Természetesen ezt csak a szemléltetés végett készítettem, munkahelyen sokkal több adatról lenne szó, ezért is keresek egy gyorsabb megoldást, hogy ne kelljen hónapról-hónapra kézzel átírnom.
Használhat oszloponkénti autofiltert a kereséshez, vagy ha ez a keresés egy sima Ctrl+F opcióval történik, akkor kijelölni előtte azt az oszlopot, amiben keresni akar... így csak a kijelölt tartományon (oszlopon) vándorol végig, nem a teljes táblán.
Abban az értelemben amire Te gondolsz, nem lehet indexet rakni rá.
Nem tudom, hogy keresel a táblában... Valószínűleg máshogy kéne megfogni, megközelíteni ezt a keresést, elképzelhető, hogy előállítható gyorsabb módszer is. De így látatlanul megítélhetetlen.
Adott egy több százezer soros táblázat, amiben a keresés lehet 15 mp is. Ezt van aki sokallja. :) Ha lehetne adatbázist kezelni a melóhelyen, nem lenne gond, index a kívánt oszlopra, és 1 mp alatt kiadná. De nem lehet, így az Excelből kellene kihoznom a legtöbbet.
Egy kis segítséget kérnék. Az excelben egymásra épülő számoló táblázataim vannak, mindegyik külön munkalapon. A számított eredményeket, vagy adatokat amire másik munkalapon, másik táblázatban is szükség van mindig átkerülnek a következő munkalapokra. A táblázatok teljesen különböző formátumuak, így azonos munkalapon a megjelenítésük nem szerencsés, az eltérő méretű cellák miatt.
Hogy ne kelljen folyamatosan ugrálnom az egyes munkalapok között szerencsés lenne, ha egymás alatt azonos oldalon látnék mindent, de ehhez több oszlopazonosító kiosztás kell úgy gondolom. Meg lehet azt oldani, hogy a különböző munkalapokat egymás alatt lássam, így görgetéssel tudnék haladni a táblázatok között.
Tudtommal nincs olyan függvény, ami meg tudná állapítani a cellák színét és az alapján rendezni valamint a bennük lévő adatok alapján pluszban. Makróval lehet megoldani a dolgot.
Szerbusztok. A segitségeteket szeretném kérni. Adott ez a fügvény ami teszi a dolgát. =DARABTELI($A$1:$H$1;A1)>0 Hogyan kell átirni hogy rendezze is soronként? 1.A szint (csak 2 szín jelöli zöld=kitöltés , piros=szám) a megtalált számokkal előre veszi. 2.A színnel(zöld=kitöltés) jelölt megtalált számokat sorba rendezi nagyság szerint 3.A nem színesített számokat a sorok végén szintén nagyság szerint rendezi. Köszönöm.
Viszont ahol nincs beolvasandó érték pl. G4 - G7 oda "#Hiányzik" kerül. Ezt hogy lehet kiküszöbölni? Ha nincs mit beírni, inkább maradjon üres a mező. Illetve a következő "H" oszlopba a képlet melyik értéket kell átírnom?
A VB szerkesztőben kellett volna egy modulba tenni.
A füzetedben Alt+F11-re bejön a VB szerkesztő. Ott az Insert Module létrehoz egy modult (jobb oldalon nagy üres felületet), oda kellett volna bemásolni.
A füzetbe visszalépve Alt+F8-ra előjön egy ablak, benne a makró nevével, ezt indítva pikk-pakk áthelyezte volna az adatokat.
Ilyesmin gondolkodtam (annyi változással, hogy az oszlopokkal van gond, tehát ha adott sorban nincs a - mondjuk - G oszlopban adat, akkor csak F-ig rendezi át).
Alapból mindig úgy rendeztem, hogy kijelöltem a sorokat, amiket rendezni akarok. Ilyenkor nincs gond, mindug komplett sorokat mozgat. Még nem jöttem rá, mitől van, de néha a fejlécet is rendezi, hiába nincs kijelölve az első sor. Ilyenkor vagy elmentem, bezárom az Excelt, újra nyitom a táblát, és jól működik, vagy úgy rendezem, hogy nem jelölök ki semmit, és ekkor sem rendezi az első sort. Valószínűleg ez lehetett a baj, éppen kijelölés nélkül rendeztem, így meg az általad írtak alapján nem kezelte G oszloptól, mert az aktuális sorban ott nem volt semmi. Vagy valami ilyesmi lehetett.
Beletettem az általam javasolt képleteket. A képletek minden oszlopban hasonló elven működnek, de az eltérő paraméterekben különböznek. Ezért lefelé húzhatók az oszlopokban, de oldalra nem.
Biztosan meg lehetett volna csinálni egyszerűbben is, hátha valakinek sikerül.
Mivel sorba vannak rendezve a tételek a pozició szerint (- ami akkor is megvalósítható, ha egyébként nem lennének így - ) minden pozícióhoz ki lehet jelölni azt a tartományt, ami hozzá tartozik. Ezt teszi az OFFSET függvény: A MATCH megkeresi a pozició első előfordulását, a COUNTIF megszámolja, hány sorban fordul elő. Ez alapján jön létre a tartomány, melynek G oszlopában keressük a Connection Type-ot ismét a MATCH függvénnyel. Ezt az eredményt adja vissza az INDEX függvény - aminek oszloptartománya most nálam 20, de ez változtatható, ha több paramétert keresel.
A kérésed szerint most a Conn1 és Conn2 értékek kerülnek át a megfelelő pozícióhoz.
Akkor fordulhat elő, ha nincs a teljes rendezendő állomány kijelölve vagy az adatok között üres sor/ok vannak vagy egy oszlop szerint rendeznél, de az ebben levő értékek "nem érnek végig" a többi oszlophoz viszonyítva.
Az Excel automatikusan az éppen aktuális cella környezetét veszi rendezendő adatoknak - ez nem mindig a teljes adatállomány.
Tanács: az adatállomány legyen sorfolytonos, rendezés előtt jelöljük ki az egyik fejléc cellát. Az Excel általában megkérdezi, hogy ezen a tartományon szeretnénk-e a műveletet vagy kiterjeszteni. A kiterjesztésnél meg kell lesni, minden benne van-e.
Szeretnék készíteni egy táblázatot, de nem tudom hogyan tudom megcsinálni az adatcsoportosítást.
A táblázat „product” és „connections” füleit egy rajzoló program hozza létre az aktuális rajzból kiemelt lista alapján. Ezeket egy régi XLS-be írja. Ebbe szeretnék beletenni egy új „Csatlakozások” lapot, amely a másik kettőből összesíti az adatokat. A problémám itt kezdődik, mivel a „connections” lapon egy készüléknek a különféle csatlakozásait külön soron jeleníti meg (G oszlopban: E, G, HW, CW stb …) de én ezt egy soron szeretném kezelni. Tehát ha a „connections” G oszlopban pl. „E” szerepel, azt a „Csatlakozások” lapon az „E (kW)” és „E (Volt)” mezőkbe írja be a „Conn1” és „Conn2” értékeket. A „Csatlakozások” lapon minden „Poz” szám csak egyszer szerepelhet. A készüléknek csak néhány csatlakozása van, így a sorban több cella is üresen marad. Az összetartozó értékeket beszíneztem. Az is fontos lenne, hogy a „Csatlakozások” lapon a G és I oszlop szám legyen, azt összegezni lehessen.
Lenne egy furcsa kérdésem. Szerintem ilyen nincs, de már többször előfordult. :)
Sorbarendezésénél mondjuk G oszlopig sorba rendezi a táblát, de a H oszloptól maradnak eredeti sorrendben.
Nekem is csinált ilyet, kaptam vissza táblát ilyen hibával, tegnap meg kolléga futott bele. És ugye ha nem tűnik fel rögtön, akkor már a visszavonás nem feltétlenül járható.
"Ha a valós tudásszintjére lenne kíváncsi a gyakorló vizsgázó vajon próbálkozna e végtelen számban?"
Semmilyen szoftvert nem lehet arra alapozni, hogy majd a felhasználó betartja a szabályokat, mert a felhasználók sosem tartják be a szabályokat. Sőt, a legelképzelhetetlenebb hibákat is elkövetik, amit józan, normális programozónak álmában sem jutna eszébe, hogy azokat is ki kellene védeni.
De mindegy. Jól láthatóan nem vagyunk egy hullámhosszon, úgyhogy nem erőltetem a nézőpontomat. Viszont, mivel nem sikerült a kérdésemre adekvát választ adnod, és továbbra is csak találgatni tudok, hogy pontosan hogy lesz ez a rendszer használva, felállítottam pár munkahipotézist, és kiválasztottam azt, ami szerintem a legvalószínűbb. Így született ő: https://data.hu/get/13782213/QA.xlsm
Okés, a törlés gomb nem gond, de én továbbra sem értem, hogy a százalékos kiértékelés mit jelent, amikor a feladatmegoldó végtelen számú alkalommal próbálkozhat a helyes válasz kiválasztásával, és - hacsak nem tökéletesen IQ mentes, akkor - végül minden választ helyesre fog kihozni. Tehát mi van a százalékszámítás számlálójában és mi van a nevezőjében? Precíz megfogalmazást kérek.
A tol változó tartalmazza a sort, ahonnan az áthelyezést kell kezdeni. Az ig az áthelyezendő cellák száma mínusz 1. A tol a mintádban 7 (mert az első csapat marad a helyén), az ig pedig 5-tel több a minta szerint, 6 adatnál. Ezek értékét a *-gal jelölt sorokban módosíthatod.
Mint arra Te is rámutattál, ha meg van jelölve a helyes válasz zölddel, a rossz pedig pirossal és akárhányszor lehet módosítani a jelölésünket, akkor ez nem vizsga feladat, mert mindenki 100%-osra fog vizsgázni.
"Szerintem egy alkalommal kell, hogy kattintható legyen a válasz."
És ezt hogy egyezteted össze az alábbi mondattal?
"... és amikor egy másik lehetséges válaszra klikkelek törlődjön az előzőleg kijelölt háttér egy adott kérdésnél de ez ne legyen hatással a következő vizsgakérdésre"
Esetleg az tudom még elképzelni, hogy azt nézzük, hányadik próbálkozásra találta el a helyes választ.
Szerintem egy alkalommal kell, hogy kattintható legyen a válasz.
@Hát ő: szerintem nem kell színnel megjelölni rögtön hogy jó-e vagy sem a válasz, mert ha csak egyszer enged egy cellába kattintani, akkor is nyithatok egy másik excelt ahol kigyüjtöm, hogy melyik a helyes válasz és egy végső kitöltésbeb csak azokat kattintom be.
Én egy rejtett fülön gyüjteném a válaszokat, szépen egymás alá. Az egész munkafüzetet szerkesztés ellen védetté tenném és csak a megjelölt cellák lennének kiválaszthatók. Azok is maximum egyszer.
Utána egy külön tanári verzióban értékelném ki a helyes válaszokat.
A válaszok szeparált gyűjtésére vonatkozó részt nem értem. Ha annyiszor kattinthatsz, ahányszor akarsz, akkor nyilván a vizsgázó addig fog kattintgatni, amíg minden válasza zöld nem lesz. Azt meg minek gyűjteni? 100% jó válasz borítékolható.
Szeretnék magamnak egy vizsgához olyan feladatlapot készíteni ami képes a következőkre.:
C2 cella vizsgakérdés
C3 cella 1. válasz
C4 cella 2. válasz
C3 cella 3. válasz
C4 cella 4. válasz
- 150 ilyen kialakítású kérdés / válasz van egymás alatt egy cella kihagyással.
Szeretném elérni hogy az általam előzőekben megadott helyes válaszra klikkeléskor az adott cella zöld színű míg a rossz válaszra klikkeléskor piros színű legyen a háttere. Minden kérdésnél csak egy lehetséges válasz lehet. Tehát csak egy válasznál legyen látható háttér, és amikor egy másik lehetséges válaszra klikkelek törlődjön az előzőleg kijelölt háttér egy adott kérdésnél de ez ne legyen hatással a következő vizsgakérdésre..
- A jó és rossz válaszokat szeparáltan szeretném gyűjteni. a feladat százalékos kiértékelése miatt.
- Szeretnék elhelyezni egy törlés gombot aminek a funkciója a hátterek törlése, új feladatmegoldás indítása lenne.
Olyanok válaszát keresem akik esetlegesen ha szükséges megírnak egy makrót vagy ha a feladathoz ez nem szükséges végigvezetnek a pontos folyamaton. Amennyiben ez túl bonyolult és időigényes természetesen megértem és elégedem ezt a dolgot.
(Amit már-már lakonikus rezignáltsággal veszek tudomásul: küldje meg mindenki xy-nak a kitöltött táblázatot, aki a kapott sorokat összetolja és továbbküldi, ahol ugyanezt egy kicsit nagyobb merítésben megcsinálják. Így a kiadott feladatra lehetséges időből kb. 1 hetet vesztünk, mert nem ismerjük a közösen, egy időben szerkeszthető táblázatok, szöveges dokumentumok világát.)
Amúgy az valószínűleg sokat dobna a dolgon, ha küldenél egy minta táblázatot, amiben minden ugyan úgy van, ahogy majd a munka példányodban lesz. Elég maoistának kell ahhoz lenni, hogy újra gyártsuk a táblázatot, főleg, hogy a színesen nem is olvashatóak a feliratok.
Ezt képlettel nem lehet megoldani, ugyanis cellaösszevonást képlettel biztos nem fogsz csinálni. Legfeljebb azt lehetne elérni, hogy az összevonanadó celláknak ugyanaz legyen az értéke.
De nekem még az is közel lehetetlennek tűnik. Elméletileg *talán* össze lehetne fabrikálni egy képletet, de az annyira bonyolult lenne, hogy aligha él olyan ember, aki átlátja. Kicsit sem segít, hogy a táblázatokban cellaösszevonások vannak, hogy a napok az egyik táblázatban meg vannak nevezve, a másikban csak kezdőbetűk, hogy az időintervallum az egyik táblázatban 2 cella, a másikban 1, stb. stb.
Lenne az alábbi adattábla (1. munkalap), ami egyben egy órarendi lista. Az ebben lévő adatokat kellene, hogy olvassa a teremtáblázatba (2. munkalap) C4 cellája az alábbi módon:
1. munkalap:
2. munkalap (ez értelemszerűen folytatódik Kedd, Szerda, s.í.t.):
Az 1. munkalap G oszlopából nézze a nap indexet és keresse meg a megfelelő napját (1. sor) a táblázatnak. Aztán az 1. munkalap H-I oszlopából keresse meg a 2. munkalap B (AF) oszlopokban található időintervallumokat. Végül az 1. munkalap K oszlopából keresse meg a megfelelő terem oszlopát (2. sor) a 2. táblázatnak. Majd a megfelelő mennyiségű cellát egyesítve (ilyet csak makróval lehet?) írja be az adekvát órarendi adat sorából az 1. munkalap A, C, E, F oszlopaiból származó adatokat. Magyarán: ha hétfőn 10-től 12-ig tart egy órát, akkor a teremtábla 6-7-8. sorában jelenjen meg, hogy " Nagy József, Szakmai gyakorlat 3., DEMA 1-2.
Erre milyen képletet tudnátok ajánlani?
A színeket majd feltételes formázással megcsinálom.
Adva van egy táblázat (Írószer igénylés), ami az "A" oszlop előtt sorszámozva van. Az "L" oszlopba kellene beírni a darabszámokat.
Kimásoltam azokat a tételeket amelyikre nekem szükségem lenne, mert sokezer sor van és beírtam a darabszámokat. Ennek a táblázatnak a sorszámai megegyeznek az eredeti táblázattal.
Hogyan tudnám legegyszerűbben visszatölteni az "L" oszlopban lévő számokat, úgy hogy azok a megfelelő sorokba kerüljenek?
Az nem makró. XLSX kiterjesztésű dokumentumban nem lehet makró. Ha megnézed az általam visszaküldött dokumentumot, akkor a gombon tudsz jobb egérgombot nyomni. Majd a hivatkozások szerkesztésére ha rámész, akkor pl. a Tandembox fülön az alkatrészek gombon a következő hivatkozás van: F246:F266. A védelem feloldása előtt is lehetett az F oszlopba adatot bevinni. Ezért is tudott arra hivatkozást létrehozni. Bár szerintem elég lett volna az F247-re hivatkozni simán, mert az az első sor, ahol van értelme adatot bevinni, mert így kijelöli az egész F246:F266 tartományt.
A munkalapok zárolásakor meg lehet határozni, hogy milyen műveleteket lehet csinálni a felhasználónak a zárolt munkalapon. Cellákat, tartományokat lehet szabadon szerkeszthetővé tenni.
Másrészt pedig a makrókat is el lehet rejteni - ha ilyen navigációs gombok vannak benne, akkor biztosan van benne makró is, csak a VBA projekt le van védve, ezért nem látható. A munkafüzet kiterjesztése pedig vagy xlsm de inkább xlsb valószínűleg.
Egyébként az hogy lehet hogy az említett védelemmel ellátott munkafüzetben van több gomb is elhelyezve ami cellákhoz navigál, és nem kell beírnom semmilyen jelszót sem megnyitáskor, sem használatkor.
Ugyanakkor a VBA-ban nem látok makrót, sem semmit ami ezt a műveletet végzi. Ezt hogy csinálják? Ez nem makró?
A UserInterFaceOnly paraméter beállításával eléred, hogy a makróid tudnak működni, de a felhasználók felé érvényes a védelem. Ezt a paramétert sajnos minden egyes munkafüzetnél megnyitáskor be kell állítani munkalaponként külön - külön, mert bezárással "elfelejti".
A pipát ki kell venni, akkor nem lehet kijelölni. Illetve az objektumok tulajdonságai között be kell pipálni, hogy védettek legyenek. Bár elvileg alapértelmezetten azok.
Hát, nem lenne rossz az egyiknél eltüntetni a lapvédelmet.. No, semmi rosszra ne gondolj, csak beszúrnék egy egy oszlopot hogy összesíteni tudjam a tételeket.
A megrendelt árukat, külön munkánál külön munkafüzetben szeretem kitölteni, hogy lássam mennyi a végösszeg. És amikor elküldtem 1 emailben 3 excelt, azt mondták hogy írjam egybe, ők ezt nem összesítik. (???)
Mondom, bakker, nektek ezt megoldani semmibe sem telne, de pont letojta.. Így volt hogy 2 nap kihagyással küldözgettem nekik a megrendeléseket. :)
Amúgy ezek a jelszavas védelmek pár perc alatt eltüntethetőek viszonylag egyszerű módon. Maga a jelszó nem fejthető vissza ilyen gyorsan, de törölni lehet és utána mindenhez teljes értékűen hozzá lehet férni.
Nagyon utáltam, amikor partnercég úgy küldött árjegyzéket, hogy nem lehetett cellákat kijelölni... Főleg amikor a több száz termékből csak 30 termék árára volt szükségem... Gyorsabb volt eltüntetni a védelmet, mint írogatni nekik, hogy küldjék el rendesen.
Megértem mondjuk az ő álláspontjukat is, hogy ezzel "védik" az áraikat, hogy ne lehessen azt mondani, hogy mást küldtek.
Van olyan munkafüzetem, amelyet egy partnercégtől kaptam, és a benne lévő fotókat még csak ki sem tudom jelölni. Csak néhány cellába tudok beírni, semmi mást nem tudok a munkafüzetben módosítani, csak amit ők engedélyeztek.
De tuti láttam már több ilyen munkafüzetet, amelyben rögzítve voltak a képek, csak most nem találok másikat.
A microsoft oldalán leírják hogyan lehet lapvédelemmel ellátni az objektumok szerkesztését, csak éppen az ég világon semmit nem csinál.
Még régebben volt egy publikus MS telefonszám, amelyen beszéltem a supporttal. Tudja valaki ezt a számot? Holnap felhívnám őket.
Ha nem az A1 cellába kerül az első kiadvány név, attól még az oda kerülő képlet még nem fog változni. De az A2 cellába írt képletem igen, méghozzá ahol az A1-re hivatkozok ott mindenhol át kell írni az új "A1"-re. Valamint a képlet elején a SOR()<=SZUM(Munka1!B:B) rész után még hozzá kell adni a szumma értékéhez annyit, ahány sorral lejjebb van az első sor. Tehát ha van egy fejléced és az első kiadvány neved a 4. sorban lesz, akkor 3-at kell hozzáadni.
Ha nagyon profik akarunk lenni, akkor be lehet építeni valahova egy ellenőrző cellát is, hogy elléggé le lett-e húzva a képlet vagy sem.
Makróval elegánsabban is meg lehet oldani, akkor nincsenek ilyen csúnya képletek benne :)
Egy próba: Zárj be minden más munkafüzetet és úgy nézd meg.
Alakzatok ügye: Sajnos szerintem az alakzatokat nem lehet fix helyen rögzíteni, azok a munkalap görgetésével csúszkálnak. Tudom, útálni fogod, de ezt a problémát csak úgy lehet megoldani, ha Userformra helyezed az alakzatokat, mert a Userform viszont rögzíthető, lényegében a munkalap "felett" van.
Átneveztem a module-okat VBA-ban, és az egyik makrómat (a makró hozzárendelésnél) nem hajlandó az egyszerű eredeti nevén megtalálni, csak a munkafüzet nevével kiegészítve.
Az Excelnek is - mint minden rendszernek - megvannak a maga eszközei és szabályai. Ahhoz, hogy rendszeresen használni tudjuk, bizony meg kell ezekkel ismerkedni. Mivel elég sokat tud, ez nem kevés időt igényel - nem véletlenül vannak a tanfolyamok hozzá. (Gondolom, a javascriptet sem 2 óra alatt tanultad meg használni.)
Annyira sokrétű, hogy több évtizedes használat mellett is vannak olyan részei, amelyekkel nem is találkoztam a munkám során, így nem is ismerem. Amit ismerek, abban viszont szívesen segítek bárkinek.
Szóval úgy jött elő a dolog, hogy megkért a titkárnő, segítsek már neki excelben, hogy egy névsorból azon személyek taj meg szig.számát szűrjük már le, akik versenyre jelentkeztek. (35 személy a 143-ból)
Neki megvolt kik mennek versenyre, én meg lekértem a tanulmányi rendszerből az adatokat excel exportként, de csak egybe mindenkiét tudja kihozni, s mondom akkor az fkeressel biztos megoldható lenne. Hozzá kell tenni, évek óta nem használtam semmire az fkerest, némi halvány emlékeim voltak róla, de mondom a fgv. súgó majd segít. Hát már túl porosak voltak ezek az emlékek, totál nem ugrott be ezek alapján, hogy kéne helyesen használni. Erre mondom, a titkárnő meg még ilyet nem is látott, azt se tudja mi az hogy fgv. és mire lehet használni, no aztán vak vezetett világtalant. :)
Tehát itt megadtad, hogy 86 pont, az hanyas jegynek felel meg. Ez alapján érthető. Az összes többi körülírás, meg az excel fgv. leírása számomra vakablak a helyes működés kisilabizálása terén. És akkor mit mondjon egy titkárnő, aki annyit tud az excelről, hogy “az a kockás izé” és neki kéne megtanítani vagy magának eligazodni ilyen leírásokból. (Mondjuk az se volt normális, aki így bírt kitalálni algoritmusként egy keresési megoldást, de hát tudjuk, a windows se tökéletes.)
Köszi az erőfeszítést mellesleg. Ha magamnak csinálnám, lehet javascriptben hamarabb leprogramoztam volna tömbökkel a feladatot… :)