-
GAMEPOD.hu
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
-
whatnot
őstag
Vagy írsz rá egy makrót
Ha az adatokat sorba lehet rendezni, akkor lehet készíteni egy ciklust, ami az első sortól az utolsó előttiig megvizsgálja, hogy az adott cella és a következő cella egyenlő-e. Ha nem, lépjen a következő sorba, ha igen, törölje mindkét cellát és lépjen le két sort. -
BuktaSzaki
tag
Kösz srácok, már csak az a baj, hogy annyira lefogta az excel a gépet, hogy 20 perce 10%-nál tart a számítás Pedig nem egy gyenge vacak....
-
Caipi
tag
válasz BuktaSzaki #17453 üzenetére
Add ki bérmunkába Távol-Keleti programozóknak egy Snicker's -ért :-)
-
atillaahun
veterán
válasz whatnot #17452 üzenetére
Ilyen 1-2 százezer soros tábláknál nekem is nagyon haldoklott már a gép, az segít valamit ha kikapcsolod a Képlet-ek között az automatikus újraszámolást, és csak kézzel nyomogatod neki F9-el, amikor éppen szükséges, mert magától minden kattintás után elkezd gondolkozni valamin.
-
nagyúr
Üdv. Kollégák olyan egyszerűnek írják ezt a kombinált diagramot nekem mégsem jön össze. Adott 2 munkalap ahonnan szeretném összevadászni az egészet, de valamiért nem sikerül. Csak az egyiket tudom hozzáadni, vagyis adatsorba hozzá tudom adni a másikat is, de akkor nem a dátum függvényében fogja mutatni. Mit rontok el? Excel 2003
-
Melorin
addikt
Sziasztok!
Ma ismerkedtem meg az ofszet képlettel meg egy-s mással.
Tulajdonképpen pont azt szeretném csinálni ami a VIDEO-n van, csak ott elakadok, hogy amikor az "Atadok érvényesítése" ablakban beírom az általam elkészített táblázat nevét és OK-t nyomok, ezt írja ki: "A forrás kiértékelése jelenleg hibát okoz. Folytatja?"
Ez miért lehet?
Mondjuk már ott gyanús a dolog, hogy a Névkezelőben amikor beírom az OFSZET képletet, és rákattintot arra az ellenőrzés gombra vagy mire, akkor nem jelőli körbe szaggatott vonallal az általam meghatározott területet. -
Mutt
aktív tag
Hali,
Bepötyögtem a képletedet és ha CSE-t nyomsz rá akor műxik.
D2-ben ez van: {=HA(VAGY($G2="";$J2="");"";HA((SZUM(HA(ELTOLÁS($G2;0;0;1;DARAB2($G2:$ZR2))=D$1;ELTOLÁS($J2;0;0;1;DARAB2($G2:$ZR2)))))=0;"";SZUM(HA(ELTOLÁS($G2;0;0;1;DARAB2($G2:$ZR2))=D$1;ELTOLÁS($J2;0;0;1;DARAB2($G2:$ZR2))))))}Ami szerintem elhagyhatsz:
- az elejéről az üres cellák ellenőrzését, mivel a SZUM csak akkor fog eredményt adni ha cellákban van érték és azokból is a csoport első eleme egyezik a keresett kulcsszóval (pl. Úton) és a nettó érték mezőben pedig szám van.
- továbbá látom, hogy a 0 értéket sem akarod megjeleníteni. Erre van két megoldás:
1. A cella formátumnak add meg ezt. [<>0]Normál;[=0]"";;
2. Használhatsz feltételes formázást; egy olyan szabályt csinálj, hogy amikor a cellaértéke 0, akkor a betüszín a háttérszínnel megegyező legyen. (Ha a páros és páratlan sorok színe más, akkor kell két szabályra lesz szükséged.)Ha a fenti két dolgot elhagyod, akkor már ennyi marad a képletből (továbbra is CSE):
{=SZUM(HA(ELTOLÁS($G2;0;0;1;DARAB2($G2:$ZR2))=D$1;ELTOLÁS($J2;0;0;1;DARAB2($G2:$ZR2))))}üdv.
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Caipi
tag
Köszönöm a tippeket,
Az a gondom, hogy ha hibafigyelés nélkül rakom be a képletet, üres cellák esetén #HIV! hibát ad, úgyhogy legalább egy HAHIBA()-ba beleteszem az egészet.
A 0 eltüntetését köszönöm, ott az első javaslatot használom, mivel elkészített táblázatban más-más színűek a sorok. -
motinka
tag
sziasztok,
ma a gépemre került egy excel tábla és egy érdekel függvénysorra lettem benne figyelmes.
Ha segítene valaki megértetni mit is csinál ez a képlet, nagyon megköszönném. Főleg a @ jel nagyon nem világos mit keres benne.a képlet:
=HA(ÉS(ÓRA([@kezdet])>=eredmény!$F$4;ÓRA([@kezdet])<eredmény!$D$4);"0";"1")
MoTiNka
-
Caipi
tag
válasz motinka #17463 üzenetére
Szia,
ha jól értelmeztem:
A @kezdet a kezdet névvel ellátott cellákra hivatkozik (van egy olyan oszlopod?). Nekem akkor adott ilyet, amikor az excel beépített táblázat formáit használva formáztam meg egy táblázatot.A képlet maga megvizsgálja, hogy a @kezdet hogyan viszonyul az eredmény fülön az F4 és D4 cellához.
A @kezdetben szereplő időpont órája nagyobb, vagy egyenlő, mint eredmény fül F4 és kisebb, mint eredmény fül D4, tehát a két időtartam között van (pl. 8-16.30-ig), akkor a függvény végeredménye 0, különben 1.
Túlórát számol esetleg?Üdv,
Caipi -
Excelbarat
tag
válasz motinka #17463 üzenetére
Hi
[@kezdet] ilyen formában azt jelenti hogy ez egy táblázatban lévő fejlécnek a megnevezése
Tehát az adatok táblázatként vannak formázva (stílusok - formázás táblázatként) és ilyenkor a hivatkozásokat nem A1, C1 ... ként jelöli hanem @fejrovat-tal.
Itt egy minta, talán így jobban megérted. (hozzáteszem ilyenkor a beírt képletet automatikusan végigmásolja a soron )
üdv
szerkesztve: közben már befutott egy megoldás[ Szerkesztve ]
-
motinka
tag
Köszönöm mindkettőtöknek a kimerítő gyors választ,.Igen, majdnem túlóra, de valószínű az lett belőle,
Ez egy munkaidő utáni hibabejelentések vizsgálata, ahol a két időpont közötti bejelentéseket gyűjti ki. Igazán a @ jel ilyen használatát nem ismertem, de nagyon ügyes és időtakarékos megoldás, ahol lehet ezentúl használni fogom.
Még1x kösz a segítség!
üdv
TiborMoTiNka
-
csferke
senior tag
Sziasztok!
Hogyan lehet megadni hogyha egy adott cellára (D6) lépek akkor megjelenítsen egy form-ot (frmCalendar)? Ha ezen a form-on kiválasztok egy dátumot akkor pedig az alatta lévő cellára lépjen.
Vagy ehhez már VBA (macro) kell?köszi
-
Delila_1
Topikgazda
válasz csferke #17467 üzenetére
Többen panaszkodtak, hogy nem tudják megjeleníteni a naptár vezérlőt. Most egy olyan, makrót tartalmazó füzetet linkelek, ahol erre nincs is szükség. 2003-as verzió, ami működik a magasabb verziójú Excelekben is.
A makró a D oszlop bármelyik cellájára kattintva megjeleníti a formot a naptárral, a nap kiválasztása után beírja az értéket az aktuális cellába, majd a fókusz a következő cellára ugrik.
Ha csakis a D6-ra történő lépéskor akarod a formot megjeleníteni, akkor a Naptár laphoz rendelt makróban az
If Target.Column = 4 Then Naptar.Show
sort írd át a következőre:
If Target.Addres = "$D$4" Then Naptar.ShowProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
m.zmrzlina
senior tag
Van egy munkafüzetben változó számú munkalap (5-30). Minden lapon egy naphoz tartozó adatok. A dátum megtalálható a lapokon B2:B1500 tartományban (minden cellában) a következő formátumban: ééé.hh.nn ó:pp. Természetesen az óra perc változik de ez nem probléma.
A feladat: időrendi sorrendbe kell rendezni a lapokat (legkorábbi elöl)
Próbáltam a lapokat a hozzájuk tartozó dátumra átnevezni, de hogyan tovább?
-
m.zmrzlina
senior tag
válasz m.zmrzlina #17470 üzenetére
Úgy tűnik találtam egy megoldást. (de hogy miért mindig 5 perccel azután, hogy kiposztolom a kérdést)
-
csferke
senior tag
válasz Delila_1 #17469 üzenetére
Delila köszönőm fáradozásodat.
Időközben én is "kapirgáltam" és találtam is egy megoldást a naptár gondokra.
Ez előhívható bármely cellában a Ctrl+Shift+C kombinációval vagy jobb klikk-re megjelenő menüből.
[link]Ezt kombinálva Delila megoldásával igen jól, sokoldalúan használható.
[ Szerkesztve ]
-
csferke
senior tag
És már van is kérdésem az általam emlegetett naptárral kapcsolatban
Private Sub UserForm_Initialize()
If IsDate(ActiveCell.Value) Then
Me.MonthView1.Value = ActiveCell.Value
End If
End SubEbben a kódban ha az aktív cella dátum és van értéke akkor a naptár arra a hónapra/évre áll mint a cella értéke.
Mit/hogyan lehetne megadni egy else ágban az ActiveCell.Value helyett
Me.MonthView1.Value=??
?? = aktuális dátum ( now() ) értéke és ekkor az aktuális hónapot mutatná a naptárköszi
[ Szerkesztve ]
-
m.zmrzlina
senior tag
Van egy cellám (mondjuk "A1") amiben dátum van a következő formában: 2013.02.19(.) A pont azért van zárójelben mert a problémám ponttal és pont nélkül is uagyanaz
Az =ÉRTÉK("A1") fv. a következő eredményt adja 41324.
A következő programsor Val(Cells(1,1)) pedig ezt: 2013,02Miért van ez és hogyan tudnám makróval kinyerni a cellából a képlet eredményét?
Valójában le szeretném ellenőrizni, hogy az A1:A30 tartományban folytonosak-e a napok, vagyis a kezdő és a záró dátum között nem hiányzik-e egy a sorból.
[ Szerkesztve ]
-
Barcley
csendes tag
Sziasztok!
Olyan problémám van, hogy makróval szeretnék egy cellában lévő képlet értékét figyelni. Ha a képlet bizonyos értéket vesz fel, akkor ki kell íratni egy utasítást. Pld. a1 értéke = 100 akkor msgbox"kapcsolj!"
Nekem a "Private Sub Worksheet_Change(ByVal Target As Range)" nem érzékeli a változást. A "Private Sub Worksheet_Calculate()" minden egyéb adat bevitelre számolni akar, ha jól értem, és minden leütés után egy hiba üzenet jelenik meg. Ti az ilyet hogyan oldanátok meg?
Üdv. -
Delila_1
Topikgazda
válasz m.zmrzlina #17474 üzenetére
Range("B1") = Format(Range("A1"), "yyyy.hh.dd.")
A B1 cellába írja az A1 értékét a megadott formában.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Barcley #17475 üzenetére
A Worksheet_Change eseménye annak a cellának a változását figyelje, ami a kérdéses cella képletét megváltoztatja.
Pl. A1= B1 * C1
Private Sub Worksheet_Change(ByVal Target As Range)
if target.address="$B$1" then
if range("A1")=100 then msgbox "Kapcsolj"
endif
end sub[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz m.zmrzlina #17477 üzenetére
Gyorsabb vagy, és még egyszerűbb is, amit írtál!
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz m.zmrzlina #17480 üzenetére
És az összejött?
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
m.zmrzlina
senior tag
válasz Delila_1 #17481 üzenetére
Nem igazán. Ez a kód:
intSzamlalo = 1
For Each wshMunka In ActiveWorkbook.Worksheets
If wshMunka.Name <> "összesítő" Then
wshOsszesito.Cells(1, intSzamlalo + 5) = format(Cells(1, intSzamlalo + 5), "yyyy.mm.dd")
'wshOsszesito.Cells(1, intSzamlalo + 5).NumberFormat = "yyyy.mm.dd"
wshOsszesito.Cells(1, intSzamlalo + 5).Value = wshMunka.Name
intSzamlalo = intSzamlalo + 1
End If
NextKikommentezve a tied alatt ott az én megoldásom de mindkettő ugyanúgy nem jó. A következő ciklussal szeretném kiértékelni az 1. sorban lévő dátum(nak látszó) értékeket:
wshOsszesito.Range("F1").Select
Do While ActiveCell.Offset(0, 1).Value <> ""
If Val(ActiveCell.Offset(0, 1).Value) <> Val(ActiveCell.Value) + 1 Then
intValasz = MsgBox("Az importált adat nem folytonos. Mégis folytatod?", vbYesNo)
If intValasz = vbNo Then
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.DisplayAlerts = True
End
End If
End If
ActiveCell.Offset(0, 1).Select
Loop[ Szerkesztve ]
-
Delila_1
Topikgazda
válasz m.zmrzlina #17482 üzenetére
Az F oszlopba íratod a dátumnak látszó értéket. A G oszlopba importálással kerülnek a dátum az értékek?
Ezek 1 nappal nagyobbak, mint az azonos sorban lévő F-ek? A G oszlopban szövegesek az értékek?Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
m.zmrzlina
senior tag
válasz Delila_1 #17483 üzenetére
Azt szeretném a makróval, hogy jelezze, hogy a fenti példánál pl febr 23.-a hiányzik. Most az van, hogy mivel a makrónak minden cellaérték 2013,02 így már az első ellenőrzéskor (19-20-nál) jelez.
Jelenlegi cellaformátum Általános. _Nem Dátum vagy Szöveg Az első sorba a munkalapnevek beolvasásával kerülnek az értékek.
(a szerkesztőlécen F2 képlete)
[ Szerkesztve ]
-
Delila_1
Topikgazda
válasz m.zmrzlina #17484 üzenetére
Ehhez nem kell a dátumokat átalakítani.
Sub Van_e()
Dim oszlop%
For oszlop% = 6 To 10
If Cells(1, oszlop) <> Cells(oszlop + 1) - 1 Then _
MsgBox "Hiányzik a(z) " & Cells(1, oszlop) + 1 & " dátum."
Next
End Sub[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Barcley
csendes tag
válasz m.zmrzlina #17477 üzenetére
Köszönöm mindkettőtök válaszát!
Az első verzió vált be. Működik. Nem értem így már én is próbáltam de biztos valami stilisztikai hibát követtem el.
Delila válaszát itt azért nem tudom használni, mert a figyelt képlet nagyon sok cella változásától függ, de köszönöm!
Üdv. -
Delila_1
Topikgazda
válasz Barcley #17486 üzenetére
Ha nem lett volna az egyszerűbb megoldás, akkor is elég lenne 1 cella változását figyelni. Bármelyik cellát módosítod a sok összetevő közül, az A1 értéke változik.
Pl. A1=(B1*C20)+m2*(h6-g7)Itt elég a B1, C20, M2, H6 és G7 közül bármelyik címet beírni a target.address-be. A következő sor feltételében az A1 cella értékét vizsgálod.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz m.zmrzlina #17488 üzenetére
Mert ebben feltételeztem, hogy nem alakítod át a dátumokat szöveggé. Írtam is, hogy nincs szükség a konvertálásra.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz csferke #17473 üzenetére
Nálam Calendar1 névre hallgat a vezérlő, írd át.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If IsDate(Target) Then
Me.Calendar1.Value = Target
Else
Me.Calendar1.Value = Date
End If
End SubA Now függvény időértéket ad, az aktuális dátumot a Date adja.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
m.zmrzlina
senior tag
válasz Delila_1 #17489 üzenetére
A dátumok szerintem akkor változnak szöveggé amikor a cellatartalomból először munkalapnév lesz aztán a munkalapnévből megint visszakerülnek egy másik cellába.
Azért ilyen bonyolultan oldom meg mert a forrásfájlban mindenféle hibák lehetnek. (ismétlődő, nem megfelelő szerkezetű vagy oda nem illő munkalapok-ezeket törölni kell illetve nem is mindig időrend szerint vannak a munkalapok) Csak miután rendbetettem a munkafüzetet lehet listát csinálni a munkalapokról és minden más csak ezután jöhet.
Az alapfeladat szépen működik is (mondhatnánk, hogy első körben készen vagyunk) csak ez az ellenőrzés nem megy.
-
Delila_1
Topikgazda
válasz m.zmrzlina #17491 üzenetére
Nem tudod felcserélni a sorrendet? Először a cellákba viszed be a dátumokat, utána alkotsz belőlük lapneveket, majd sorba rakod a lapokat. Ezután jöhet az ellenőrzés.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz m.zmrzlina #17491 üzenetére
Lapnévből dátum a cellákba:
Sub mm()
Dim lap As Integer
For lap = 2 To 3
Sheets(1).Cells(lap, 1) = CDate(Sheets(lap).Name)
Next
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz m.zmrzlina #17495 üzenetére
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Barcley
csendes tag
válasz Delila_1 #17487 üzenetére
Nem akartalak benneteket fárasztani a hosszú és bonyolultabb részletekkel: A z A1 cellába futnak össze több szálról és számolási tartományból vagylagosan, és részben logikai számítások eredményei is. Ezért ha csak direkt aritmetikai eredmény lenne, úgy is jó lenne.
Régebben olvastam itt "offszett"-el kivitelezett dinamikus diagram-ról,amit te írtál. Sajnos a link már nem hozzáférhető. Tudnál példákat írni, hol olvashatok ilyenekről?
Köszönöm! -
Delila_1
Topikgazda
válasz csferke #17499 üzenetére
Nagyszerű! Pedig a "Me.MonthView1.Value=??
?? = aktuális dátum ( now() ) értéke és ekkor az aktuális hónapot mutatná a naptár" szövegtől kicsit megijedtem, de reméltem, hogy az aktuális dátumra gondoltál. És lőn.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Új hozzászólás Aktív témák
- AKCIÓ! - STEAM kulcsok /Anuchard, Aragami, Children of Morta, stb. - 2024.04.17.
- Microsoft licencek KIVÉTELES ÁRON AZONNAL - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Canva Pro előfizetés - 1 éves
- Windows 10/11 Home/Pro , Office OEM/Retail kulcsok
- Eredeti Windows, telepítéssel! Digital Doctor Számítógép Szerviz