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.
Ahogy én látom, a HA() függvényednek csak az "IGAZ" ágát töltötted ki, a másikat nem. Javasolnám például a =HA(leltárlista!$G$4:$G$13=1;leltárlista!A7) helyett a =HA(leltárlista!$G$4:$G$13=1;leltárlista!A7;"") képlet használatát. Ez megoldja azt, hogy ne látsszanak az ilyen adatok.
Hogy bele se kerüljenek, arra a így kapásból makró nélkül nincs ötletem.
Ejnye már! Az előbb magyaráztam el, hogy hogyan lehet cellákat törölni, illetve beszúrni, azaz az általad említett 5 táblázat valamelyikének "oszlopait" a többitől függetlenül kezelni.
És ne haragudj meg, de javasolom, hogy először alapszinten tanuld meg az Excel használatát, és ezután fogalmazd meg, hogy mik benne a hiányosságok, melyek azok a megoldások, amelyek "életszerűtlenek"!
Azt már nagyjából megoldottam, hogy a leltárlistából átkerüljenek az adatok a megfelelő helyekre, de azt vajon hogyan lehetne elérni, hogy a "HAMIS" értéket tartalmazó sorok ne látsszanak, esetleg bele se kerüljenek az 1-4-ig számozott lapokra.
Végső soron ez egy leltárnyilvántartó lenne, amit szeretnék, ha úgy működne, hogy csak a leltárlista lapon kelljen felvinnem, módosítanom az adatokat, az 1-4-ig lapokat pedig töltse ki az excel automatikusan a megfelelő adattartalommal. Ezek egyébként helységleltárak lesznek. Így 10 tétellel még elbánnék kézzel is, de többszáz tétel van és legalább 15 iroda.
Van erre valakinek ötlete? Egyáltalán képes az excel ezt lekezelni?
Ha nem titkos, esetleg át tudnád küldeni a weboldal címét, ahonnan leszeded az adatokat?
mert kehet, hogy az excel beépített, külső adatok importálása funkcióval sokkal jobban jársz, az ugyanis formázatlan adatokat is képes behúzni
Ha nem megy a fenti megoldás, akkor sajnos semmiképpen nem lehet megúszni a plusz oszlopot, de egy segédoszloppal simán működik, ha beteszed az alábbi függvényt a "C" oszlopba
Azt hittem ilyen alap dolgokat simán lekezel egyszerűbben az excell.
Vagy olyan életszerűtlen hogy van mondjuk 5 táblázatod egymás alatt, és abból az egyikből törölni kell adatokat / oszlopokat úgy hogy a többi ne változzon :) :) :)
Ugyanúgy, mint a fejléc rögzítést. Csak ekkor a b4-re állsz, és így rögzíted az ablaktáblát. (És persze ugyanígy lehet 2, 3 stb. oszlopot is rögzíteni)
"...nekem úgy kéne hogy a felső 30 sor, megmarad fix, az alsóban meg oszlopot szúrok be vagy törlök, akkor a felső nem változik": Ez így közvetlenül idegen az Excel szemléletétől, mert ez oszlop beszúrás, az oszlop beszúrás, nem pedig fél oszlop beszúrás. De 2 lépésben meg tudod oldani, amit akarsz:
1. Beszúrod az új oszlopot. (Mondjuk a C oszlop helyére egy új C oszlopot.)
2. A felső részen kijelölöd az új oszlopban azokat a sorokat, amik nem kellenek. (3 soros fejléc esetén a C1:C3 tartományt), majd kéred a cellák törlését (egér jobb gomb), és a kérdésre, hogy hogyan, válaszd az eltolást balra.
Elvileg lehetne fordítva, hogy az alsó részen jelölöd ki a fejléc alatt a C oszlop elemeit (a C4-től lefelé az összeset), majd a beszúrást választod, és a kérdésre azt választod, hogy cellák eltolása jobbra.
usor = Cells(Rows.Count, "A").End(xlUp).Row eredménye 13 a csatolt kép szerint, mikor az A oszlopban még csak a "Második tartomány" adatai szerepelnek. Az oszlopazonosítók nem szerepelnek a képen, csak feltételezem, hogy az A oszlopban vannak az adataid.
Mivel a következő tartományt a 17. sorban akarod kezdeni, a makróba
usor = Cells(Rows.Count, "A").End(xlUp).Row+4 -et írj. Az usor változó értéke lesz a másolás helyének a sora.
Sziasztok! Az alábbi probléma előtt állok, remélem, tudtok segíteni. A lapon van több, elkülönült tartomány, melyeket gombnyomással szeretnék másolni, mindig a saját típusú tartománya alá.
Ezt makróval próbáltam megoldani, ami sikerült is látszólag, ám amint egy felső tartományt saját maga alá másoltam, az alatta lévők rossz helyre másolódtak, kaotikus lett a kinézete, mivel a makróban a sorok adatai, számai nem illeszkedtek a változásokhoz, ahogy az a normál képletekben megszokott $ jel nélkül. Szeretném, ha valahogy meg lehetne vizsgáltatni, hol van annak a blokknak, tartománynak a vége, utolsó sora és mindig az alá beilleszteni az új tartományt, melyben a cellákat (a kitöltendőket) ezután törölni is kellene. Jelenleg ilyen az egyik tartomány másoló makrója, de nem jó így. Sub Makró2() ' ' Makró2 Makró '
' Rows("75:84").Select Selection.Copy ActiveWindow.SmallScroll Down:=3 Rows("85:85").Select Selection.Insert Shift:=xlDown ActiveWindow.SmallScroll Down:=9 Application.CutCopyMode = False Range("C86:M86").Select End Sub
Remélem, érthetően sikerült leírnom, mit is szeretnék, köszönöm segítségeteket.
Ez a 1-gyel való irányított beillesztéses szorzás nem akar nálam működni. Mert marad az eredeti eredmény, azaz nem akar számmá alakulni. A státusz sorban sem mutatja az összeget (és mást sem) ha ezeket a számokat kijelölöm.
ujszaszy - vagy bárki aki letölti a xls fájlt - megkérhetlek, hogy megnézd nálad működik-e nálad ez a fajta 1-gyel való szorzás?
A HELYETTE fv. külön oszlopot igényel, emiatt nem annyira szimpatikus.
még annyit tennék hozzá Delila megjegyzéséhez, hogy a nem nyomtatható karatkterekkel kezdődő tartlalnaknál nem mindig működik.
Jelen esetben is van minden cella előtt egy 160-as kódú valamilyen karakter.
így inkább képlettel csinálnám
=HELYETTE(L6;KARAKTER(160);"")-0
Így működik
:-)
pl. az eredeti C7 cellában "€ 0.060" volt. A cserék alkalmával az € jelet cseréltem (Ctrl+F) semmire. Tehát az € után volt egy szóköz, ami megmaradt.
Először a "€ " (tehát szóközt írva utána) akartam cserélni, de így nem engedte, az az üzenet jön, hogy a "Microsoft nem talált egyezést". Emiatt kényszerültem csak a "€" karaktert cserélni.
És úgy is ez az üzenet jött, ha az "€ 0"-t akartam cserélni, mert jellemzően 1-nél kisebb számok vannak az oszlopban. "€ 0.060"-ból lett volna így 0.06.
Nem tudom, hogy mi lehet a baj, mert "€ 0.060" ebben benne van ez: "€ 0"
Másolásoknál előfordulhat, hogy bár általános formátumúak a cellák, mégis szövegként szerepelnek a benne lévő számok. Ezt legegyszerűbben úgy tudod ellenőrizni, hogy kijelölsz néhány cellát, és ha a státuszsorban szerepel az összegük, akkor számok, másképp nem.
Ilyenkor egyszerűen számokká alakíthatod. Egy üres cellába beírsz egy 1-est, Ctrl+c-vel másolod. Kijelölöd a kérdéses oszlopot. Jobb klikk, irányított beillesztés, szorzás. Már át is alakultak, az 1-est törölheted.
Ez tévedés, valamit rosszul csinálsz. Mivel van Excel 2007-esem is (csak nem használom), megnéztem. A nézet menüben válaszd az ablaktábla rögzítést úgy, hogy a kívánt soron állsz! Tökéletesen működik. Ha a 31. soron állsz, akkor az első 30-at, ha a 180. soron, akkor az első 179-et rögzíti. Az más kérdés, hogy az utóbbinak kevés gyakorlati értelme lehet.
Nem tudom, hogy Te mit csinálsz másképp. Próbáld meg még egyszer!
Sőt ott meg csak a felső első sort rögzíti, a régi meg a felső 3 sor fejlécét is tudta rögzíteni. Ezt se találom hogy lehet megmahinálni :( mire jó ezt változtatgatni folyton :(
Ha jól értelmezem a kérdésedet, akkor ez a megoldás: Ráállsz az utolsó rögzítendő sor utáni első sor (a Te esetedben a 31.) első oszlopára, majd a fenti menüben az 'ablak' gomb kiválasztása után a legördülő menüben: 'ablaktábla rögzítése'. Ekkor az első 30 sor fix, és a 31-től scrolloznak a sorok. Ha nem az első oszlopon állva rögzíted az ablaktáblát, akkor a kiválasztott cellától balra lévő oszlopok is rögzítődnek, a többi pedig bal-jobb irányba scrolloz.
csinálok menetrendeket excellben (kb olyan mint a vasúti)
Egyik táblázatba megírom az oda irányt, aztán egy új munkalapon megírom a vissza irányt.
Namost kellene hétvégi oda és hétvégi vissza irány is, de nem akarok +2 munkalapot készíteni.
El lehet-e valahogy különíteni a felső (kb 30 sort) az alsó soroktól, tehát ha mondjuk be kéne szúrnom vagy törölnom kéne az alsó táblázatból sorokat akkor a felsőben ne változzon semmi?