-
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
-
karlkani
aktív tag
Sziasztok!
Van egy kis táblázatom, amiben az aktuális "kassza" tartalma van. A papír címletek és ezek összege szerepel az első oszlopban (B3-B9), a következőben a darabszám (C3-C9). A harmadikban (D3-D9) pedig a címletek értéke külön-külön (ezek adódnak össze egy egyesített cellába: C10). A D oszlop egy Ha függvénnyel van megoldva, ha értéke "0", akkor "-" jelenik meg, minden egyéb esetben a B*C értéke.
Azt szeretném megoldani, hogy egy cellába írja ki az aktuális dátumot, ha a C10 cella értéke módosul (C10 és D10 egyesítve van). Mivel ezt nem kézzel módosítom, hanem AutoSzum függvény számolja, nem működik a hasonló kérdésre javasolt makró. Megoldható valahogy? Ha nem akkor az is jó lenne, ha a darabszámos oszlopban (C3-C9) figyelné a módosításokat és, ha valahol változás van, az aktuális dátum, idő megjelenjen a C10 mezőben.Előre is köszönöm!
-
karlkani
aktív tag
válasz Delila_1 #26282 üzenetére
Köszi, de én nem címletezni akarok... nem is ezzel a részével van bajom. Azt szeretném, ha módosul a a címletek összeadása (mennyi is az annyi összesen), akkor alatta az aktuális dátum, idő jelenjen meg. Makrót még sosem használtam, amit linkeltem, az alapján meg csak úgy tudtam megoldani, hogy azokra a cellákra állítottam a figyelést, melyekbe csak számok kerülnek.
Amúgy elfér az összes címlet, írtam, hogy csak a papír, az apró nem érdekes. Viszont tényleg elírtam, elfér az 3-8-ig.
Itt egy kép, talán így érthetőbb, mit is szeretnék.
(#26283) azopi74
Sejtem, hogy csak makróval fog menni, amúgy azt írta, körkörös hivatkozás... -
karlkani
aktív tag
Adott egy munkalap, amely tartalmaz makrót. Bármely módosítás után ugye aktív a visszavonás (használata után a mégis) gomb. A makró lefutása után azonban inaktív lesz. Ezzel lehet kezdeni valamit? Valamint olyan cella változását képes figyelni, melyet nem én módosítok, hanem néhány cella tartalmát összegzi, s, ha változás van, azt jelezze egy cellában nekem?
-
karlkani
aktív tag
válasz azopi74 #26318 üzenetére
Oké, köszi.
Konkrét dátum kell egy cellába (hasonló, mint aminél segítettél). Az alapján szerintem össze tudom dobni. így legalább nem kell "makróbaráttá" alakítanom a füzetet.
Ha már szóba került a szombati dátumos téma, azóta, ha megnyitom a füzetet, megnézek valamit, majd bezárom, mindig rákérdez, hogy "mentem a változásokat?". A számolás minden megnyitás után lefut egy alkalommal (függetlenül, hogy nem módosítok semmit ott), azért kérdez rá?
-
karlkani
aktív tag
Sziasztok!
Lenne két kérdésem.
Létre szeretnék hozni egy cellába egy érvényesítéses listát, melynek elemei 0-100-ig az egész számok, de a cellába kézzel ne lehessen beírni, kizárólag a legördülő listából lehessen választani. "Oszlopos" módszerrel a számokat megoldom, bár jobb lenne magánál az érvényesítés forrásánál megoldani ezt, ha lehet. A kézzel történő beírás kiküszöbölése viszont nem megy. Megoldható valahogy?
Van egy HA függvény, ha teljesül, visszaadja egy cella értékét, ellenkező esetben "-"-t ír. Ha megfogom és "lehúzom", mondjuk 31-ig az oszlopban, igaz állítás esetén az első cella érték +1 sor, +2 sor, +3sor, stb lesz. Hogyan oldható meg, hogy minden egyes képletben igaz állítás esetén ugyan az a cella értékét adja vissza?
Előre is köszönöm!
[ Szerkesztve ]
-
karlkani
aktív tag
válasz Fferi50 #27062 üzenetére
Szia!
Ezen a munkalapon 500-20000-ig vannak a papírcímletek, darabszám, érték összesen az adott bankjegyből, a címletek összértéke, valamint a módosítás ideje. Az idő körkörös hivatkozással lett megoldva, egy fórumtárs segítségével, ami szépen működik is. Viszont, ha nem számok kerülnek a darabszámos mezőkbe (véletlen elütöm), akkor a módosítás dátumára kapok egy #ÉRTÉK! hibaüzenetet. Emiatt kell legördülő lista, érvényesítésnél kellene forrásnak megadni 0-100-ig az egész számokat. Gondolom erre marad az, hogy egy oszlopban 0-100-ig elkészítem a cellákat, majd azt adom meg forrásnak, esetleg az oszlopot elrejtem...
Már át is szerkesztettem a képleteknél!
-
karlkani
aktív tag
válasz Fferi50 #27064 üzenetére
Szia!
Tudom, hogy csak egész számokat fogad el, de elütés esetén a számított mezőben #ÉRTÉK jelenik meg azonnal, mert számot betűvel, írásjellel, stb., nem tud szorozni (beírja, csak hibaüzenet jön fel és nem engedi, hogy ott maradjon). Viszont a SZORZAT képletet alkalmazva a sima =A1*B1 helyett, jó. Ugyan, ilyenkor a "nem szám" karaktert 1-nek veszi (mintha 1 db-ot írtam volna, ezért nincs összegzéskor hiba), de az érvényesítés úgyis jelzi, hogy baj van. Innentől kezdve nincs szükség lenyíló menüs listára, mert a módosítás dátumának helyén nem fog #ÉRTÉK megjelenni, amit csak a két rejtett oszlop felfedésével, majd az alábbi képletnél a szerkesztőlécre lépve, majd vissza a munkalapra (ctrl+alt+F9-re innél semmi sem történik).
=HA(C9="";"";HA(VAGY($E$9="";ÉS(SZÁM(F9);C9=F9));F9;C9)) -
karlkani
aktív tag
válasz Delila_1 #27069 üzenetére
Szia!
Simán ráállok a cellára, beírok valamit, ami nem 0-100 közti egész szám, majd ütök egy entert, akkor beírja, az összesítő cellában kiírja, hogy #ÉRTÉK, majd ezzel egy időben feldobja a kis ablakot, hogy a felhasználó nem engedélyezi az adott bevitelt. Rákattintok a mégse gombra, visszaáll az előzőre, viszont a körkörös hivatkozásoknál, ahol ugyancsak #ÉRTÉK jelent meg, megmarad a mégse gomb lenyomása után.
A 3 mező az alábbiakat tartalmazza:
E9 =HA(ÉS(C9<>"";F9<>C9);MOST();HA(C9="";"";$E$9))
F9 =HA(C9="";"";HA(VAGY($E$9="";ÉS(SZÁM(F9);C9=F9));F9;C9))
C10 =E9C9 =SZUM(D3:D8)
Csak akkor lesz ismét jó, ha az F9 cellára állok, majd a szerkesztőlécre lépek, majd vissza a munkalapra.
[ Szerkesztve ]
-
karlkani
aktív tag
válasz Delila_1 #27071 üzenetére
Na igen, én makróval tudtam megoldani, úgy-ahogy.A makró azopi74 kolléga segítségével lett elhagyva. Közel 20 munkalapom van egy fájlban, egyikben sincs, gondoltam jobb is így. Makróval azt sem tudtam megoldani, ha beírok egy mezőbe, de ugyan azt a számot, ami ott van, akkor ne változzon a módosítás ideje. A körkörös hivatkozással ez így működik.
Nem azért lett ilyen. A legfőbb indok, hogy nem csak makrós cellák vannak az oldalon, s a makró lefutása után nem tudom visszavonni azt, amit esetleg előzőleg rosszul vittem be máshova, se a makrót...
-
karlkani
aktív tag
A1 100, 200, 300
B1 =BAL(A1;SZÖVEG.KERES(", ";A1;1)-1)
C1 =KÖZÉP(A1;HOSSZ(B1)+2;SZÖVEG.KERES(", ";A1;HOSSZ(B1)+2)-(HOSSZ(B1)+2))
D1 =JOBB(A1;HOSSZ(A1)-HOSSZ(ÖSSZEFŰZ(B1;" ";C1;" ")))
A2 100
A3 =B1+C1+D1+A2Így is működik, bár kell hozzá 3 segédoszlop... (lehet, hogy egyszerűbben is megoldható)
[ Szerkesztve ]
-
-
karlkani
aktív tag
válasz CarrGomm #27171 üzenetére
Szia!
A lefordított képlet, amit linkeltél:
=HA(HIBA.E(SZÖVEG.TALÁL(" ";A2));"";JOBB(A2;HOSSZ(A2)-SZÖVEG.TALÁL("*";HELYETTE(A2;" ";"*";HOSSZ(A2)-HOSSZ(HELYETTE(A2;" ";""))))))Itt le tudod fordítani a képleteket.
Szerk.:
Látom megelőztek, de linket érdemes elrakni...[ Szerkesztve ]
-
karlkani
aktív tag
válasz CarrGomm #27179 üzenetére
Az, hogy Kovács Géza József helyett legyen Kovács Géza és külön József, megoldható.
A1 Kovács Géza József
B1 =BAL(A1;SZÖVEG.KERES(" ";A1)-1)
C1 =HAHIBA(KÖZÉP(A1;HOSSZ(B1)+2;HOSSZ(A1)-HOSSZ(B1)-HOSSZ(E1)-2);"")
D1 =ÖSSZEFŰZ(B1;" ";C1)
E1 =CSERE(A1;1;SZÖVEG.KERES("^";HELYETTE(A1;" ";"^";HOSSZ(A1)-HOSSZ(HELYETTE(A1;" ";""))));"")A nevek ugye az A oszlopban vannak. Kijelölöd b1-E1-ig, majd lehúzod, ameddig kell, a B és C oszlopokat, elrejted. Ha előtaggal kezdődik a név (dr., ifj., stb), akkor azt a vezetéknévhez csapja hozzá.
-
karlkani
aktív tag
válasz karlkani #27188 üzenetére
Kicsit módosítottam a kolléga kérésére a képleteken. Olyan esetben, ahol csak keresztnév van megadva, nem működött. Ha esetleg másnak is szüksége lenne rá, beírom ide is.
A1 Név
B1 =HAHIBA(BAL(A1;SZÖVEG.KERES(" ";A1)-1);"")
C1 =HAHIBA(KÖZÉP(A1;HOSSZ(B1)+2;HOSSZ(A1)-HOSSZ(B1)-HOSSZ(E1)-2);"")
D1 =ÖSSZEFŰZ(B1;" ";C1)
E1 =HAHIBA(CSERE(A1;1;SZÖVEG.KERES("^";HELYETTE(A1;" ";"^";HOSSZ(A1)-HOSSZ(HELYETTE(A1;" ";""))));"");A1)Ahogy az előzőben is írtam, miután a képletek a helyükön és "lehúztuk" őket, ameddig kell, a B és C segédoszlopokat elrejthetjük
-
karlkani
aktív tag
-
karlkani
aktív tag
válasz azopi74 #27211 üzenetére
Naugye...
Megcsináltam úgy is, ahogy írtad, viszont azt vettem észre, hogy ilyenkor az a cella, ahova a képlet került automatikusan jobbra zár. Miért, hisz nincs beállítva semmi?#27212 csadi0011
=ÖSSZEFŰZ(KEREK.LE(J1;0);" óra ";KEREK.LE(N1;0);" perc ";KEREK.LE(S1;0);" másodperc")[ Szerkesztve ]
-
karlkani
aktív tag
Sziasztok!
Az megoldható, hogy egy cella megjegyzésben két másik cella hányadosa jelenjen meg, de csak akkor, ha a cellába van írva valami?
-
karlkani
aktív tag
válasz Delila_1 #28579 üzenetére
Köszi!
Az még kivitelezhető, hogy a megjegyzésben a hányados egy tizedesre legyen kerekítve és mögé legyen téve a Ft/liter, valamint a következő sorokra is működjön? Megjegyzést minden egyes cellára nekem kell hozzárendelnem és egyesével végigmenni az automatikus méretre állítással is?
[ Szerkesztve ]
-
karlkani
aktív tag
válasz Delila_1 #28581 üzenetére
Nagyon szépen köszönöm!
I/D-vel számolok. Már csak egy bibi van, a megjegyzés, amit a makró létrehoz állandóan látszik.
Egyébként az megoldható, hogy a megjegyzés automatikus mérettel kerüljön a cellába (makró nélkül), menüből hozzáadva.És egy legutolsó kérdés, ha már ennyire beleástuk magunkat. Adott egy füzet, benne elég sok megjegyzéssel, amit kézzel állítottam "méretre", ezeket valahogy belehetne állítani automatikus méretre, persze csak, ha nem gond.
-
karlkani
aktív tag
válasz Delila_1 #28583 üzenetére
Ismételten nagyon szépen köszönöm!
Nem ebben a füzetben kell beállítani, de valóban kettő oszlopról van szó. Átírtam azokra az oszlopokra a makrót, majd az Insert, Module opcióval hozzáadtam. Futtatáskor Run-time error van.
Range(CV.Address).Comment.Shape.Select
Ez a sor "sárgul" be.
-
karlkani
aktív tag
válasz King Unique #28994 üzenetére
Nézet fülre kattintasz, majd kiválasztod a panelek rögzítése menüpontot. De megoldható úgy is, ha kipakolod a gyorselérési eszköztárra az ablaktábla rögzítése opciót.
-
karlkani
aktív tag
Kedves Delila_1!
A múltkor készítettél nekem egy makrót, amivel automatikus méretre állva beírja két szám hányadosát kettő tizedes pontossággal. Kicsit módosítanék rajta. Adott egy H oszlop, amiben az eredeti ár van feltüntetve, az I oszlopban pedig a kedvezménnyel csökkentett ár. Eddig kézzel írtam be mindkettőbe, működik rendesen. Most viszont (mert lusta vagyok) az I-be nem szeretnék beírni kézzel, ott egy Ha függvénnyel vinném be az adatokat. Ezt meg is oldom, nem ezzel van gondom. Ha a D mező üres az aktuális sorban, akkor az I is maradjon üresen, ellenkező esetben meg a cellában a H és D hányadosa jelenjen meg. Ezt végighúzva az I oszlopon azonban megjelenik minden üres sorban levő mezőnél a megjegyzés, amit viszont nem szeretnék. A következő makrót kellene módosítani úgy, hogy csak abban az esetben rendeljen megjegyzést az I cellához, ha a D-be beviszek adatot, s azt is bele kellene még tenni, hogy amikor bekerül a H-ba az összeg, akkor az I-t automatikusan kitöltse a =HA(D="";"";H-D*8) értékkel. Így kidobhatnám a bevitt képletet onnan és nem jelenne meg a megjegyzés se, amíg nem kell neki (gondolom).
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ertek As Double
If Target.Column = 4 Or Target.Column = 9 Then 'D vagy I oszlop
Range("I" & Target.Row).Select
With Range("I" & Target.Row)
On Error Resume Next
.AddComment
.Comment.Visible = True
.Comment.Shape.Select True
.Comment.Text Text:=ertek & " Ft/liter"
.Comment.Shape.Select
Selection.AutoSize = True
End With
If IsNumeric(Range("D" & Target.Row)) And _
IsNumeric(Range("I" & Target.Row)) Then
On Error Resume Next
ertek = Round(Range("I" & Target.Row) / Range("D" & Target.Row), 1)
Range("I" & Target.Row).Comment.Text Text:=ertek & "0 Ft/liter"
Range("I" & Target.Row).Comment.Visible = False
End If
Else: Range("I5").Comment.Text Text:="0 Ft/liter"
End If
Range(Target.Address).Select
End SubValamint, ha az általad megírt makrót használva pl.: a D értéke 25 (l) az I értéke pedig 10000 (Ft), akkor a megjegyzésben eredményül nem 400 Ft/liter jelenik meg, hanem 4000 Ft/liter. Ezzel lehet valamit kezdeni?
Ha időd engedi, előre is nagyon szépen köszönöm a segítséget...
-
karlkani
aktív tag
válasz Delila_1 #29088 üzenetére
Nálam ez annyit csinál, hogy beírja az I oszlopba a H-D*8 értékét... ehhez nem kellene makró sem.
Azt szeretném, ha a D és H mezőket kitöltöm, akkor az I-t töltse ki H-D*8 értékkel, majd ugyanoda megjegyzésbe írja be (automatikusan formázottba) az I és a D hányadosát két tizedesjegy pontossággal.Példa
D = 10 liter
H = 3370 Ft
I=> H-D*8=3370-10*8=3290 Ft
majd ide megjegyzésbe => I/D=3290/10=329,90 Ft/liter -
karlkani
aktív tag
válasz Delila_1 #29088 üzenetére
"Összemixeltem" a két makrót, ez lett belőle.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sor As Long
sor = Target.Row
If Target.Column = 4 Or Target.Column = 8 And Target.Row > 1 Then
Application.EnableEvents = False
If IsNumeric(Cells(sor, "D")) And IsNumeric(Cells(sor, "H")) And Cells(sor, 4) <> "" And Cells(sor, 8) <> "" Then
Cells(sor, "I") = (Cells(sor, "H") - Cells(sor, "D") * 8)
Range(Target.Address).Select
End If
Application.EnableEvents = True
End If
Dim ertek As Double
If Target.Column = 4 Or Target.Column = 8 Then 'D vagy H oszlop
Range("I" & Target.Row).Select
With Range("I" & Target.Row)
On Error Resume Next
.AddComment
.Comment.Visible = True
.Comment.Shape.Select True
.Comment.Text Text:=ertek & " Ft/liter"
.Comment.Shape.Select
Selection.AutoSize = True
End With
If IsNumeric(Range("H" & Target.Row)) And _
IsNumeric(Range("I" & Target.Row)) Then
On Error Resume Next
ertek = Round(Range("I" & Target.Row) / Range("D" & Target.Row), 1)
Range("I" & Target.Row).Comment.Text Text:=ertek & " Ft/liter"
Range("I" & Target.Row).Comment.Visible = False
End If
Else: Range("I5").Comment.Text Text:=" Ft/liter"
End If
Range(Target.Address).Select
End SubKivettem a 0-t ("0 Ft/liter"), amúgy is egy tizedesjegyre kell kerekítenie, viszont mögé kellene még egy 0 (ha egész szám jön ki, akkor nem). De ha nem megoldható, akkor elég így is. Ezen kívül már csak azt kellene megoldani, ha a D és a H cella értékeket törlöm (mindkettőt), törölje az I értéket, valamint az oda mutató megjegyzést is. Meg gondolom szebben is meg lehet oldani, de én a makróhoz nagyon ***** vagyok...
Új hozzászólás Aktív témák
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Androidos fejegységek
- Hálózati / IP kamera
- Házimozi haladó szinten
- Bambu Lab X1/X1C, P1P-P1S és A1 mini tulajok
- iRacing.com - a legélethűbb -online- autós szimulátor bajnokság
- Internet Rádió építése (hardver), és programozása
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Retro teló rajongók OFF topicja
- Samsung Galaxy S21 FE 5G - utóirat
- További aktív témák...