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.
Nekem is összejött végülis, bocsánatot kérek, hogy szemetelek a hozzászólásommal, csak néha el tudok akadni és végső kétségbeesésemben írok ide Nektek. :)
Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True If Target.Column = 1 And Target.Row = 1 And Target.Value = "TRUE" Then Target.Value = "FALSE" Exit Sub End If If Target.Column = 1 And Target.Row = 1 And Target.Value = "FALSE" Then Target.Value = "TRUE" End If
Hogy a többi cellánál éljen a jobb klikkes menü, akkor ez a tuti:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Target, Range("A1:A2")) Is Nothing Then If Target.Value = "False" Then Target.Value = "True" Else Target.Value = "False" End If Cancel = True End If End Sub
Az aktuális munkalap objektumába (VBE) másold be ezt a kódot:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Target, Range("A1:A1")) Is Nothing Then If Target.Value = "False" Then Target.Value = "True" Else Target.Value = "False" End If End If Cancel = True End Sub
Ez a kód az aktuális munkalap A1-es cellára jobb klikk-kel való kattintáskor fut le, és írja be az Igaz, vagy Hamis értéket!
Tudnátok olyanban segíteni nekem, hogy egy meghatározott cellára jobb egér gombbal kattitva a cella tartalma az előző érték ellentettjére vált? Tehát egy TRUE/FALSE kapcsolót szeretnék létrehozni. :) Köszönöm!
Olyan problémába ütköztem, hogy ha bekérek egy tartományt, ami például "Munka1!A1:A5", akkor melyik változó tárolja azt, hogy Munka1, azaz a munkalap nevét amire hivatkozok.
Van egy ilyen sorom: Sheets("Munka1").cells(MyRange.Row, MyRange.Column)
A Munka1 helyére kellene az a változó ami visszaadja a munkalap nevét!
A válaszom nem erre a speciális esetre vonatkozik, de én is meglepődtem tegnap.
Egy 2003-as füzetből akartam értékeket és képleteket másolni 2007-be. Mindegy, hogy Ctrl+c, Ctrl+v módszerrel, vagy áthúzással tettem, a képletek helyére értékek kerültek. :(
Volt egy excel templatem, ahol az egyik sheet offset és match segítégével olvasott ki a kellő helyekről.
SOK SOK FÜGGVÉNY :-).
Na most az történt, hogy ezek a függvények átalakultak value-vá én meg azon gondolkodom ez hogyan történhetett.
Csak pár embernek van hozzáférése a fájlhoz és annyira specikifusan vannak ezek a függvények a fájban, hoyg egyszerűen nem tudom elképzelni hogyan tudta volna valaki felülírni valuval...
Szerintetek létezik, hogy valami oknál fogva egyszerűen törlődik az offset és értékké átíródik?
A Start menü/Programok/Kellékek/Rendszereszközök/Karaktertábla prodgramban találsz indexben lévő számokat, pl. a Verdana betűtípusnál. Ezeket másold, és az Excelben a cellaformázásnál Ctrl-v-vel beillesztheted az Egyéni kategóriában.
SQLkerdes elég korrekt választ adott erre, de ha végképp nem akarsz egy adatbáziskezelőt, akkor meghatározhatod, hogy max. hány színkód lehet egymás mellett, vagy max. hány termékkód, és lehet több hasonló funkciójú oszlopd (amitől persze a képletek akár a visszataszítóságig is elbonyolódhatnak).
Ha viszont nem akarsz adatbázist, és véges sok színed van, akkor minek a színkódok?
"Ebben az esetben milyen szint rendeljen az almához, illetve milyen terméket rendeljen a sárga színhez?" -- Almából van piros és sárga is. Sárga színű lehet az alma és a banán is.
Több-több kapcsolatot kéne valahogy megjelenítenem. A probléma a megoldási javaslatoddal, mármit azzal hogy egy sheet legyen és hogy egy sor csak egy színt és egy terméket tartalmazzon azért nem jó nekem, mert a színek és termékek valójában nagyon hosszú szövegek, melyekből egyik másik akár több tízhez is kapcsolódhat a másik sheetről (hogy érthetőbb legyen, high level requirementeket szeretnék use case-ekhez párosítani, és ezt a párosítást látni visszafelé is).
Amit ki szeretnék hozni, vhogy így nézne ki az előző egyszerű példánál maradva:
sheet1
1 alma 2,3
2 körte 1,3
3 banán 4
4 dinnye 1,2,3
sheet 2
1 piros 2,4
2 zöld 1,4
3 sárga 1,2,4
4 kék 3
"Miért van szükséged, az első munkalapra, ha ott csak az szerepel, amit a másodikon már felsoroltál?" -- az első munkalapra azért van szükségem, hogy a hosszú szövegeket ott külön tárolhassam, és a másik munkalapon már csak az id-ra kelljen hivatkoznom.
Remélem, régebbi verziót alkalmazol, mint a 2007-es, mert annál nem találom a beállítást.
A 2003-nál az Eszközök/Beállítások/Megjelenítés fülön az Objektumoknál a "Helyük látszik" van nálad bejelölve. "Az összes megjelenítése" beállítással mindig látható lesz a diagramod.