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.
Egy látszólag egyszerű kérdséem lenne: Microsoft Office 2003, Microsoft Office 2007, vagy új Open Office?
Újratelepíttem az XP-met, és a régi Microsoft helyett új Open Office-t kaptam... (Tudom, illett volna megbeszélnem az informatikusommal).
A neten azt olvasom, hogy az Open Office független, jobb, többet tud, jobb a helyesírás-ellenőrzője, de én évekig dolgoztam a 2003-as Ms Office-ban, így szerkesztettem mindent Wordben és Excelben. Író-újságíró vagyok, ezért nagyon nem mindegy, hogy mi lesz ezzel a külső vinyón lévő, nagy adathalmazzal. A cégek, szerkesztők, kiadók szempontjából sem mindegy, hogy meg tudják-e egyáltalán nyitni, amit küldök nekik, meg persze magam miatt sem - tudom-e normálisan kezelni az eddigi fájlokat, illetve nagy dilemma, hogy milyen formátumban nyissam meg és mentsem el az újakat.
Most fent van a gépemen ugye az új Open Office, ami tényleg nem tűnik rossznak, de például a régi Excel-táblázatokat furcsán kezeli, néhány mező formátumát megváltoztatja, stb. Feltettem a gépre a 2007-es Ms Office tesztverzióját is (mindjárt lejár, és nem találom a 25 számjegyű kódot). Ezzel ugyanaz a problémám, az Excelben mások a színek (és ez nekem fontos a kiemelések miatt), a Wordben teljesen mások a sorközök.
Szóval mit javasoltok? Melyiket éri meg hosszú távon használni? Ha valamelyik újat, akkor szépen sorban érdemes lenne átalakítani a több száz régi fájlt is...?
- a munkalap Worksheet_Change eseményét figyeltetném, és ha az adott cella "szolgáltatás" értéket vesz fel, akkor zárolnám a másik cellát, esetleg a háttérszínét is módosítanám, ha meg egyéb értéket vesz fel, akkor feloldanám a zárolást.
- feloldanám az űrlapmezőnek szánt cellák zárolását, aztán is levédeném a munkalapot
- a munkalap Worksheet_Change eseményét figyeltetném, és ha az adott cella "szolgáltatás" értéket vesz fel, ha egyéb értéket, akkor feloldanám a zárolást.
A második kérdésre "valószínűleg igen" a válasz. Ha beküldöd a kódot, részt vehetsz a sorsol.. megnézzük és teszünk javaslatot a módosításra.
Amúgy miattam nem muszáj tisztáznod fenti bizonytalanságokat, mert leszálltam a témáról. Első blikkre több órás fejtörés lenne az algoritmust összehozni, ha egyáltalán sikerülne, és nem volna arcom annyit kérni érte, hogy megérje :o)
Ezen a fórumon milyen vétségekért moderálnak ki hozzászólásokat? Egy kérdésemre adott válaszra akartam rákeresni, de látom, hogy ki van moderálva. Nem emlékszem, hogy bármi botrányos lett volna benne.
Nem egészen világos elöttem a feladat, de ha netántán az lenne, hogy minden oszlop utolsó értékét listázza ki, akkor a mátrixodban az utolsó oszlop elemeit kell kilistázni. Jelen esetben tehát =index(7.oszlop,i,1), ahol i=1...7.
Az A oszlop 2 szóból álló értékeit a B oszlopba írja sortöréssel. A felső sor karakterei pirosak, az alsók kék színűek lesznek. Címsort feltételezve a 2. sortól veszi az adatokat.
Sub szines() Dim sor As Integer, usor As Integer Dim szoveg1 As String, szoveg2 As String
usor = Cells(Rows.Count, "A").End(xlUp).Row For sor = 2 To usor szoveg1 = Left(Cells(sor, 1), InStr(Cells(sor, 1), " ") - 1) szoveg2 = Mid(Cells(sor, 1), InStr(Cells(sor, 1), " ") + 1, 256) Cells(sor, 2) = szoveg1 & Chr(10) & szoveg2 Cells(sor, 2).Characters(Start:=1, Length:=Len(szoveg1)).Font.ColorIndex = 3 Cells(sor, 2).Characters(Start:=Len(szoveg1) + 2, Length:=Len(szoveg2)).Font.ColorIndex = 5 Next End Sub
Az excelem minden további nélkül elfogadja az A!, B! D! munkalaphivatkozást, de a C!-t nem. Csak 'C'!-formában. A C-t egyéb karakterekkel bővítve szintén elfogadja. Csak a C!-re allergiás. Van valakinek valami ötlete, hogy miért?
Hát ha nem megy a makró, akkor nem marad más, mint retro cammogós megoldása a képletekkel. Mivel itt elég bonyi lenne ismerteni, feltettem a datahura. A példa 4 munkalap adatait gyüjti össze +4 vezérlőoszlop segítségével. Rövid magyarázatot is fűztem hozzá, amik segítségével applikálhatod a saját körülményeidhez.
Ha munkafüzet nézetét átváltom oldaltörés megmutatására (kék keretben jelennek meg az oldalak, oldalon kívüli területek meg szürkék ekkor). Ilyenkor baszom nagy szürke betükkel feltünteti, hogy 1. oldal, 2. oldal... Nos ezeket az oldalszámozásokat el lehet tüntetni?
Másik:
Van egy kb. 4000 soros excel. Elején címsorral. Nyomtatásnál minden oldalra ezt a címsort akarnám kinyomtatni, na de nem engedi. Az oldal beállítás, lap fülön a fenti smétlődő sorok ki van szürkítve. Mi lehet ennek az oka?
Excelben készítettem egy anyag és szolgáltatás igénylő lapot. Szeretnék bele olyat fabrikálni, hogy pl: ha az adott cellában valaki a "szolgáltatást" választja akkor egy másik cella (ami pl fuvarparitás) váljon inaktívvá. Ezek a cellák, nagyon egyszeűek, érvényesítéssel raktam "bele" értékeket.
A másik problémám: Írtam egy macrot, amit futtatás (makro a gombhoz rendelve) után elmenti az adott munkafüzetet egy másik file-ba, megadott helyre. Tök jól működik, amit nem tudtam benne megoldani az az, hogy az új file megőrizze a forrás file betűtípusát. Mivel teljesen új munkafüzetbe másolja és menti, így az adott gépen lévő excelben beállított betűtípussal fogja menteni.
És amit még szeretnék, hogy az új file-ba már csak értékek legyenek képlet és hivatkozás vagy érvényesítés nélkül.