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.
Sziasztok ! A következő dologban kérném a segítségeteket.
Adott A és B munkafüzet. Az egyikben adatok vannak, amikből a másikban legördülő listákat csináltam, hogy a felhasználó ki tudja választani ami neki kell.
Az első kérdésem az, hogy hogyan lehet ( ha lehet ) a legördülő lista szövegét " highlightolni " :D Szóval a cella amibe bele kellene hogy férjen a szöveg kisebb mint a forrás, ezért nem látszik a szöveg végig amikor kiválasztom. ( sortöréssel csináltam meg, szóval amikor beillesztio már jó, akkor 2 sorban van, amikor kiválasztja pedig 1 sorban, tehát nem látszik a szöveg vége )
A második pedig az, hogy legördülő listát tudok-e előszedni HA fügyvénnyel.
Példa: A munkalapon XYCVB szöveghez tartozik 123 456 789 kód.
A másik munkalapon ha kiválasztom XYCVB szöveget, akkor csak 123 456 789-es kódokat kellene hogy felkínálja, ami az A munkalapon az XYCVB szöveggel egy sorban van.
Nektek szerintem nem nagy kaland, nekem kihívás :D
Sub Szín_lekérdezés() If Selection.Font.ColorIndex = -4105 Then MsgBox "A karakter színkódja: " & " fekete (automatikus, -4105)" Else MsgBox "A karakter színkódja: " & Selection.Font.ColorIndex & " " End If If Selection.Interior.ColorIndex = xlNone Then '-4142 MsgBox "A cella hátterének színkódja: " & " átlátszó, -4142" Else MsgBox "A cella hátterének színkódja: " & Selection.Interior.ColorIndex & " " End If End Sub
A kiszínezett cellán indítva megadja a háttér, és a karakterszín kódját.
Fejből nem mondok neked kódokat, de nyisd ki a cellaformázásban a szám fülön az egyedi formátumot, és nézelődj. A negatív számok pirosítására kész megoldás van benne, ha ez elég egyedi szín.
Anélkül, hogy végigpróbálgatnám a teljes színpalettát, honnan tudhatnám meg, hogy melyik "szín szám" milyen színt takar valójában? Negatív számokat más, de egyedi színnel szeretnék megjeleníttetni, a számformátum ekkor pl: 0,00_ ;[Szín5]-0,00
Van egy olyan problémám, hogy van egy 9000 sorból álló excel táblám, aminek a celláiban sok tizedesjeggyel bíró számok vannak. pl.: 0,00800000037997961
De nekem ebből csak a tizedes vessző után 3 számjegyre van szükség. Van olyan képlet ami levágja a maradék számjegyekt? A celleformázás csak takarja, de amikor összefűzöm a cellákat valamivel akkor kiadja a teljes számsort.
Hogy lehetne lecsonkolni 3 tizedesjegyik a cellák tartalmát?
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!