-
Fototrend
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
m.zmrzlina
senior tag
Azt tudom, hogy hogyan lehet egyetlen cellához megjegyzést rendelni. A kérdés, hogy lehet-e tartományhoz is megjegyzést rendelni?
Úgy értem, hogy egy tartomány bármely cellája fölé mozgatva a kurzort ugyanaz a megjegyzés jelenik meg de nem kell minden egyes cellához külön külön megírni.
Vagy esetleg az is jó hogy egy cellához megírni a a tartomány többi elemére átmásolni.
Persze makró nélkül!
-
m.zmrzlina
senior tag
válasz m.zmrzlina #10288 üzenetére
Másolás>Irányított beillesztés>Jegyzetet
Az ember néha nem látja a fától az erdészt
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz Delila_1 #10307 üzenetére
Tudsz erre a problémára forrást adni nekem (link vagy bármi jó lenne)?
A John Walkenbach féle Excel 2007 biblia elég szűkszavú ebben a témában máshol pedig nemigen találok konkrét útmutatót, hogy hol relatív, hol abszolút a hivatkozás. Jelenleg vak tyúk is talál szemet alapon rakosgatom a "$"-t aztán vagy jó vagy nem.
-
m.zmrzlina
senior tag
válasz m.zmrzlina #10324 üzenetére
Mondtam már, hogy imádom az Excel súgóját?
Megjegyzés: A képletekbe beírhatunk cellahivatkozást (cellahivatkozás: A munkalapcella helyét kijelölő koordinátapár. A B oszlop és a 3. sor találkozásánál lévő cella hivatkozása például B3.) úgy, hogy a cellákat közvetlenül a munkalapon jelöljük ki. Ha a lapon jelölünk ki cellákat, akkor abszolút cellahivatkozásokat (abszolút cellahivatkozás: Képletben a cella pontos címét adja meg, a képletet tartalmazó cella helyzetétől függetlenül. Az abszolút cellahivatkozás formája: $A$1.) kapunk. Ha azt szeretnénk, hogy a Microsoft Office Excel megfelelően kezelje a kijelölt tartományban az egyes cellák hivatkozását, használjunk relatív cellahivatkozást (relatív hivatkozás: Valamely cella képletben megadott relatív helyzete a képletet tartalmazó cellához viszonyítva. A képlet másolásakor a hivatkozás automatikusan megváltozik. A relatív hivatkozás formája: A1.).
Hogy ez mennyire informatív!!!!
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz Delila_1 #10328 üzenetére
Köszönöm a pontos választ. Az abszolút és relatív hivatkozások mibenlétével tisztában vagyok, csak a feltételes formázáson belüli használata nem volt világos.
De ez: A két oszlopra egyszerre bevitt képlet úgy működik, mintha beírtad volna az A oszlopba, majd átmásoltad volna a B-be. tisztába tette a dolgot. Innentől világossá vált, hogy miért nem színeződött a B oszlop.
Köszi még egyszer.
-
m.zmrzlina
senior tag
válasz Delila_1 #10331 üzenetére
Illetve a tartomány bármely cellájába bekattintva ugyanazt a képletet látom a szabálykezelőben amit az elsőbe beírtam de valójában az ezredik sornak köze nincs az A26-os cellához, ott A1000-nek kellene látszódnia. Persze attól még jól működik a képlet, mintha A1000 lenne benne.
És ha ennek a miértje nem derül ki a súgóból akkor az ember csak néz mint hal a szatyorban
-
m.zmrzlina
senior tag
Lehet, hogy kicsit nagy fába vágtam a fejszémet és elakadtam. Van egy munkafüzetem amiben van egy olyan képlet(szörny)em ami négy sorba fér csak el a szerkesztőlécen ráadásul kb 20000 cellában. Azt csinálja, hogy a nyitó zárójel és a % előtti szóköz között lévő számot kihámozza a szövegből és értékké alakítja. Mindezt úgy, hogy nem számít neki, hogy mi van beállítva tizedeselválasztónak a gépen.
Írtam helyette egy saját fv-t ami így néz ki:
Function KIHAMOZ(text As String, utantol As String, elottig As String, tizedesjel As String)
Dim szam As String
szam = Mid(text, WorksheetFunction.Search(utantol, text) + 1, WorksheetFunction.Search(elottig, text) - WorksheetFunction.Search(utantol, text) - 1)
For i = 1 To Len(szam)
If Asc(Mid(szam, i, 1)) < 48 And Asc(Mid(szam, i, 1)) <> Asc(tizedesjel) Then
Mid(szam, i, 1) = tizedesjel
End If
Next i
KIHAMOZ = szam * 1
End FunctionA fv tökéletesen működik amíg nem akarom értékké alakítani a kapott számot. Ha H2-ben átírom a ","-t "."-ra a Hoszlop összes tizedeselválasztója átíródik pontra.
Értékké alakítás után ha az Excelben "," az elválasztó és H2-ben ","-állítok be akkor működik sőt ha H2-be "."-t teszek akkor #ÉRTÉK hibát ad a függvény (ahogy elvárom tőle).
De ha az Excelben "." az elválasztó és én H2-be pontot teszek akkor is #ÉRTÉK hibát ad ha viszont "," -t akkor elvégzi az értékké alakítást de a cellában "1.0" formában (ponttal) jelenik meg az érték.
Magyarul mindkét esetben ","-t kell kiválasztani H2-be, hogy működjön.
Na ez most jó bonyolult de talán érthető.
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz Fire/SOUL/CD #10356 üzenetére
Szerintem egy kicsit körülményesen oldottad meg
látnád csak az eredeti képletet amit ki akarok váltani vele...
Lehet hogy igazad van pedig hidd el benne van minden amit én ma az Excelről tudok.Mivel Function-t írtál, annak adj visszatérési paramétert.
Milyen formában kell ezt megtenni? -
m.zmrzlina
senior tag
válasz Fire/SOUL/CD #10358 üzenetére
1. Szerintem(amit legalábbis a képeden látok), ahhoz makró sem kell(bár gondolom sok cellán, nagyobb tartományon kell végigjátszani a dolgot, ezért használod a makrót)
KB 1700x8 a tartomány mérete (na jó kicsit túloztam a 20000-rel) és nem makróban gondolkodom, hanem ezzel a függvénnyel szeretnék kiváltani egy rettentően bonyolult képletet.
2.Nekem a fv első paramétere String típusú annak hogy adjak Single vagy Double tipust?
-
m.zmrzlina
senior tag
válasz m.zmrzlina #10362 üzenetére
Na közben rájöttem (azt hiszem). Így gondoltad?
Function KIHAMOZ(text As String, utantol As String, elottig As String, tizedesjel As String) As Double
Dim szam As String
szam = Mid(text, WorksheetFunction.Search(utantol, text) + 1, WorksheetFunction.Search(elottig, text) - WorksheetFunction.Search(utantol, text) - 1)
For i = 1 To Len(szam)
If Asc(Mid(szam, i, 1)) < 48 And Asc(Mid(szam, i, 1)) <> Asc(tizedesjel) Then
Mid(szam, i, 1) = tizedesjel
End If
Next i
KIHAMOZ = szam ' *1
End FunctionNem tudom kiemelni de a fv fejléc legvége és a legvégén kikommentezett 1-es szorzó lett változtatva.
De sajna ez az eredeti problémát csak nem oldotta meg.
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz Delila_1 #10366 üzenetére
Az lenne a koncepció, hogy a felhasználó beállítja a H2 cellában, hogy mi nála a tizedeselválasztó és a fv ha mást talál a Stringben mint ami be van állítva akkor lecseréli. És ezt tökéletesen meg is csinálja a fv.
A baj akkor kezdődik, ha a kapott Stringet értékké akarom alakítani.
Ha pontra állítom az elválasztót (Területi beállításoknál) akkor bármi van a H2cellában (akár pont akár vessző) helyesen értékké alakítja 50.0 alakban. (Miért nem ad #ÉRTÉK hibát ilyenkor ha vessző van a H2-ben?) Ha meg vesszőre akkor vessző esetén jó az értékké alakítás, pont esetén pedig #ÉRTÉK hiba van. (Miért nem alakítja értékké ilyenkor is csak 50,0 alakban?)
És ez a fent vázolt jelenség akkor is jelen van ha nem a saját fv-met hanem az ÉRTÉK() fv-t próbálom.
-
m.zmrzlina
senior tag
Van egy munkafüzetem amiben az egyik oszlopba kézzel gépel be útvonalakat cellánként egymás alá a júzer. Hat oszloppal arrébb a települések távolságát írja be soronként.
Szeretnék csinálni egy "adatbázis" munkafüzetet amiben szerepelne az összes útvonal amit egyszer már begépeltek (távolsággal együtt) és azt szeretném ha egy adott útvonalat begépelnek az A munkafüzetben és az a karaktersorozat szerepel a B (akár meg sem nyitott) munkafüzetben akkor a hozzá tartozó távolságot automatikusan visszaadja az A munkafüzet megfelelő cellájában.
Elsősorban nem kész megoldásokat várok hanem útmutatást, hogy merre induljak el. Nem szeretnék felesleges energiát feccölni zsákutcának bizonyuló megoldásokba.
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz Delila_1 #10414 üzenetére
Köszi a gyors választ.
Az első része tökéletesen működik is. Az egy más kérdés, hogy az adatbázisban (másik munkafüzet) mehet egymás mellé a két oszlop ezért az FKERES két középső paramétere pl $A:$B;2 de ez csak részletkérdés.
A másik részét a válaszodnak nem értem. Vagy te értetted félre a kérdést, vagy én a választ.
Azt szeretném, hogy az adatbázis munkafüzet mondjuk üresen indul és ahogy beír az "A" munkafüzetbe a júzer egy addig a B-ben nem szereplő karaktersorozatot és beírja a hozzá tartozó távolságot (hat oszloppal arrébb) akkor ezzel kiegészíti az adatbázist amit azután az FKERES használni tud.Így az adatbázis folyamatosan "hízna" hónapról hónapra miközben az azt használó "A" munkafüzet minden hónapban nulláról indulna.
Talán érthető lesz.
-
m.zmrzlina
senior tag
válasz Delila_1 #10415 üzenetére
Az enyém így néz ki:
A felső rész A oszlopát írja a felhasználó (jelenleg a H-t is amit szeretnék kiváltani) Ez az FKERES-sel tökéletesen megy is.
Azt szeretném ha a felső munkalap "A" oszlopába ír egy útvonalat és ez még nem szerepel az alsó munkalap "A" oszlopában akkor azt a hozzá tartozó távolság adattal együtt hozzáfűzi az alsó munkalaphoz növelve ezzel az FKERES adatbázisát.
-
m.zmrzlina
senior tag
válasz m.zmrzlina #10417 üzenetére
Tegnap kicsit fáradt voltam már. Szóval:
A felső rész B oszlopát írja a felhasználó (jelenleg a H-t is amit szeretnék kiváltani) Ez az FKERES-sel tökéletesen megy is.
Azt szeretném ha a felső munkalap "B" oszlopába ír egy útvonalat és ez még nem szerepel az alsó munkalap "A" oszlopában akkor azt a hozzá tartozó távolság adattal együtt hozzáfűzi az alsó munkalaphoz növelve ezzel az FKERES adatbázisát.
-
m.zmrzlina
senior tag
válasz Delila_1 #10422 üzenetére
Köszi a választ, és külön köszönöm a kommentes választ.
Sajnos nem működik a kód de nyilván én szúrok el valamit mert a tiédtől sokkal egyszerűbb kódok sem működnek amit munkalaphoz rendelek de sajna most egy darabig nincs időm komolyan foglalkozni a dologgal.
Ráadásul most fogok részt venni egy Számalkos VBA2 tanfolyamon és megígérem hogy nem fogok szót ejteni rólad mert restellném magam hogy ilyen támogatással mint a tied csak addig jutottam ameddig.
Majd még visszatérünk a problémámra de ameddig nem tudok értelmeset kérdezni addig maradok magamnak és küzdök a problémámmal magam (ha lesz rá időm).
-
m.zmrzlina
senior tag
válasz Delila_1 #10444 üzenetére
Köszönöm még egyszer a segítséget, úgy tűnik működik. Bár sokszor éreztem úgy mint Bodri az Argó című filmben (ti. hogy "Sok nekünk ez a meló Tibi!") de végül összejött.
Végül a cellák nem ott és nem úgy voltak ahogy először írtam (vagy ahogy te értetted) de átírva a hivatkozásokat rendbe jött.
Annyi szépséghibája van a dolognak hogy ez a sor
usor% = ws.Range("B1").End(xlDown).Row + 1 'Első üres sor a ws.B oszlopában
meg ez:
usor% = ws.Range("H1").End(xlDown).Row + 1 'Mint fentmindaddig kiakadt Overflow hibával amíg nem volt legalább két sorban adat az általad A.xls munkafüzetnek nevezett listában. Pedig usor%-nak nem adtunk adattípust -tehát Variant lett-
abba pedig bele kellene férnie 1048576-nak.Vagy tévedek?
-
-
m.zmrzlina
senior tag
For... Each...Next ciklussal szeretném Munka2 egy adott tartományát Munka3 ugyanolyan méretű de pár sorral feljebb lévő tartományába másolni.
Hogyan tegyem?
-
m.zmrzlina
senior tag
válasz m.zmrzlina #10485 üzenetére
Megoldódott.
-
m.zmrzlina
senior tag
válasz Delila_1 #10490 üzenetére
Igen kell mert nem csak egyszerűen átmásolni akarom egyben az egészet, hanem egyenként minden cellát megcsócsálni.
Sub kiemel()
Dim cella As Range, kiemeles As String
For Each cella In Selection.Cells
kiemeles = WorksheetFunction.Substitute(Mid(cella.Value, WorksheetFunction.Search("(", cella.Value) + 1, WorksheetFunction.Search("%", cella.Value) - WorksheetFunction.Search("(", cella.Value) - 2), ".", ",")
Worksheets("riport").Cells(cella.Row - 10, cella.Column).Value = kiemeles * 1
Next
End SubAz útvonalas munkafüzet sikerén felbuzdulva szeretném kicsit emberi formára hozni egy régebbi munkafüzetemet amivel kapcsolatban itt érdeklődtem.
Ez a ciklus hamarabb lefut 13000 cellán mint amennyi idő alatt az eredeti fájl betöltődik.
A fájl mérete így kb 1/3-a az eredeti fájlnak de az UDF-es megoldásnál is gördülékenyebben működik.
-
m.zmrzlina
senior tag
válasz Delila_1 #10503 üzenetére
Én csak annyi különbséget látok, hogy lehagytad a .Value-kat ill, hogy bennehagytál egy szóközt a "%" előtt (a végén csak egyet vonsz ki)
Ilyen a szerkezete a celláimnak:
07:27 (0.7 %)
02:10 (3.8 %)
01:14 (0.2 %)
00:00 (0.0 %)
00:37 (0.0 %)
00:00 (0.0 %)Azt tudom (nem olyan rég óta ) hogy a .Value-t el lehet hagyni de a magam számára is áttekinthetőbb a kód ha bennehagyom ezeket a nem kötelező részeket. Kis túlzással még a 2*2+2-t is zárójelezni szoktam (2*2)+2, hogy pár hét múlva is tudjam, hogy mit miért csináltam. (Aztán sokszor még így sem tudom )
-
m.zmrzlina
senior tag
válasz gigi183 #10534 üzenetére
Na próbálkoztam még, és működik, már csak annyit kellene megoldanom, hogy ha az aktuális lapot átmásolom mondjuk egy Today feliratú munkalapra, akkor az Nts oszlopban lévő számok eggyel csökkenjenek, vagy automatikusan, vagy gombbal.
Erre a problémára új modulba (Inset>Module) tedd be a következőt:
Sub masol()
Application.ScreenUpdating = False 'képernyőftissítést tilt
ActiveSheet.Copy after:=Sheets(ActiveWorkbook.Sheets.Count) 'lemásolja az aktív munkalapot és az utolsó munkalap után helyezi el
ActiveSheet.Name = ActiveSheet.Index + 1 'ad neki nevet
Range("E1048576").End(xlup).Select 'beáll az E oszlop utolsó cellájába
Do Until ActiveCell.Value = "nts" 'ciklus amíg fel nem ér a fejlécig
If ActiveCell.Value <> "" Then ActiveCell.Value = ActiveCell.Value - 1 'kivonja az egyet
If ActiveCell.Value = 0 Then 'ha nts=0
Range(ActiveCell.Offset(0, -3), ActiveCell.Offset(0, 4)).Value = "" 'a kívánt cellák tartalmának törlése
End If
ActiveCell.Offset(-1, 0).Select 'egy cellát fel
Loop
Application.ScreenUpdating = True 'képernyőftissítést engedélyez
End SubNekem így néz ki a munkalapom amit kezel:
Kiindulásnak jó aztán majd pontosítasz.
-
m.zmrzlina
senior tag
válasz gigi183 #10542 üzenetére
Örülök ha működik, ha valami gond van jelezd!
A másik problémád megoldására egy ilyesmiből érdemes kiindulni:
Sub unmerge()
Application.ScreenUpdating = False
Range("B1048576").End(xlup).Select 'beáll az B oszlop utolsó cellájába
Do Until ActiveCell.Value = "Name" 'ciklus amíg fel nem ér a fejlécig
ActiveCell.unmerge 'cellák szétválasztása
Selection.FormulaR1C1 = ActiveCell.Value 'üres cellák értéke = aktívcella értéke
ActiveCell.Offset(-1, 0).Select 'egy cellát fel
Loop
Application.ScreenUpdating = True
End SubA lényeg a ciklusmagban lévő első két sor. Természetesen ha más a tartomány vagy a kilépési feltétel akkor át kell írni de a szétválasztás és a kitöltés szerintem így működhet.
Én a #10537-ben lévő táblázat B oszlopában lévő összevont cellákon teszteltem.
Majd pontosíts!
-
m.zmrzlina
senior tag
Hogyan kell változóba írni azt, hogy egy kijelölt tartomány hány sorból és hány oszlopból áll?
-
m.zmrzlina
senior tag
válasz Fire/SOUL/CD #10545 üzenetére
Köszönöm!
sorok_szama = Selection.Row.Count-tal próbálkoztam
Az a fránya "s" betű...
-
m.zmrzlina
senior tag
válasz gigi183 #10542 üzenetére
A cellák szétválasztására (ha nem csak egyetlen oszlopról van szó) itt egy másik megoldás:
Sub unmerge_v2()
Dim sor As Integer, oszlop As Integer
sor = Selection.Rows.Count 'kijelölt tartomány mérete
oszlop = Selection.Columns.Count 'köszönet érte Fire-nek :-)
For j = 1 To sor
For i = 1 To oszlop
ActiveCell.unmerge 'cellák szétválasztása
Selection.FormulaR1C1 = ActiveCell.Value 'üres cellák értéke = aktívcella értéke
ActiveCell.Offset(0, 1).Select 'eggyel jobbra
Next
ActiveCell.Offset(1, -oszlop).Select 'vissza a sor elejére
Next
End SubArra figyelj, hogy amikor elindul a makró akkor legyen kijelölve a teljes tartomány amiben szétválasztandó celláid vannak.
Természetesen ez a kód is gyorsabban lefut letiltott képernyőfrissítéssel.
-
m.zmrzlina
senior tag
válasz m.zmrzlina #10547 üzenetére
Bocsánat, most látom, hogy ez a kód feltölti az üres cellákat az aktív cella értékével. (amit nem szeretnénk). Ennek kiküszöbölésére tedd be a következő sort az oszlop változó értékadás után a külső FOR ciklus elé:
Cells(Selection.Row, Selection.Column).Select
Ez ugyan megszünteti a a kijelölést de itt már nem baj mert a tartomány mérete ekkor már benne van a változóban.
-
m.zmrzlina
senior tag
válasz artiny #10551 üzenetére
Ne keress olyan opciót mint pl egy Userformon lévő Textbox specialEffect tulajdonsága.
Szerintem ez a munkalap úgy készült, hogy a készítő kijelölte a teljes munkalapot A1-től IV65536-ig, majd adott neki egy viszonylag világos szürke háttérszínt. Aztán a beviteli mezők (pl:C7) háttérszínét fehérre vagy inkább No Fill (nincs kitöltés-re) állította majd a cella felső és bal oldali keretét egy sötétebb szürkére. Ettől van olyan hatása a cellának mintha süllyesztett lenne, de ezt neked kell megcsinálni, nincsen hozzá gomb ami egy kattintással megadja a stílust. (el lehet művészkedni vele egy darabig ha valakinek van hozzá affinitása)
Szép kis meló lehetett megcsinálni ezt a munkafüzetet még akkor is ha a cella formátumát le lehet másolni és nem kell minden egyes cellánál külön beállítgatni.
[ Szerkesztve ]
-
m.zmrzlina
senior tag
Az első kérdésedre:
A tartományt (a legkisebb és a legnagyobb szám közötti tartományt ) felosztod annyi részre ahány szintű átmenetet akarsz csinálni. Minél több a szint annál finomabb lesz az átmenet. Az 5 célszerűnek látszik mert ahhoz nem kell egyéni szinekkel bajlódni csak kiválasztani a "Téma szinei"-ből.
Aztán minden szinthez csinálsz Feltételes formázást az alábbiak szerint:
Az intervallumok határait megadod a "következők között van" utáni két cellában, és a Betűtipus fülön kiválasztasz az adott intervallumhoz egy betűszínt. Célszerűnek látszik a legvilágosabbal kezdeni és minél nagyobbak a számok annál sötétebb színt választani.
A végén a szabálykezelőben ilyesmit kell látnod:
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz medvezsolt #10584 üzenetére
Nyisd meg a kérdéses munkafüzetet és új modulba másold be ezt majd futtasd:
Sub PasswordBreaker()
'
' Published by Jacob 'm3Rlin' Dybala (www.m3Rlin.org)
' Original post: http://www.m3rlin.org/wordpress/excel-worksheet-protection-code-breaker
' Feel free to visit and write a comment!
'
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 As Integer
On Error Resume Next
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If ActiveSheet.ProtectContents = False Then
MsgBox "One usable password is " & Chr(i) & Chr(j) & _
Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
ActiveWorkbook.Sheets(1).Select
Range("a1").FormulaR1C1 = Chr(i) & Chr(j) & _
Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
Exit Sub
End If
Next: Next: Next:
Next: Next: Next
Next: Next: Next:
Next: Next: Next
End Sub -
m.zmrzlina
senior tag
Ez sajnos nem jó nekem. Én ezzel a módszerrel szeretném megoldani, ha lehet, csak a cellák helyett a betűket színezze.
De bizony, hogy jó. Csak a példámban egy szín világosság értéke változik neked pedig az kell, hogy (ha nem is silány 5 lépésben) két szín átmenjen egyikből a másikba. Sajnos ha ragaszkodsz a példádban lévő látványhoz akkor nem fogod megúszni az egyéni színek felvételét. Minél finomabb átmeneteket akarsz annál többet.
A 2007-es Excel alapból nem tudja (vagy legalábbis én nem tudok róla) azt a formázást amit szeretnél, szóval kénytelen leszel szegelgetni.
Mi a tartomány (legkiseb-legnagyob szám) amit kezelni szeretnél. Lehet nekiállok egy kicsit művészkedni. (Jelzem botrányos színlátásom van )
-
m.zmrzlina
senior tag
Egy form-ot szeretnék csinálni, amibe mindig becopyzok egy oszlopnyi adatot és mindig az aktuális adatok határozzák meg a tartományt.
Így már értem, valóban nem a szín a probléma gyökere. A "form" gondolom nem VBA UserForm hanem egy megfelelően kialakított Excel munkalap, ugye?
-
m.zmrzlina
senior tag
Szerintem ebből makró lesz de ezzel kapcsolatban nekem is van kérdésem.
Miért nem lehet egy feltételesen formázott cella háttérszínét Másolás>Irányított beillesztés>Formátum módszerrel lemásolni?
Illetve ha ilyen cella háttérszínének az értékét szeretném lekérdezni az Immediate ablakban az ?ActiveCell.Interior.Color paranccsal akkor a fehér (vagy Nincs kitöltés) értékét adja ( 16777215-öt)?
(Ismerjük a viccet? "Angolórát adok-veszek.")
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz Delila_1 #10594 üzenetére
Ahogy a formátumfestővel úgy az irányított beillesztéssel is tudom másolni. (ti ha a formátum másolása után kitöltöm adattal a cellákat) Én azt reméltem, hogy a feltételesen formázott celláknak csak a színét le tudom másolni üres cellákba.
De ez nem is nyomaszt annyira engem mint az Immediate ablakos lekérdezés. Ott ha üres a cella ha van benne adat mindig a fehér cella háttérszínét adja a ?ActiveCell.Interior.Color parancs.
-
m.zmrzlina
senior tag
válasz Delila_1 #10597 üzenetére
Állíts egy cellát alapban arra a színre, amit majd a feltétellel akarsz létrehozni, és ezt kérdezd le.
Ezzel a módszerrel kérdés nélkül is le tudnám kérdezni.
Az "alapban arra a színre állítás"-sal van gondom (ezt nem tudom másolni sem irányított beillesztéssel sem formátum másoló ecsettel)
[ Szerkesztve ]
Új hozzászólás Aktív témák
- Honor Magic6 Pro - kör közepén számok
- Samsung Galaxy S21 és S21+ - húszra akartak lapot húzni
- Parci: Milyen mosógépet vegyek?
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Mini-ITX
- Kanada feltalálta a Netflix-adót
- Luck Dragon: Asszociációs játék. :)
- Vicces képek
- Parfüm topik
- Háztartási gépek
- További aktív témák...
Állásajánlatok
Cég: Alpha Laptopszerviz Kft.
Város: Pécs
Cég: Ozeki Kft.
Város: Debrecen