- Honor 400 - és mégis mozog a kép
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Amazfit T-Rex 3 - prehisztorikus idő
- Mobil flották
- One mobilszolgáltatások
- Fotók, videók mobillal
- iPhone topik
- Samsung Galaxy A54 - türelemjáték
- Motorola Razr 60 Ultra - ez a kagyló könnyen megfő
- Poco X6 Pro - ötös alá
-
Mobilarena
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
-
Delila_1
veterán
Az előző leírásaidból számomra nem derült ki, hogy a háttereket akarod kifesteni, és az sem, hogy a C: D oszlopok értékadására is dátum-beírással reagáljon a program. Azt gondoltam, ez a két oszlop csak a színezésre szolgál, mármint a progi szempontjából.
Ímé a legújabb változat, a legújabb óhajok szerint (az előzőek helyett).
Sub Worksheet_Change(ByVal Target As Excel.Range)
sor = Target.Row: oszlop = Target.Column
If oszlop = 1 Then Exit Sub
If oszlop = 3 Or oszlop = 4 Then
Range(Cells(sor, 1), Cells(sor, 13)).Select
If Target.Value = "alma" Then Selection.Interior.ColorIndex = 3
If Target.Value = "körte" Then Selection.Interior.ColorIndex = 5
End If
Cells(sor, oszlop).Select
Cells(sor, 1).Select
Selection.Formula = "=TODAY()"
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub -
Delila_1
veterán
Akkor ezt a makrót másold be:
Sub Worksheet_Change(ByVal Target As Excel.Range)
sor = Target.Row: oszlop = Target.Column
If oszlop = 2 Or oszlop > 4 Then
Cells(Target.Row, 1).Select
Selection.Formula = "=TODAY()"
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Exit Sub
End If
If oszlop = 3 Or oszlop = 4 Then
Range(Cells(sor, 1), Cells(sor, 13)).Select
If Target.Value = "alma" Then Selection.Font.ColorIndex = 3
If Target.Value = "körte" Then Selection.Font.ColorIndex = 5
End If
Cells(sor, oszlop).Select
End SubNem tudom, le vannak-e írva a színkódok, viszont van egy kis makróm, ami kiírja az aktuális cella karakter- és háttér színét:
Sub Szín_lekérdezés()
If Selection.Font.ColorIndex = -4105 Then
MsgBox "A karakter színkódja: " & Selection.Font.ColorIndex & " (automatikus)"
Else
MsgBox "A karakter színkódja: " & Selection.Font.ColorIndex & " "
End If
If Selection.Interior.ColorIndex = -4142 Then
MsgBox "A cella hátterének színkódja: " & Selection.Interior.ColorIndex & " (átlátszó)"
Else
MsgBox "A cella hátterének színkódja: " & Selection.Interior.ColorIndex & " "
End If
End SubEzt nem a laphoz kell rendelni, hanem a VBA szerkesztőben az Insert/Module menüponttal új modult kell létrehozni, és erre az új lapra másolni.
-
Delila_1
veterán
Az első kérdésed megoldásához az alábbi makrót másold be a laphoz (lapfülön jobb klikk, a gyorsmenüből a "Kód megjelenítése" menüpontot választva a VBA szerkesztőjében jobb oldalon kapsz egy üres lapot, oda):
Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column > 1 Then
Cells(Target.Row, 1).Select
Selection.Formula = "=TODAY()"
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
End If
Application.CutCopyMode = False
End SubA második kérdéshez nem írtad, hogy ugyanazon a lapon akarod-e alkalmazni, ahol az előbbit. Én másik laphoz írtam hozzá makrót, amit ugyanúgy másolj be a másik lap kódlapjához, mint az előzőt. A makró az F oszlop változását figyeli (IFoszlop=6), és két értékre színezi az egész aktuális sort (target.value="alma" –> piros karakter, target.value="körte" –> kék karakter). Az oszlopba érdemes a két választható választ előre megadni az Adatok/Érvényesítés/Beállítások fül/Lista, a Forráshoz alma; körte.
Sub Worksheet_Change(ByVal Target As Excel.Range)
sor = Target.Row: oszlop = Target.Column
If oszlop = 6 And Target.Value = "alma" Then
Rows(Target.Row & ":" & Target.Row).Select
Selection.Font.ColorIndex = 3
End If
If oszlop = 6 And Target.Value = "körte" Then
Rows(Target.Row & ":" & Target.Row).Select
Selection.Font.ColorIndex = 5
End If
Cells(sor, oszlop).Select
End Sub -
Delila_1
veterán
-
Delila_1
veterán
Mert így van megírva
Szerinted előre be kellene írnia a képleteket a még ki nem töltött sorokba is?
Nézd meg a fájl méretét, azután húzd le a képletet jó hosszan, mentsd el, és megint nézd meg a méretét. A képletek sok helyet foglalnak el, de minek is kellenének előre, ha még nincs mit számolniuk? -
-
-
Delila_1
veterán
A HA függvénynél a zárójel után a feltételt kell megadni, az első ; után azt, hogy mi történjen, ha igaznak bizonyul a feltétel, az újabb ; után pedig azt, hogy mi legyen hamis eredmény esetén.
Itt most két feltételnek is teljesülnie kell, nevezetesen az E7-nek és az E8-nak is valamilyen értéket kell képviselnie ahhoz, hogy a kivonást el lehessen végezni.
A HA függvényt ezért kombináljuk egy ÉS függvénnyel.Az ÉS függvénybe ;-vel elválasztva írjuk be a feltételeket.
<>"" azt jelenti, hogy nem egyenlő üres stringgel.=ha(és(E7<>"";E8<>"");E7-E8;"")
Új hozzászólás Aktív témák
Hirdetés
- Játékkulcsok olcsón: Steam, Uplay, GoG, Origin, Xbox, PS stb.
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
- Microsoft licencek KIVÉTELES ÁRON AZONNAL - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - NYÁRI AKCIÓ!
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! MSI B550M R7 5800X 32GB DDR4 512GB SSD RX Nitro+ 6700XT 12GB Corsair 4000D ASUS ROG 650W
- MSI CYBORG 15 A13V
- BESZÁMÍTÁS! Gamer számítógép Asus B150M i3 6100 16GB DDR4 240GB SSD GTX 1050 Ti 4GB Sharkoon 500W
- BESZÁMÍTÁS! CSAK KIPRÓBÁLT! ASUS ROG Ally X (2024) 1TB kézikonzol garanciával hibátlan működéssel
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest