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.
Gyorskeresés
Legfrissebb anyagok
- Bemutató Route 66 Chicagotól Los Angelesig 2. rész
- Helyszíni riport Alfa Giulia Q-val a Balaton Park Circiut-en
- Bemutató A használt VGA piac kincsei - Július I
- Bemutató Bakancslista: Route 66 Chicagotól Los Angelesig
- Tudástár AMD Radeon undervolt/overclock
Általános témák
LOGOUT.hu témák
- [Re:] [sziku69:] Fűzzük össze a szavakat :)
- [Re:] [sziku69:] Szólánc.
- [Re:] [Luck Dragon:] Asszociációs játék. :)
- [Re:] [Luck Dragon:] MárkaLánc
- [Re:] [GoodSpeed:] SAMSUNG Galaxy Buds FE (SM-R400NZAAEUE) a 9 éves SONY SBH20 utódja (nálam)
- [Re:] [HThomas:] Kia Ceed SW JD vs CD tapasztalatok
- [Re:] [D1Rect:] Nagy "hülyétkapokazapróktól" topik
- [Re:] [gban:] Ingyen kellene, de tegnapra
- [Re:] [Sub-ZeRo:] Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- [Re:] eBay-es kütyük kis pénzért
Szakmai témák
PROHARDVER! témák
Mobilarena témák
IT café témák
GAMEPOD.hu témák
Téma összefoglaló
- Utoljára frissítve: 2023-11-13 08:31:56
LOGOUT.hu
Hozzászólások
Declare
őstag
Ma nem volt még kerdes, szoval bedobok egy nagyobb falatot, ha lesz ideje valamelyikötöknek, megköszönnem a segitseget Csiszolgatom a macrokat, amiket összeallitottam a segitsegetekkel es azert mindig elöjön valami, de ezzel most nem birok.
Még Fferi50 irta ezt nekem pont azt hiszem:
Dim kezdrng As Range, vegrng As Range, ws1 As Worksheet, celrng As Range, elsocim As String, gewerkrng As Range
Set ws1 = ActiveSheet
'megkeressük az elso S. Titel cellát:
Set vegrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, searchdirection:=xlNext, After:=Range("G1"))
elsocim = vegrng.Address 'megjegyezzük a címét, mert itt kell leállítani
Do While Not vegrng Is Nothing
'megkeressük a kezdo sort / Titel /
Set kezdrng = ws1.Columns("G").Find(what:="Titel", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlPrevious)
If kezdrng.Row < vegrng.Row Then 'ha kisebb mint az S. Titel helye, akkor összeadjuk
vegrng.Offset(0, -1).Formula = "=Sum(" & kezdrng.Offset(2, -1).Address & ":" & vegrng.Offset(-1, -1).Address & ")"
vegrng.Offset(0, -1).NumberFormat = "#,##0.00 $"
vegrng.Offset(0, -1).HorizontalAlignment = xlRight
End If
'következo S. Titel
Set vegrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlNext)
If vegrng.Address = elsocim Then Exit Do 'ha visszaértünk az elsohöz, kilépünk
Loop
'megkeressük az elso S. Gewerk cellát:
Set vegrng = ws1.Columns("G").Find(what:="S. Bereich", LookIn:=xlValues, lookat:=xlWhole, searchdirection:=xlNext, After:=Range("G1"))
elsocim = vegrng.Address: Set gewerkrng = Range("G1") 'megjegyezzük a helyét és a lehetséges elso cellát
Do While Not vegrng Is Nothing
'megkeressük az elso S. Titelt a Gewerkben
Set kezdrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlPrevious)
Set celrng = kezdrng
Do While Not kezdrng Is Nothing
If kezdrng.Row > gewerkrng.Row Then ' ha benne van a tartományban
If kezdrng.Row < vegrng.Row Then ' és oda tartozik, akkor bevesszük az összesítésbe
Set celrng = Union(kezdrng, celrng)
Else
vegrng.Offset(0, -1).Formula = "=Sum(" & celrng.Offset(0, -1).Address & ")" 'ha nincs benne, akkor beírjuk az összesíto képletet
vegrng.Offset(0, -1).NumberFormat = "#,##0.00 $"
vegrng.Offset(0, -1).Font.Bold = True
vegrng.Offset(0, -1).HorizontalAlignment = xlRight
Exit Do
End If
Else
vegrng.Offset(0, -1).Formula = "=Sum(" & celrng.Offset(0, -1).Address & ")" ' ha már az elozo Gewerkhez visszaértünk, akkor beírjuk az összesíto képletet
vegrng.Offset(0, -1).NumberFormat = "#,##0.00 $"
vegrng.Offset(0, -1).Font.Bold = True
vegrng.Offset(0, -1).HorizontalAlignment = xlRight
Exit Do
End If
'megkeressük a következo S. Titel cellát:
Set kezdrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, After:=kezdrng, searchdirection:=xlPrevious)
Loop
Set gewerkrng = vegrng ' a Gewerk területet változtatjuk
'megkeressük a következo S. Gewerk cellát:
Set vegrng = ws1.Columns("G").Find(what:="S. Bereich", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlNext)
If vegrng.Address = elsocim Then Exit Do 'ha visszaértünk az elso találathoz, akkor végeztünk
Loop
A lenyeg hogy egy tablazatban vannak fötetelek ("Bereich" es hozza kapcsoldo S(szumma). Bereich sorok. A "Bereich" es "S.Bereich" között vannak altetelek ("Titel" es "S.Titel"). A "Titel" es "S.Titel" között pedig feladatoknak az értékei/árai.
A makro azt csinalja, hogy megkeresi az "S.Titelt" es ezt a szöveg cellat felülirva beir egy SZUMM kepletet, felfele egeszen addig, amig nem jön a "Titel" cella (tehat tartomanyt szummaz). Igy szummazza a feladatok ertekeit. Ezt megcsinalja ujra es ujra, minden "Titel" es "S.Titel" között.
Ezutan megkeresi az elsö "S.Bereich" cellat, ode beir egy SZUMM kepletet, amibe a fölötte levö "S.Titel" cellakat adja össze egyesevel (nem tartomanyt, hanem ahol "S.Titel" van azt az egy cellat hozzaadja), egeszen addig, amig nem jön megint egy "S.Bereich". Ebbe a következö "S.Bereich" cellaba szummazza a következö "S.Titel"-eket es igy tovabb.
Ez jol is müködik, egeszen addig, amig van több Titel/S.Titel es Bereich/S.Bereich. Most viszont volt egy olyan eset, hogy 1db Bereich/S.Bereich páros volt és itt a makro vegtelen ciklusba került.
Kb Latom hol lehet a hiba, de nem tudom, hogy lehetne kijavitani
Nem egyszerü a kerdes, föleg gondolom most elsöre atolvasva , de ha lesz idötök valamikor, ez hasznos lenne, ha valahogy ki lehetne küszöbölni ezt a hibat.
Csinaltam egy Excel tablat, hogy nez ki az adattabla a makro futtatasa elött, hogy nez ki utanna, illetve egy olyan lapot is ahol a futtatas elött van a a tabla es jelentkezik a hiba. [link]
Köszi elöre is ha lesz idötök, en is ezzel probalkozom most
G.A.
aktív tag
Dr V
őstag
Sziasztok!
Powerpivot felületen hogyan tudok számítást végezni egy, az alaptáblában megnevezett cellával?
Darabszámmal szeretnék értéket osztani, de a darabszám változása esetén kövesse le a powerpivot is a számítást. Mindenképpen powerpivotban gondolkozom, mert egy másik fájlból szedem ki az adatokat.
Fferi50
őstag
Szia!
Ha képként mented el, akkor bármivel meg lehet nézni és képként be is lehet importálni munkalapra is
Egyébként visszafelé nem kompatibilis egyetlen Excel verzió sem, a fejlesztéseket nem lehet a korábbi verziókban használni, azok hibát okoznak.
Azért nézd meg lsz. hogy a 2010-es Excelben nincs-e benne már a saját kombinációs lehetőség (2013-as verzióban van), mivel én azt már nem tudom megnézni.
Üdv.
Fferi50
őstag
Szia!
Egy picit kellett módosítani rajta:Sub adogat()
Dim kezdrng As Range, vegrng As Range, ws1 As Worksheet, celrng As Range, elsocim As String, gewerkrng As Range, kezdocim As String ' a második ciklus kezdőcímének tárolására
Set ws1 = ActiveSheet
'megkeressük az elso S. Titel cellát:
Set vegrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, searchdirection:=xlNext, After:=Range("G1"))
elsocim = vegrng.Address 'megjegyezzük a címét, mert itt kell leállítani
Do While Not vegrng Is Nothing
'megkeressük a kezdo sort / Titel /
Set kezdrng = ws1.Columns("G").Find(what:="Titel", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlPrevious)
If kezdrng.Row < vegrng.Row Then 'ha kisebb mint az S. Titel helye, akkor összeadjuk
vegrng.Offset(0, -1).Formula = "=Sum(" & kezdrng.Offset(2, -1).Address & ":" & vegrng.Offset(-1, -1).Address & ")"
vegrng.Offset(0, -1).NumberFormat = "#,##0.00 $"
vegrng.Offset(0, -1).HorizontalAlignment = xlRight
End If
'következo S. Titel
Set vegrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlNext)
If vegrng.Address = elsocim Then Exit Do 'ha visszaértünk az elsohöz, kilépünk
Loop
'megkeressük az elso S. Gewerk cellát:
Set vegrng = ws1.Columns("G").Find(what:="S. Bereich", LookIn:=xlValues, lookat:=xlWhole, searchdirection:=xlNext, After:=Range("G1"))
elsocim = vegrng.Address: Set gewerkrng = Range("G1") 'megjegyezzük a helyét és a lehetséges elso cellát
Do While Not vegrng Is Nothing
'megkeressük az elso S. Titelt a Gewerkben
Set kezdrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlPrevious)
kezdocim = kezdrng.Address
Set celrng = kezdrng
Do While Not kezdrng Is Nothing
If kezdrng.Row > gewerkrng.Row Then ' ha benne van a tartományban
If kezdrng.Row < vegrng.Row Then ' és oda tartozik, akkor bevesszük az összesítésbe
Set celrng = Union(kezdrng, celrng)
Else
vegrng.Offset(0, -1).Formula = "=Sum(" & celrng.Offset(0, -1).Address & ")" 'ha nincs benne, akkor beírjuk az összesíto képletet
vegrng.Offset(0, -1).NumberFormat = "#,##0.00 $"
vegrng.Offset(0, -1).Font.Bold = True
vegrng.Offset(0, -1).HorizontalAlignment = xlRight
Exit Do
End If
Else
vegrng.Offset(0, -1).Formula = "=Sum(" & celrng.Offset(0, -1).Address & ")" ' ha már az elozo Gewerkhez visszaértünk, akkor beírjuk az összesíto képletet
vegrng.Offset(0, -1).NumberFormat = "#,##0.00 $"
vegrng.Offset(0, -1).Font.Bold = True
vegrng.Offset(0, -1).HorizontalAlignment = xlRight
Exit Do
End If
'megkeressük a következo S. Titel cellát:
Set kezdrng = ws1.Columns("G").Find(what:="S. Titel", LookIn:=xlValues, lookat:=xlWhole, After:=kezdrng, searchdirection:=xlPrevious)
If kezdrng.Address = kezdocim Then Exit Do 'ha nincs több S. Titel, akkor kilépünk EZ AZ EGYIK ÚJ SOR
Loop
Set gewerkrng = vegrng ' a Gewerk területet változtatjuk
'megkeressük a következo S. Gewerk cellát:
Set vegrng = ws1.Columns("G").Find(what:="S. Bereich", LookIn:=xlValues, lookat:=xlWhole, After:=vegrng, searchdirection:=xlNext)
'INNEN MÓDOSULT
If vegrng.Address = elsocim Then 'ha visszaértünk az elso találathoz
If Application.IsFormula(vegrng.Offset(0, -1)) Then 'és már van képletünk, akkor végeztünk
Exit Do
Else ' egyébként betesszük a képletet és utána végeztünk
vegrng.Offset(0, -1).Formula = "=Sum(" & celrng.Offset(0, -1).Address & ")" ' ha már az elozo Gewerkhez visszaértünk, akkor beírjuk az összesíto képletet
vegrng.Offset(0, -1).NumberFormat = "#,##0.00 $"
vegrng.Offset(0, -1).Font.Bold = True
vegrng.Offset(0, -1).HorizontalAlignment = xlRight
Exit Do
End If
End If
Loop
End Sub
Remélem így már rendben lesz.
Üdv.
Declare
őstag
Tesztelem, de ugy nezem, tökeletes! Köszi szepen ismet! Nem szamitottam ilyen gyors megoldasra
Declare
őstag
Van jo sok ilyen video, meg leiras a neten. Nezd meg pl ezt a videot, lehet megtalalod benne a valaszt, amit keresel [link]
Declare
őstag
Valami nem az igazi megsem sajna.
A makro lefut, de csak az elsö "S. Bereich" ertek jo, a töbi nem. Nem irja be szumma kepletet.
zakoss
tag
Sajnos az sem hozott megoldást. Továbbra is a fagyás, és a fagyás. Ez ügyben tanácstalan vagyok
Fferi50
őstag
Szia!
A minta fájlban rendesen lefut. Küldenél egy másik - hosszabb - mintát (vagy amin nem fut le rendesen)?
Üdv.
föccer
nagyúr
Sziasztok!
Van egy táblázatom, amiben szűrő feltételeket alkalmazok. Hogyan tudnám levadászni, hogy milyen szűrőt állítottam be? Egy egészen másik táblában kellene egy szumhatöbb-el összegeznem leszűrt adatokhoz tartozó darabszámot. Makró nálkül, függvénnyel, valami egyéb trükkel.
Ötlet? Összesíttel próbálkozom, csak nem megy, mert nem abban a táblában szűrök, ahol az összegzendő adatok vannak.
Köszi.
Építésztechnikus. Építőmérnök.
Fferi50
őstag
Szia!
Semmi akadálya annak, hogy a SZUMHATÖBB függvényben másik munkalapra(munkafüzetre) mutató hivatkozásokat használj.
Pl.SZUMHATÖBB(egyik munkalap A:A;egyik munkalap B:B; másik munkalap A2; egyik munkalap C:C;másik munkalap D2)
Ráadásul ezt a képletet akár az egyik, akár a másik, akár egy harmadik munkalapra is elhelyezheted.
Üdv.
Delila_1
Topikgazda
Szia!
Sub teszt()
Dim AF As AutoFilter, F As Filter, i As Long
Set AF = ActiveSheet.AutoFilter
For i = 1 To AF.Filters.Count
Set F = AF.Filters(i)
If F.On Then MsgBox "Az AutoFilter " & i & ". oszlopában bekapcsolt szűrő, feltétel: '" & F.Criteria1 & "'"
Next
End Sub
Ez a makró végig lépked a táblázaton. Amelyik oszlopban be van kapcsolva a szűrő, ott kiírja a kritériumot.
Üzenet helyett cellákba is kiírhatod az eredményt, amit majd a szumhatöbb függvény paramétereként felhasználsz.
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
Sub teszt_1()
Dim AF As AutoFilter, F As Filter, i As Long, WF As WorksheetFunction
Set WF = Application.WorksheetFunction
Set AF = ActiveSheet.AutoFilter
For i = 1 To AF.Filters.Count
Set F = AF.Filters(i)
If F.On Then
Range("T" & WF.CountA(Columns(20)) + 1) = Chr(i + 64)
Range("U" & WF.CountA(Columns(21)) + 1) = Right(F.Criteria1, Len(F.Criteria1) - 1)
End If
Next
End Sub
Ez a makró kiírja a T oszlopba a szűrt oszlop betűjelét, az U-ba a kritériumot. Ha 1-nél több kritérium lehetséges 1-1 oszlopban, módosítani kell a makró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.
Declare
őstag
Valamit en rontottam el, sorry...nem szoltam
Ez ugye csak egy reszlete a teljes makronak es amikor probaltam ezt amit küldtel külön jo volt, aztan beillesztettem a teljes makroba (ahol ezek a Titel meg S. Titel ezek egy lekerdezesböl jönnek) es ott valamit elronthattam. A hibat nem talaltam meg, nem is tudom, de ujra bemasoltam, ujra atirtam amit kellett es most jo.
Szoval köszönöm szepen megegyszer, megiscsak jol müködik
Szep hetveget mindenkink!
[ Szerkesztve ]
Delila_1
Topikgazda
Makró nélkül a szűrt sorok darabszáma:
=RÉSZÖSSZEG(103;D:D)
A D:D helyére olyan oszlop betűjelét írd, ahol minden sorban van adat. Ezt a függvényt arra a lapra vidd be, ahol a szűrt táblázatod van, a táblázatodon kívüli cellába. A másik füzetben erre a cellára hivatkozz!
A 103 a DARAB2 függvénynek felel meg, vagyis minden cellát (szöveges, szám, dátum, képlet) megszámol.
[ 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.
föccer
nagyúr
Igen, a darabszámot meg tudom számolni. A probléma az alábbi
Van 1 munkalap, amint mintavételi eredmények találhatóak, többek között egy sorban megadva a vonatkozó recept sorozatszámát és az egyik alapanyag tipust. Egy munkalapon néhányszáz minta van, a csoportosítás alapját képpező alapanyag 4-5 féle lehet, pl CEM II/B-S 42,5 N; CEM II/A-S 42,5 N, a recept azonosítója pedig 4 jegyű kód. Egy receptúrából évente több minta is van. Nem minden receptből van minta.
Van egy másik munkalap, amin termelési adatok vannak, 4 jegyű kódonként egy sorban.
Elemzért kell készítenem az azonos alapanyabül készült minták alapján, aminek a része az összes, ilyen alapanyaból gyártott termék termelési adata.
Tehát azt szeretném, hogy az 1 munkalapon szűrővel kiválasztom az adott alapanyagot és a 2-es munkalapról összeszámolja nekem az ehhez tartozó legyártott mennyiségeket. Magát az összesítést szumhatöbb- szépen elvégzni, csak a kritériumot nem tudom neki megani, ezt mivel tudnán neki, makró nélkül megadni. (makrók futtatására nincs lehetőség policy alapján), cask függvényekkel tudok dolgozni.
Így talán érthetőbb.
Másik, hogy Adatok->érvényesítés->lista alapján csinálok legördülőt, amiben a forrást a fenti mintás táblázatból adom meg, viszont nem tudom az ismétlődéseket kivenni. A párszáz mintáből kb 4-5 fajta alapanyag van és a listában megjelenik a teljes lista. Ezt le lehetne valahogy szűrni, hogy az ismétlődések ne jelenjenek meg?
Köszi képen
Építésztechnikus. Építőmérnök.
Fferi50
őstag
Szia!
Az ismétlődéseket egyszerű módon eltávolíthatod. Egy segédoszlopba kiteszed mintás táblázatod megfelelő oszlopát, majd Adatok - ismétlődések eltávolítása.
Ez a "kigyomlált" segédoszlop legyen a legördülő forráslistája.
(Vagy az adott oszlopra speciális szűrőt használsz, azzal másoltatod ki a segédoszlopba - csak az egyedi értékek bejelölve a párbeszédpanelen - szűrendő az oszlop, szűrőfeltételnek kijelölöd az oszlop fejlécét, hova másolja a segédoszlop első cellája. Fontos, hogy a szűrőt arról a munkalapról kell indítani, ahova az értékeket kapni szeretnéd.)
Üdv.
föccer
nagyúr
További beavatkozás nálkül kellene kinyernem az adatot. Bianco készül, beírom a megfelelő adatokat és a nagy táblázatból leszűröm a kiértékelendő adatokat. Összegzés függvénnyel gyönyörű szépen tudom a szűrt elemekre elvégezni a megfelelő műveleteket, csak ezt a fránya gyártási mennyiséget nem tudom összehozni.
Lehet ezt a részét külön le kell majd kezelnem, de szeretném ha nem kellene. Elvileg ha egy külön cellába megadom a keresési értéket, akkor minden adatot kigyűjt, csak nem szeretném bonyolítani a dolgot.
üdv, föccer
Építésztechnikus. Építőmérnök.
Juditta_56
aktív tag
Sziasztok!
Ez miért ad értékhibát a SZÖVEG.KERES függvényre, akkor is, ha van benne "O"?
[link]
Előre is köszönöm a választ, mert már mindent kipróbáltam...
"You may say that I'm a dreamer But I'm not the only one"
lappy
őstag
Nálam csak annyit kellett vele tenni hogy az "o"-t az A oszlban újra beírtam és működött
Bámulatos hol tart már a tudomány!
Juditta_56
aktív tag
Az túl egyszerű lenne , ez egy köremailből származó adatsor, amit bemásolok egy táblázatba, úgy lenne "hülyebiztos", ha nem kéne mókolni vele...
"You may say that I'm a dreamer But I'm not the only one"
Fferi50
őstag
Szia!
Eddig azt hittem, hogy értem a feladatot, de most nagyon elbizonytalanodtam
"További beavatkozás nálkül kellene kinyernem az adatot. Bianco készül, beírom a megfelelő adatokat"
Ha bianco táblát kapsz, akkor miért is nem lehet beletenni amit szeretnél, hogy működjön?
"Összegzés függvénnyel gyönyörű szépen tudom a szűrt elemekre elvégezni a megfelelő műveleteket, csak ezt a fránya gyártási mennyiséget nem tudom összehozni"
A többi adatot milyen paraméterekkel szűröd? Lehet, hogy egy kis minta alapján többet tudnánk segíteni és nem beszélnénk el egymás mellett...
Üdv.
föccer
nagyúr
Hülyebiztosra kellene megcsinálni, mert vélhetően nem én fogom használni. Az eredeticélom az lett volna, hogy az összegyűjtött mintavételi táblában megcsinálják a szűrést és erre a szűrt tűáblára automatikusan számolja ki a szükséges értékeket. Mindenzt makro nálkül.
üdv, föccer
Építésztechnikus. Építőmérnök.
Delila_1
Topikgazda
Nem jó a részösszeg függvény?
Én sem látom teljesen a feladatot.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
föccer
nagyúr
Mindegy, szerintem hétvégén átszervezem a táblát és megoldom máshogy. Már itthon vagyok, nem tudok több képet csinálni róla.
A részösszeggel akartam én is, de egy szöveget kellene kiszednem egy tömbből. A tömb sok, ismétlődő adat van, amik közül 1-et választok auto szűrővel. A kiválasztott adat (szöveg) kellene nekem, mert egy másik munkalapon ez a szöveg a kritériuma egy szumhatöbb függvénynek.
üdv, föccer
Építésztechnikus. Építőmérnök.
Delila_1
Topikgazda
A másik lapra tehetnél egy érvényesítést, amiből kiválaszthatod az egyik lap kritériumát.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Fferi50
őstag
Szia!
Majdnem "hülyebiztos" csak akkor lesz, ha listát nyújtasz át tálcán, hogy ebből tessék választani. De ne legyenek kétségeid, hogy ilyenkor is lesz, aki "mellé trafál".
Nem lenne egyszerűbb egy kimutatást csinálni az adatokból, amit aztán mindenki kedve szerint szűrhet, szabhat-varrhat (mármint a megengedett keretek között)?
Én lehet, ebbe az irányba indulnék el.
Másrészt szerintem képekkel sem megyünk túl sokra, igazán a mintatábla segít, mert abban lehet tesztelni is a javaslatokat.
Sajnos távolbalátási és gondolatolvasási képességekkel ezen a fórumon kevesen rendelkeznek
Amint látod, így csak találgatunk - mint az egyszeri rabbi a libáknál
Üdv.
[ Szerkesztve ]
SzlobiG
félisten
Sziasztok ismét a nagy koponyák segítségét kérném az alábbi dokumentumban:
A kérdés a legfelső sorban leledzik, ha esetleg valaki tudja rá a megoldást azt megköszönném.
lappy
őstag
Szia=HA(C4=C3;HA(B4-B3>IDŐ(0;15;0);1;0);1)
ez megnézi a cellák alapján hogy az azonosító és az idő kritérium alapján meg felel-e
a végén pedig egy darabhatöbb függvénnyel lehet számolni a cellákat.
a D3 mindig 1
Bámulatos hol tart már a tudomány!
SzlobiG
félisten
Köszi. Nagyon hasznos viszont csak részben működik.
A [link] alatt mutatom mire gondolok.
HREH
senior tag
Olyat hogyan lehet csinálni, hogy ha egy cellába beírok egy adott szót, akkor az alatta lévő cellákba automatikusan írjon be előre megadott szavakat/mondatokat?
Olyanra gondolok, hogy az A1 cellába beírom például, hogy virágok, erre az A2 cellába írja be, hogy "rózsa", A3-ba hogy "ibolya" és így tovább.
Hogyan kellene ezt megoldani? Több kulcsszavam lenne, minden kulcsszó alá menne 10-12 szó/mondat.
"Fun isn't something one considers when balancing the universe. But this... does put a smile on my face."
Delila_1
Topikgazda
puma0812
csendes tag
Sziasztok
Nekem olyan gondom van hogy adott exel tábla
c7-c206 feltételes formázást adtam meg neki ha azonos érték jelen esetben( C7:12345 C8: 12345)
akkor jelölje ki a cella szinét pirossal .
Meg is történt ki is jelölte szépen MS Office
De mi a cégbe Libre ofict használunk és mihelyst rámentek a libra officba
már elfelejti kijelölni a 2 egyforma cellát.
Tudnátok ebbe nekem segíteni macroval?
Hogy ha a C7-C206 ig 2 egyforma szám van jelölje pirossal mint a képen:
Előre is köszönöm
Üdvözlettel PUMA
[ Szerkesztve ]
lappy
őstag
Nézd meg hogy LibreOffice-ban milyenek a feltételes formázás lehetőségei
[ Szerkesztve ]
Bámulatos hol tart már a tudomány!
tzimash
őstag
Üdv,
Van egy kacifántos problémám
Vannak számozott polcaim(A), egy polcra csak egyféle cikkszámmal(B) kerülhetnek termékek. Ismert a polcok kapacitása(C) is, és az hogy jelenleg mennyi termék(D) van rajta.
A cél az, hogy helyet szabadítsak fel, oly módon, hogy összepakolom egy polcra az egyforma termékeket. 6 ill. 4 férőhelyes polcaim vannak. Az nem cél, hogy minél több teli polc legyen, tehát ha az egyiken van 5 termék, egy másikon 3, akkor nem fogok egyikről átpakolni a másikra, csak azért, hogy valamelyi tele legyen, mert úgy is két polcot foglal. És az is kritérium, hogy pl. ne a 4db terméket pakoljam hozzá az 1db-hoz, hanem fordítva.
Továbbá még van egy olyan eset is, amikor adott termékből csak 1db van össz-vissz, ennek tárolása nem gazdaságos, így le lehetne venni a polcról.
Az eredménynek valahogy úgy kellene kinéznie, hogy: cikkszám 5-ös polc(2) >> 1-es polc(3).
Kivitelezhető ez valahogy?
Addig jutottam, hogy kiszedtem a listából azokat a polcokat, amelyek tele vannak.
Köszönöm előre is a segítséget.
puma0812
csendes tag
Feltétel
Színskála
Adatsav
Ikon készlet
Dátum
De ezeket próbáltam mar az első mentesig ment is ki lep officbol vissza es már nem is jó
Evvel a függvénnyel
DARABTELI($C$7:$C$206;$C7)>1
Evvel csináltam
Ezért kellene macroval megoldani
Üdv Zoltán
[ Szerkesztve ]
huliganboy
addikt
Sziasztok!
Az alábbi makró hogyan módosítható, hogy a gép ne haljon bele a futtatásába?
Sub Nagy_Kezdőbetű()
' A megadott tartomány összes celláján végrehajtja a ciklust.
For Each x In Range("D3:AD20000")
' A Microsoft Visual Basic for Applications (VBA) alkalmazásban nincs nagy kezdőbetűs függvény.
' Ezért a munkalapfüggvényt kell használnia a következő módon:
x.Value = Application.Proper(x.Value)
Next
End Sub
Kb lehetetlen kivárni mig befejezi...
Köszönöm!
Pakliman
tag
Szia!
Így valamivel gyorsabb lesz:
Sub Nagy_Kezdőbetű()
'Letiltjuk a cellák újraszámolását és a képernyő frissítését
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
End With
' A megadott tartomány összes celláján végrehajtja a ciklust.
For Each x In Range("D3:AD20000")
' A Microsoft Visual Basic for Applications (VBA) alkalmazásban nincs nagy kezdőbetűs függvény.
' Ezért a munkalapfüggvényt kell használnia a következő módon:
'Az átalakításból eleve kizárjuk az üres és a nem szöveget tartalmazó cellákat
If (Not IsEmpty(x)) And (Not IsNumeric(x)) Then
x.Value = Application.Proper(x.Value)
End If
Next
'Engedélyezzük a cellák újraszámolását és a képernyő frissítését
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
End With
End Sub
[ Szerkesztve ]
Fferi50
őstag
Szia!
Megpróbálhatod ezt:Sub nagybetus()
Dim ertekek, xx As Long, yy As Long
ertekek = Range("D3:AD20000").Value
For xx = 1 To UBound(ertekek)
For yy = 1 To UBound(ertekek, 2)
ertekek(xx, yy) = Application.Proper(ertekek(xx, yy))
Next
Next
Range("D3:AD20000").Value = ertekek
End Sub
Ha esetleg memória problémát jelezne, akkor vedd kétfelé a területet.
Üdv.
huliganboy
addikt
#33339) Pakliman
(#33340) Fferi50
Köszönöm srácok végül az alábbi megoldást választottuk: (nem tudom mennyire elegáns, de működik)
Sub Nagy_Kezdőbetű_F()
Set x = Application.InputBox(prompt:="Add meg a nagybetűsíteni kívánt tartományt!" & vbCrLf & "VIGYÁZZ! Számot tartalmazó oszlop ne szerepeljen benne!", Title:="Tartomány megadása", Type:=8)
x.Select
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Application.DisplayStatusBar = False
Application.EnableEvents = False
ActiveSheet.DisplayPageBreaks = False
For Each x In Selection
x.Value = Application.WorksheetFunction.Trim(x.Value)
x.Value = Application.Proper(x.Value)
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
Application.DisplayStatusBar = True
Application.EnableEvents = True
ActiveSheet.DisplayPageBreaks = True
MsgBox "KÉSZ!", vbInformation
End Sub
Fferi50
őstag
Szia!
Csak egy icipici megjegyzés:
Ahhoz, hogy meghatározd a tartományt, nem kell kijelölni (select), az is időt igényel. Anélkül is lehet használni (sőt az a kívánatos - a selecteket száműzni kell mindenhonnan, ahonnan csak lehet).
Tehát ez működik
x.select kihagyva
For each x in x.cells
Üdv.
(#33343) botond2225 válasza botond2225 (#33273) üzenetére
botond2225
csendes tag
Sziasztok,
Olyan problémára keresek megoldást, office 2013, magyar verziónál, hogy egy excelben lenne 2 munkalap, ahol úgy szeretnék keresni az egyik munkalapon egy oszlopban minden cellán menjen végig és keresse meg a másik munkalap egyik oszlopában, hogy szerepel a cella vagy sem. Ha szerepel, nem kell semmit csinálnia, ha viszont nem szerepel, színezze be a cellát.
A cél, hogy 2 oszlopot akarok összehasonlítani, amely oszlopokban (ideális esetben) ugyanazok az értékek szerepelnek, de az egyikben nem biztos, hogy szerepel ami a másikban megtalálható. Ezt a különbséget kellene megtalálnom és ezt szeretném jelölni valahogy (beszínezni).
Tudtok erre megoldást?
Köszi a segítséget előre is.
Delila_1
Topikgazda
Nézd meg a DARABTELI függvényt, és alkalmazd a feltételes formázásban.
Ha a darabteli értéke egyenlő nullával, akkor adjon háttérszínt a cellának.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
botond2225
csendes tag
Köszi a segítséget.
0 meg 1 értéket kiír már, de hogy színezem be?
Delila_1
Topikgazda
A feltételes formázásnál nem lehet másik lap tartományára hivatkozni, ezért kell egy segédoszlop az első lapra. Ennek az értékét figyeltetjük a formázással.
A képen ez a képlet B oszlopban van, B1-ben =DARABTELI(Munka2!A:A;A1)
A két lap egymás mellett látható, a felt. formázás a Munka1 A1:A17 tartományára vonatkozik.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
botond2225
csendes tag
Köszi szépen, sikerült megcsinálni.
Hálás köszönet.
Nowitzki
csendes tag
Sziasztok!
Milyen paramétert kell megadnom a print # használatakor hogy a karakter kódolás stimmeljen? Megcsinálja az adatexportot, de a txt fájlban a szöveg tele van kérdőjelekkel az ékezetes karakterek helyén, pedig a txt fájl alapból utf-8-ban van mentve.
Tudnátok segíteni nekem ebben?
Köszönöm!
Iginotus
őstag
Sziasztok, ez lehet nektek egyszerű lesz nekem annyira nem. Eljutottam vele egy darabig de itt megakadtam.
Első feladat, hogy J oszlop soraiba kerülő számokhoz rendelje oda a készletet a M oszlopba, kb így:
=IF(A2:A117,C2: C117)
Tehát ha M oszlopba 44 van írva akkor a J oszlopba belekerül a C45 nek az értéke.
Nem tudom Excelben megírni, hogy
X éréke beadható 1 töl 115 ig szám
IF M2=(AX) then J2=(CX)
Így kerülne bele mindig az az üzlet aktuális készlete ahova szállítani akarunk.
M és K oszlopot kézzel töltöm fel.
Az lenne a második feladat, hogy az O oszlopba az 2-3-4-5.. stb mezőbe kiírja, hogy melyik üzletből kell ide szállítani a tételeket. Az már megvan, hogy mennyi az összes készlet, és hogy egy üzletbe (forgalom arányosan) mennyi db terméket kell szállítani. De azt is meg kell határozzam, hogy ezt melyik üzletből a legegyszerűbb.
Kritériumok:
- Mindig egésszel számolunk fél termék nincs.
- Amelyik üzletbe szállítani kell értelem szerűen onnan ne szállítsunk el.
- Egy üzletből ne menjen két üzletbe az áru. Tehát csak abból b be menjen. Úgy kéne hogy C oszlop darabjait O-ba kiválogatva hogy melyik a legpraktikusabb szállítás. (pl. 2 es üzletbe 199 darab termék kell még. Tehát C40+C41+C42+C43+C44+C49 (198=35+47+37+43+21+15) ez a legközelebbi azt nem tudom, lehet valahogy ki kell hozni a 199-et is na de én ahohz nem értek)
Itt van a doksi:
Nem tudom mit szoktak ilyenkor felajánlani, de mondj lesörözzük vagy csoki szaloncukor stb fel tudok ajánlani. Meg persze előre is köszönöm!
[ Szerkesztve ]
Plug and Pray... :)