-
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
-
Zola007
veterán
válasz
Fferi50 #24349 üzenetére
Köszönöm.
Gondoltam rá én is, csak mivel a egyenlet vagy 3 sor, próbáltam olyan megoldást találni, ahol könnyebben észreveszem, ha elírtam valamit (akár egy zárójelet).
Csinálok majd hozzá pár tesztmezőt, hogy ellenőrizni tudjam, hogy valóban úgy működik-e ahogy én azt megálmodtam.
egyelőre kitevő-vel működik,mert csak 2 e-hez kell, de azt nem értem viszont, hogy a hatvány függvény miért nem tud zárójellel fogadni több számból álló hatványkitevőtnem lett volna nehezebb nekik ugyanazt implementálni mint a másikban
-
Zola007
veterán
válasz
Fferi50 #24346 üzenetére
Kitevővel működik egybe írva
ezt a függvényt nem ismertem, de akkor ez csak az Euler-féle számra működik?Azért lényeges, mert összevisza egymással váltakozva vannak cellák, amiket nem akarnék később változtatni, így a módosítandókat meg egyenként kellene kijelölni, ami pár ezernél már nem annyira mókás
De ha egy makrót illesztek be, akkor elég csak a makrót átírni és mindenhol változik -
Wyll
őstag
válasz
Fferi50 #24296 üzenetére
Mit értesz az alapcellán és a viszonyítási alapon? Mmint mi a különbség?
Szerintem pont ez a marha jó a relatív nevekben, hogy dinamikusan, bárhol használhatók!
Épp a múlt héten kellett írnom két elég nagy többszörösen összetett függvényt, és 1000x könnyebb volt benne tájékozódni nevekkel, mint cellahivatkozásokkal. Sőt, előre meg tudtam írni notepad-ban, nem kellett a cellákkal foglalkoznom. De egy csomó tutorial is van a neten relatív nevekkel. Nem hinném, hogy ellenjavallt lenne.Szerintem VBA-ban annyi lesz a gond, hogy a Range() csak így simán object qualifier nélkül az ActiveSheet-re vonatkozik, aminek a bal felső cellája (a viszonyítási pontja) pont az A1. Éppen ezért lehet megadni neki pl ("B3")-at, ami így tényleg a B3-as cellát fogja jelenteni.
De ha "balra mutató" (negatív offset) relatív nevet akarok használni, akkor meg kell adnom, hogy mihez képest.. Mindjárt megnézem. (vagy majd holanp
)
-
Wyll
őstag
válasz
Fferi50 #24288 üzenetére
Az, hogy aosz egy relatív (részben $ nélküli) cellahivatkozás. (A oszlop azonos sorban lévő cellája.)
És cellákban használva jól működik, ahogy az látható is,
viszont VBA-ból szemmel láthatóan más címre oldódik fel, mint a worksheet celláiban. $A7-et kellett volna kapni végeredményül $A$1 helyett.De mondd, hogy elnézek valamit
-
Wyll
őstag
válasz
Fferi50 #24189 üzenetére
Igen, ez a "belelátós" módszer a 3D-s névvel (nem tudtam hogy így hívják) valóban működik (és én is pont ezt szeretném, és így is csináltam), de csak amíg be nem zárom a file-t. A legközelebbi megnyitáskor viszont rákérdez, hogy frissítse-e a hivatkozásokat, és ha ekkor nincs megnyitva a hivatkozott file, már HIV! lesz a hivatkozás értéke.
Gondolom pont ezért csinálod, hogy behelyettesíted az értékével.Viszont mi van, ha időközben megváltozott az az érték? Pont ez lenne egy hivatkozás értelme, hogy mindig a aktuális értéket tartalmazza. Pl. minden megnyitáskor újrafrissítem ezeket makróból?
-
pirit28
csendes tag
-
slashing
senior tag
válasz
Fferi50 #24162 üzenetére
jaja egyértelmű hogy az egyediségre épít, egy plusz Ha függvénnyel kijátszaható úgy hogy a holvan +2-őt kap nem 1-et és még a hol.van-on bellül nem a közvetlen előtte lévőt keressük hanem a kettővel előtte lévőt.
Ez már lehet elég lesz. A célunk ezen értéknél a havi max 5-t darab a 8 az már nagyon kirívó és rossz hónap szóval ha egy nap 3 ilyen esemény van akkor az elég gáz... így módosítás után egy napon két ilyen eseményt elbír a képlet 3-t már nem de ezt is ki lehet még tólni egy újabb HA+ÉS függvénnyel
D
-
slashing
senior tag
válasz
Fferi50 #24110 üzenetére
Átültettem az egyik táblázatomba ezt a szépséget. Annyi különbséggel hogy nálam nem cégnév az elsődleges szűrés hanem dátum. És bár nem valószínű hogy elő fog fordulni(90% hogy nem) de sose tudni. Szóval mi a helyzet azzal ha nekem van ismétlődő dátumom?
Vagy ha ezt a táblázatot használjuk akkor egymás alatt ismétlődő cégnevem? mert ugye ilyenkor meg fog egyezni az új keresési tartomány a régivel és feltölti végig ugyan azzal az értékkel az összeset... kijátszaható ez?
Én arra gondolok hogy esetleg még egy ha függvényt ha beleviszünk ami megvizsgálja hogy egyenlő-e az előző sorral akkor adjon hozzá még egyet az indirekthez!?
Egyéb ötlet?
-
slashing
senior tag
válasz
Fferi50 #24157 üzenetére
awhhhh köszi
amúgy azt csinálja hogy átugrik a lapra az A oszlopn csinálnál egy advance filtert és másolja az egyedi értékeket egy másik oszlopba ami kap egy nevet a névkezelővel hogy dinamikusan növekedhessen a lista mert ebből meg egy másik lapon legördülő menü van
majd a végén vissazugrik a kiinduló lapra...
-
slashing
senior tag
válasz
Fferi50 #24155 üzenetére
jaja hasonlóra jutottam én is
If WS1.Visible = False Then
WS1.Visible = True
End Ifviszont a végén újra el kell rejteni ami nem is gond de úgy kéne hogy ha látható volt akkor ne rejtse csak akkor ha rejtve volt a futáskor. Szóval valahogy el kéne tárolni a kezdő értéket de hogyan?
-
Wyll
őstag
válasz
Fferi50 #24148 üzenetére
Ez az egész inicializáláskor van, tehát a gomb állapota ilyenkor még tuti 0.
És azt akarom, hogy az legyen hogy
gomb benyomva <=> látszik az oszlop
gomb felengedve <=> nem látszik az oszlopTe pedig azt mondod most, ha jól értem, hogy az oszlop láthatóságát állítsam a gombhoz (ami ebben az esetben ugye 0, tehát rejtsem el az oszlopot), ne a gombot az oszlopéhoz. Csakhogy pont azt szerettem volna elérni, hogy megnyitáskor a gomb felvegye az oszlop állapotát, az ugyanis megőrződik az elmentett file-ban.
Persze értem, hogy mi a helyzet, hogy mindenképp lefut az eventhandler, így trükközni kellene, pl meg lehet jegyezni valahogy megnyitáskor az oszlop állapotát, utána szinkronizálni a gombbal, majd "visszaállítani" a kezdeti állapotot. Csak ez nem valami elegáns szerintem - de cáfoljatok meg
------------------------------------
Delila_1:
Az én click eseményem:
Private Sub togbutTranslate_Click()
Call AngolCellakOnOff
End Sub
Private Sub AngolCellakOnOff()
Range("b_forditocellak").EntireColumn.Hidden = Not Range("b_forditocellak").EntireColumn.Hidden
End SubHa másik modulban van a sub, az min változtat?
Kérnék szépen egy kis magyarázatot a példádhoz, mert sajnos nem nagyon értem -
-
válasz
Fferi50 #24133 üzenetére
Az X-et tudom előre, de az első 5 cellában ez az érték bárhogyan kijöhet. Lehet azt is, hogy egy cellába bevágom az X-et és a többi 4 az nulla. A lényeg, hogy ha 1 cellában már eléri az X-et, akkor ne is engedjen semmit írni a többibe, mert már elérte. Ezt szerettem volna megoldani egy felugró alert ablakkal.
-
nrg007
csendes tag
válasz
Fferi50 #24108 üzenetére
Igen, fontos, hogy ezek állandóan frissüljenek. Valószínű nem csak én fogom használni ezt a táblázatot. A külön szűrés minden változtatásnál nem működik.
És még egy jó hír, az EFG oszlopban lévő táblázat egy munkalap része, és úgy néz ki, hogy a lap alsó részén helyezkedik el.
Szövegek és aktív cellaértékek vannak felette és mellette is.A makró is jó lesz, ha nem nincs más megoldás.
-
nrg007
csendes tag
válasz
Fferi50 #24106 üzenetére
Köszönöm.
Ha jól látom akkor ez csak úgy működik, ha minden változtatáskor lefuttatom a speciális szűrést.
Olyan megoldás keresek, amelyik folyamatosan figyeli a "szükséges" oszlopban lévő értékeket és változás esetén automatikusan változtatja az F és G oszlop értékeit.
-
pirit28
csendes tag
válasz
Fferi50 #24017 üzenetére
igen lehet hogy abban lesz a bibi viszont van e valami megoldás ennek a megkerülésére mert kb 10 gépen nyitják meg a file-t és ezen gépek beállításának módosítására nincs lehetőség.(nem rendszergazdák,jogosutság zéro).A TEXT formátum nem kötelező ,ha ezt valami másra át tudnád válttni (pl időformátum ami kötött,és csak órára vonatkozna)az lenne a legjobb,csak azért hagytam benne mert ez a legutolsó forma amit használok jelenleg.
-
bteebi
veterán
válasz
Fferi50 #23979 üzenetére
Köszi a segítséget!
Így már (első közelítésben) működik, még ha nem is a legszebb/leggyorsabb.
"A select csak az aktív munkalapon használható."
Ezt nem tudtam/nem gondoltam rá, pedig logikus...Az activate/select-et amúgy nem lehet megkerülni? Próbáltam úgy, hogy
Sheets("Adatok").ChartObjects("Diagram 1").ChartArea.Copy
Sheets("Diagramok").Cells(3 + (i - 1) * 29, 2).Paste,de sajnos nem működik. Lehet valahogy "rendesen" diagramot másolni?
-
littleNorbi
aktív tag
válasz
Fferi50 #23903 üzenetére
Azt hiszem nem értettél meg. Szóval ha valaki ajánlana pl. nekem egy FKERES függvényt, hogy az a megoldás a problémámra, akkor lefordítom magamnak VLOOKUP-ra... Bár nem értem, hogy miért lovagolunk ezen, hiszen Neked nem sok közöd volt a gondom megoldásához, akik viszont segítettek, nekik ez nem jelentett akadályt...
-
slashing
senior tag
válasz
Fferi50 #23810 üzenetére
szerintem csak az első szintig tudja feldolgozni az almappákban már nem...
tehát elméletileg nem csak a fileoknál kéne addig futnia a makrónak míg <>"" az aktuális könyvtárban lévő fájlok, hanem addig míg az összes alkönyvtárban lévő fájlon lefut nem csak a gyökérben lévő fájlokon...a workbook.fullname nem fogja megadni az azon túli almappákat.
legalábbis én így értelmezem.
ha csak egy almappa van akkor az nem gond de ha több akkor arra is valami változó kell. Nekem az előbbire van egy példám:
Pathname = "C:\Valami\valami\" & knev & "\"
FileName = Dir(Pathname & "*.xls")
Do While FileName <> ""a knev az nálam egy adott cellában megadott könyvtárnév...
-
nebulo0128
csendes tag
válasz
Fferi50 #23790 üzenetére
köszi,
úgy oldottam meg közbe, hogy MS Query-vel odbc adatforrásból betöltöttem, és ott új lekérdezésként annyit adtam csak meg, hogy [ ] ez után fájl>hozzáadás excelhez, és ott kéri az, hogy melyik cellát akarod megadni a paramétert.annyi bajom lenne vele, hogy ezt a lekérdezést nem lehet lefele sokszorozni, és hogy mindig a mellette lévő adatból vegye feltételt. (olyanban gondolkozok, hogy egy nagy adatbázisból dolgozna (amit egy másik forrás progival használunk), én beírom a cikkszámot napi gyártáshoz, és azonnal kilistázza nekem elektronikát, címke nyomtatáshoz linket stb.. )
ilyenre esetleg képes az excel? vagy inkább hagyjam ezt az ötletemet -
Delila_1
veterán
-
slashing
senior tag
válasz
Fferi50 #23719 üzenetére
Csak hogy tuti ne beszéljünk el egymás mellett:
Bal oldalt van 3 variáció ahogy kiköpi a kigyűjtős macrom az adatokat. A jobb oldali végeredményt szeretném elérni. Kigyűjti a macro az adatokat változó fejléccel meghívja a következő macrot ami belerakja a jobb oldali táblába ahol már fix fejléc van csak mindig oda kerül az adat amelyik alá tartozik.
-
Saua
tag
válasz
Fferi50 #23708 üzenetére
Köszönöm a segítségeteket de csak nem boldogulok.
Sajnos nagyon korlátozottak az excel ismereteim, azt szeretném ha nem kellene állandóan beírni a város nevét az i oszlopban levő DARABTELI képletbe, hanem a képlet másolható lenne és a városnevek automatikusan kerülnének az G oszlopból a feltétel helyére. Tehát az i oszlopban megjelenjen hogy például Balatonlelle hányszor szerepel az E oszlopban.
Nem világos, hogy hogy néz ki a teljes DARABTELI képlet. -
Saua
tag
-
tgumis
tag
válasz
Fferi50 #23659 üzenetére
Köszi de se a Te se a Delila makrója nem működött. Biztos ën vok bal/sz leírnàtok melyik rèsze a makrónak mit jelent hàtha megfejtem.
A spec szűrő viszont jó bàr valamièrt mindig csinàl olyat hogy az eggyik elemet de csak eggyet ²szer rak bele az első elem az. Szóval a szűrendő lista első elemèt 2szer szerepelteti -
slashing
senior tag
válasz
Fferi50 #23608 üzenetére
Én ezt vagyis 2013 már a sorok függvényt használom a sorszámozáshoz ha olyan táblázat van amit mondjuk rendszerszeresen úgy kell bővíteni hogy sorbeszúrással.
=SOROK(A$2:A2) itt kezdődik mondjuk a sorszámozás lehúzom amíg kell aztán ha közben be kell szúrni egy új sort akkor az alatta lévők automatikusan egyel nagyobbat fognak kapni és csak a beszúrt sorra kell lehúzni a képletet, nem kell a teljes oszlopon A4-től indulva újra képletezni.
-
Carasc0
őstag
válasz
Fferi50 #23586 üzenetére
Szia!
Köszi a lehetőségeket, de az elsőt nem igazán értem. Gond az hogy a nyilvántartás folyamatosan lenne feltöltve és amint valaki felvísz egy sort abban a pillanatban megindul az automatikus számolás a megfelelő helyen és íródnak át a cella értékek. Ez muszáj hogy működjön hiszen ezért csináltam. Ha kikapcsolom az automatikus számolást akkor ez megszűnik?
Amúgy én nem makrózom arra sajnos nincs időm....Hol tudom kikapcsolni az automatikus számolást?
-
m.zmrzlina
senior tag
válasz
Fferi50 #23545 üzenetére
Jól gondolom, hogy ha a munkalapra kiírós megoldást választom akkor az objektumváltozókat sem kell Public-ként deklarálni csak minden eljárás elején (persze csak ami használja ) értékadással kell kezdeni? Pl:
Dim wsOsszesito as Worksheet
.
.
Sub makro1()
Set wsOsszesito = ThisWorkbook.Worksheets("összesítő")
.....
End Sub -
-
bteebi
veterán
válasz
Fferi50 #23410 üzenetére
Nagyon köszönöm a segítséged
, már majdnem jó
.
Sub osszeir()
Dim ws As Worksheet, i As Integer, cella As Range
i = 2
For Each ws In ActiveWorkbook.Worksheets
If Left(ws.Name, 5) = "Lista" Then
For Each cella In ws.UsedRange
If cella.Interior.Color = RGB(141, 180, 226) Then
Sheets("Összefoglaló").Cells(j, 3).Value = ws.Cells(5, (cella.Column \ 2) * 2) & " - " & ws.Cells(cella.Row, 1) & " - " & ws.Cells(6, cella.Column)
i = i + 1
End If
Next
End If
Next
End SubA Sheets("Összefoglaló").Cells(j, 3).Value = ws.Cells(5, (cella.Column \ 2) * 2) & " - " & ws.Cells(cella.Row, 1) & " - " & ws.Cells(6, cella.Column) sornál akad el, "Application-defined or object-defined error"-ral. Sajnos nem megy se ws-sel, se anélkül.
#23411: Neked is köszönöm Delila
. Az összevont cellás részt egyébként megoldottam így: (cella.Column \ 2) * 2. A "\" (mint újonnan ismét megtanultam) egész osztást végez, a mod (ezt is el szoktam felejteni) pedig a maradékos osztás maradékát adja meg. Például 14\3 = 4, 14 Mod 3 = 2.
-
-
-
Delila_1
veterán
válasz
Fferi50 #23329 üzenetére
A makró több formátumot módosít: a cella háttérszínét, a 4 szegély 3-3 tulajdonságát, úgy, mint stílusát, vastagságát, és színét, ami összesen 13 tulajdonság.
Igen, látszólag el lehetne tárolni ezeket, de mikor is állítanád vissza az eredeti értékeket? Mikor egy másik cellára kattint a felhasználó.
Tehát 13 publikus változóban kellene tárolni a fentieket, plusz az előzőleg kiválasztott cella címét, hogy tudjuk, melyik cella feltételes formátumát kell visszaállítani – ha egyáltalán volt rá ilyen adva. Ezeken kívül még a feltétel(eke)t is be kellene spájzolni.Eddig 1 celláról beszéltem, de a kiválasztott cellának a teljes sorát, és oszlopát módosítja a célkeresztes makró. Hány változó is kellene ehhez?
Nem tudod eltárolni az adatokat.
A célkeresztes makrót ott lehet alkalmazni, ahol nincs a lapon feltételes formázás.
-
válasz
Fferi50 #23246 üzenetére
Közben az a helyzet állt elő, hogy van amikor az új árlistában kevesebb termék van, így azokat ami a "mi" listánkba benne van és az újba nincs, azt ki szeretném listázni egy új munkalapra.
Az általad írt ciklust fordítottam vissza és 80%-ban működik is, de a két munkalap sorainak számának különbségéből látom, hogy 21 terméket vettek ki az új listából, ám az én makróm csak 17-et listáz ki.
Sajnos nem jöttem rá, hogy mi a gond. (Remélem nem bonyolítottam túl a leírást.)For i = 2 To Sheets("pm_nk_arlista").UsedRange.Rows.Count
Set ujszam = Sheets("pm_nk_arlista_uj").UsedRange.Columns(1).Find(What:=Sheets("pm_nk_arlista").Cells(i, 1).Value, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False)
If ujszam Is Nothing Then
Sheets("Kiesett_termékek").Cells(a, 1).Value = Sheets("pm_nk_arlista").Cells(i, 1).Value
Sheets("Kiesett_termékek").Cells(a, 2).Value = Sheets("pm_nk_arlista").Cells(i, 2).Value
Sheets("Kiesett_termékek").Cells(a, 3).Value = Sheets("pm_nk_arlista").Cells(i, 3).Value
Sheets("Kiesett_termékek").Cells(a, 4).Value = Sheets("pm_nk_arlista").Cells(i, 4).Value
Sheets("Kiesett_termékek").Cells(a, 5).Value = Sheets("pm_nk_arlista").Cells(i, 5).Value
a = a + 1
End If
Next iVan ötletetek?
-
biker
nagyúr
-
billyjoe
csendes tag
válasz
Fferi50 #23213 üzenetére
Szia!
Köszi a választ!
Kipróbáltam hogy a pivotokat külön file-ba raktam, az alapadatokat pedig beduplikáltam, így lefutott a frissítés. A másik gond, hogy az alapadatoknál van kb 10 oszlop ahol képletekkel számolok, annak az újrahúzása nem kis időt vett igénybe, de végül megtudta csinálni. Ez egy kész riporting rendszer, ugye rengeteg adattal, a jelenlegi tudásommal nem tudnám megcsinálni pivotok nélkül sajnos.Szívesen mutatnék adatok nélkül egy mintát, de sajnos nincs rá lehetőségem. Tulajdonképpen napi sales adatok vannak benne, a pivotok segítségével kerülnek be az elemző táblázatba a szükséges adatok, ott is van kb. 15 sheet táblázatokkal, diagramokkal.
De a lényeg, hogy úgy tűnik működni fog, úgyhogy még egyszer köszönöm a segítséget.
Üdv!
Új hozzászólás Aktív témák
- Linux Mint
- Windows 11
- Jövedelem
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Újjászületés: szombattól új szerverkörnyezetben a PROHARDVER! lapcsalád
- Mikrotik routerek
- OpenMediaVault
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Internet Rádió építése (hardver), és programozása
- Háztartási gépek
- További aktív témák...
- Honor X6a 128GB, Kártyafüggetlen, 1 Év Garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! R5 3600X / GTX 1080Ti / 16GB DDR4 / 512 SSD
- AM4 Setup! Kamatmentes rèszletre is! Èrdeklődj!
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- Bomba ár! Dell Vostro 3560 - i3-3120M I 8GB I 320GB I DVDRW I 15,6" HD I HDMI I Cam I Garancia!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő