Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- hcl: Kelj fel komám, ne aludjál
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- Elektromos rásegítésű kerékpárok
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- ldave: New Game Blitz - 2025
- Geri Bátyó: Agglegénykonyha 3 – Paradicsomos káposzta (amit amúgy utálok)
- Geri Bátyó: Agglegénykonyha 2 – Főzés: szabályok, vagy szabadság?
-
LOGOUT
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
-
Excelbarat
tag
Munka2-n csinálsz +egy sort amiben szummázod az értékeket. Majd Munka1 B2-be ezt írod:
=TRANSZPONÁLÁS(Munka2!A11:G11) (nálam a munka2 11 sorában vannak az összes értékek)
Ez után kijelölöd B2:B8 mezőket és lenyomod az F2 -t majd Ctrl+Shift+Enter kombinációt. Ha jól csináltad kitöltötte függőlegesen az összeg sorokkal. A változásokat automatikusan követi. De ezt a 7 értéket lehet hamarabb lehivatkozod egyesével beírással -
Caipi
tag
Sziasztok,
Ismét szeretném a segítségeteket kérni, már nem fog az agyam így este :-)
Van egy táblázatom (Munka2), ahol vízszintesen A1:G1 a féjléc. Alatta soronként összegek.
Szeretném ezeket a sorokat összesíteni egy másik munkalapon. A fejlécet (A11) átraktam függvénnyel Munka1-re függőlegesen az A2:A8 sorokba. Szeretném melléjük tenni a hozzájuk tartozó Munka2-n szereplő oszlop értékeinek összegét.
Szumha()-t kezdtem el nyúzni, de függőlegesen nekem nem működött.Köszönöm
-
Roxeus
tag
Lenne egy "apró" problémám, amiben segítségeteket kérném.
Adott egy Excel táblázat, ahol érvényesítés -> lista értékeiből lehet választani a legtöbb rekordot. Ezzel nincs is semmi baj, csak idő közben annyira megszaporodtak a választható listaelemek, hogy szét kellene bontani őket kategóriánként. Azaz pl. ha a rekord egyik oszlopában kiválasztok egy termékkategóriát, akkor a mellette lévő listában már csak a feltételeknek megfelelő listából lehessen választani.
Köszönöm előre is.
-
Delila_1
veterán
Valószínű, hogy a SZUMHA függvénnyel megoldhatod. Az első lapon 1, a másodikon 7 oszlop adatait kell ezzel a függvénnyel összegezned.
Első lap:
=szumha(tartomány;kritérium;összegtartomány)Második lap:
=szumha(tartomány;kritérium;összegtartomány_1_oszlopa)+szumha(tartomány;kritérium;összegtartomány_2_oszlopa)+.....szumha(tartomány;kritérium;összegtartomány_7_oszlopa) -
Caipi
tag
válasz
Delila_1 #17087 üzenetére
A Munkalapon első sora azonosítót tartalmaz (ez köti össze a két munkalapot).
Az adott sorhoz két oszlopban szerepelnek értékek a Munka1-en, amelyeknek az összegét kell vizsgálnom (ez lenne a két fkeres()).
A Munka 2-őn ugyanazon azonosítókhoz kerülnek összegek, csak nem két, hanem több oszlopba (ez sima szum()).
Az esetleges elírásokat szeretném elkerülni azzal, hogy megvizsgálnám, hogy a két munkalapon az adott azonosítóhoz tartozó összegek egyformák-e (Munka1-en két oszlop; Munka2-n 7). Ha a két szum() nem stimmel jelezzen nekem, hogy ellenőrizni kell az adott sort. -
Caipi
tag
Sziasztok,
Szeretném megkérdezni, hogy lehetséges-e a szum() függvényen belül a tartomány elejét és végét fkeres() függvénnyel megadni?
Nekem elsőre nem fogadta el az excel.ha(SZUM(DR4
X4)<>szum(fkeres($A4;'Munka2'!$A:$E;3;hamis):fkeres($A4;'Munka2'!$A:$E;4;hamis));"Hiba";"")
Köszönöm a válaszokat előre is
-
Excelbarat
tag
válasz
#05304832 #17082 üzenetére
Hi!
usor = Cells(Rows.Count, "C").End(xlUp).Row ez jelenti hogy meddig csinálja, ami most az utolsó kitöltött sor a "C" oszlopban. Írd át erre:
usor = 258De ha a későbbiekben újra inkább szeretnéd az előző módszert használni csináld azt hogy az usor elé egy ' jelet teszel, tehát:
'usor = Cells(Rows.Count, "C").End(xlUp).Row így "inaktívvá" teszi a sort
ez után pedig az alatta lévő sorban:
For sor = 12 To usor átírod az usor -t 258 -ra
Ebben a sorban határozza meg tulajdonképpen a makró hogy a For ciklus mettől (12) meddig (usor ami egy változó, melynek értéke az utolsó sor) fusson, ha átírod usor-t akkor a For ciklust 12 to 258 re akkor jó lesz.Közben Delila_1 is megírta
Üdv -
vgergo
aktív tag
Sziasztok
Excel 2010 kapcsolatban szeretnék segítséget kérni. A problémám a következő van olyan excel file-om, amiben egy képletet több mint 1milliószor szerepel (mindig más paraméterekkel). Feladatkezelőben azt látom, hogy CPU-használat 25% fölé nem megy, azaz csak 1 futási szálat használ a 4-ből. File->Beállítások->Speciális->Több szálon történő számolás engedélyezve (összes processzorrát felhasználhatja). Feladatkezelőben is be van állítva 4 szál használta (affinitás).
[link]Hogyan tudom beállítani, hogy mind a 4 futási szálat használja az excel.
Segítségedet előre is köszönöm.
üdv.:vgergo
-
Mutt
senior tag
válasz
Excelbarat #17078 üzenetére
Hello,
minden második sor összeadása
=SZORZATÖSSZEG(--(MARADÉK(SOR(A1:A15);2)=0);A1:A15)
Ha az egyenlőségjel után 0 van, akkor a páros sorok összegét kapod; ha 1 akkor a páratlanokét az A1:A15 tartományban.
üdv.
-
Mutt
senior tag
válasz
bteebi #17072 üzenetére
Hello,
Azt szeretném megcsinálni, hogy csak az egy adott időhöz (pl. hétfő, kedd, szerda... 0:10, 3:50 vagy 6:40) tartozó B oszlopban lévő számokat átlagoljam (0:00-tól 23:50-ig, 10 percenként, összesen 144 időpont).
Ha Excel2007 vagy újabbat használsz akkor használhatók a HATÖBB (ÁTLAGHATÖBB, DARABHATÖBB stb) függvények is. Régebbiekben pedig az AB.ÁTLAG vagy a SZORZATÖSSZEG függvények tudnak segíteni.
Mindegyik esetben nem arra kerestem, hogy pontosan hol van pl. 12:10 hanem 12:10-12:19-es időintervallumra. Gondolom kerekítési hiba miatt nem megy a pontos keresés.
Itt van a minta fájl.
üdv.
-
Excelbarat
tag
válasz
refugee #17074 üzenetére
C3-ba ezt írd: =HA(C1<=$B$5;SZUM(C7:C9);0)
Ezt jobbra elhúzod ameddig vannak napjaid. Ezzel megoldódik hogy csak akkor adja össze ha már "elmúlt" vagy aznap van.A minden második sor összeadására olyan megoldást tudok ajánlani amihez plusz 1 segédsor kell (de ezt akár el is lehet rejteni):
Felveszel az adatok mellé egy új oszlopot ahova beírod ezt a függvényt és végigmásolod:
=PÁROSE(A1) (elrejt utána h ne látszódjon)
Mellette lévő oszlopba pedig ezt a fv-t írod:
=SZUMHA(B1:B15;IGAZ;A1:A15) ekkor minden páros (tehát második) sort ad össze
=SZUMHA(B1:B15;HAMIS;A1:A15) ekkor minden páratlan (tehát első) sort ad összeAz első kérdésedre úgy gondolom csak makróval lehet megoldást találni mivel egy lapvédelmet kell aktiválni, deaktiválni. Ami úgy működne hogy ha elmúlik a nap akkor arra a cellára zárolt formázást ad. (de ez csak abban az esetben működik ha be van kapcsolva a lapvédelem) Megoldható ez is. Csak akkor Egyénileg minden cellán végig kell zongorázni hogy melyik legyen zárold és módosítható a lapvédelem aktiválásakor (persze ezt csak egyszer kell megcsinálni
) utána már végezné a dolgát a makró
-
Gergosz2
veterán
Szevasztok!
Azt vettem észer hogy az excel rosszul számolja a heteket, azaz a weeknum() függvény rossz visszatérési értéket ad. Pontosan 1-el többet mint ami a tényleges.
Minap vettem észre, hogy valami nem stimmel az egyik statisztikámban , és meglepődtem hogy ez volt a hiba.Valaki tudja hogy miért van ez?(egy office 2007 diák verzióról lenne szó.)
-
atillaahun
veterán
válasz
Excelbarat #17042 üzenetére
Ez tényleg sokat segített, gyönyörűen feltöltötte az üres cellákat. Így már csak egyszer akadt le róla a makró, de azt a sort kihajintottam (nem jöttem rá mi volt benne egyébként), és utána végig is futott.
Köszönöm.(#17045) Delila_1
-
refugee
csendes tag
Sziasztok!
Segítségetek szeretném kérni az alábbi táblázattal kapcsolatban. Ez egy logisztikai tábla melyben napokra föl vannak tüntetve egyes beszállítók és a hozzájuk tartozó betervezett kamionok darabszáma. Arra szeretném rábírni ezt a táblát, hogy úgy számoljon hogy amikor eljön az adott nap akkor rögzítse le a tervezett sorban a darabszámot ami ahhoz az oszlophoz tartozik, és ha egy beszállítótól nem jön annyi kamion mint ami be volt tervezve és átírjuk 2-ről mondjuk 1 re akkor se változtassa meg a tervezettnél lévő darabszámot. Erre a példa a mai dátumnál találaható. Ugyanez majdnem pepitában a ténylegesnél csak ott pedig annyival hogy az elkövetkezendőkben addig nullát adjon ameddig el nem jön az a nap majd csak aznapon számolja össze az oszlopban található számokat.
És még valami, az istenért sem sikerült rájönnöm arra, hogy, hogy írjak egy olyan összeadást amit egy adott oszlopon belül (Mondjuk A1:A15 között) csak minden második cellát adjon össze?
Segítségeteket előre is köszönöm.
-
Mutt
senior tag
válasz
m.zmrzlina #17070 üzenetére
Hello,
Automatikus kiegészítés ActiveX-es beviteli listával (combobox) is megoldható, illetve ahogy Excelbarát is írta, a cella alatt/felett összefüggő tartományként felsorolt adatokkal.
üdv.
-
bteebi
veterán
Sziasztok!
Van egy Excel táblázatom, aminek 2 oszlopában vannak adatok. Az A oszlopban idők, a B oszlopban pedig ezekhez tartozó számok vannak (Az A1 és a B1 fejléc, mondjuk Idő és Érték). Fix 10 percenként vannak értékek, több hónapon keresztül. Azt szeretném megcsinálni, hogy csak az egy adott időhöz (pl. hétfő, kedd, szerda... 0:10, 3:50 vagy 6:40) tartozó B oszlopban lévő számokat átlagoljam (0:00-tól 23:50-ig, 10 percenként, összesen 144 időpont).
Úgy van most megcsinálva, hogy a D oszlopban vannak az átlagoláshoz szükséges időpontok (0:00-tól 23:50-ig, 144 db), és amellé, az E oszlopba készíteném az átlagolást. Azt hittem, hogy az AB.ÁTLAG függvény jó erre, de nem tudtam úgy paraméterezni, hogy azt csinálja, amit szeretnék.Remélem érthetően fogalmaztam. Milyen függvényt használjak, milyen beállításokkal? Előre is köszönöm a segítségeteket!
-
Excelbarat
tag
válasz
m.zmrzlina #17070 üzenetére
Hi!
Erre egy elég fura megoldást találtam:
Nálam úgy működött hogy ahol a lista van fogtam a sorait elrejtettem (nem szükséges csak az esztétikum miatt) és közvetlen alatta lévő sorban adatérvényesítéssel csináltam listát. Sajnos csak így jött össze... ha 1 sor kihagytam már nem működött az autokiegészítés a listában. -
m.zmrzlina
senior tag
válasz
Delila_1 #17069 üzenetére
Az On Error Resume Next megadásakor nem áll le a program, hanem a következő sorra ugrik.
És ezt mindaddig csinálja amíg az Az On Error Goto 0 ki nem kapcsolja.
Ez volt a probléma. Korábban volt egy Resume Next és nem volt utána Goto 0
Köszi
Az automatikus kiegészítére valakinek valami ötlet?
-
Delila_1
veterán
válasz
m.zmrzlina #17068 üzenetére
Az On Error Resume Next megadásakor nem áll le a program, hanem a következő sorra ugrik.
Az On Error Goto 0 kapcsolja ki.Amit küldtem, abban az On Error Goto Hiba sorral a Hiba címkére küldöm hiba esetén, ami egy üzenetet küld arról, hogy létezik már azonos nevű lap.
-
Delila_1
veterán
válasz
m.zmrzlina #17066 üzenetére
Elküldöm az én füzetemet.
-
m.zmrzlina
senior tag
válasz
Delila_1 #17064 üzenetére
Érdekes dolgot vettem észre.
A Worksheets(intI).Name = Int(Worksheets(intI).Range("B10").Value) sor után betettem ezt:
If Err.Number <> 0 Then Debug.Print Err.Number
A látszólag jól lefutó átnevezések után is hibakódot ír (9-t) de ott sem áll meg a futás.
Az On Error Resume Next csak az azt követő sorra van hatással, vagy a kód további részében minden hibánál továbblép?
-
Delila_1
veterán
válasz
m.zmrzlina #17063 üzenetére
Ez a módosítás csak a futás idejét befolyásolja, a működését nem.
-
m.zmrzlina
senior tag
Még egy kérdés, az előbbitől teljesen független.
Van egy tartomány (mondjuk legyen az "A" oszlop). A felhasználónak ezt kell kitöltenie olyan tartalommal (csak szöveg) amit kb 250 különböző tételből választhat ki, ezen kívül itt nem fordulhat elő más tartalom.
Szeretném a tartomány kitöltését megkönnyíteni de nem validált listával mert 250 elem esetén már macerás.
Az lenne a legegyszerűbb ha az egyébként az excelben már működő automatikus kiegészítést tudnám úgy használni, hogy ha elkezdi begépelni a szöveget akkor felkínálja a begépelt tartalom alapján lehetséges választásokat.
Van eree valamilyen lehetőség?
-
Delila_1
veterán
válasz
m.zmrzlina #17057 üzenetére
Nálam hibára fut, ahogy várod.
Többször láttam, hogy a for-next ciklusban a tól-ig határt a valami.count-tal adod meg. Ez azt eredményezi, hogy szegény gépnek minden ciklusban ki kell számolnia, mennyi az a bizonyos count. Célszerűbb egy változóban előre megadni ezt az értéket, gyorsít a futáson.
-
válasz
Delila_1 #17056 üzenetére
Igen ez jó lenne, de... sajnos a főnökség nem minden esetben csak egy költségnemet akar látni, hanem többet is, akkor sajnos ez sem jó, mert az egyes cég 100 ha-os összterülete esetén két költségnemnél csak 50ha-al számolna. Ez tudom elég érdekes egy helyzet. Megoldást, egyenlőre abban látom, hogy költségnemenként csinálok belőle egy egy kimutatást, egymás alá, igaz így csak manuálisan tudnak több költségnemet összesíteni, de az már....
A legjobb még mindig az lenne, ha képes lenne a 4 összesített cellában lévő egy adatot mind a négyhez rendelni, de csak egynek számolna, nem csak a legfelsőhöz.
-
m.zmrzlina
senior tag
Van egy ilyen makrórészlet:
For intI = Worksheets.Count To 1 Step -1
If Worksheets(intI).Name <> "összesítő" Then
If Worksheets(intI).Range("B1").Value = "valami" Then
Worksheets(intI).Name = Int(Worksheets(intI).Range("B10").Value)
Else
Application.DisplayAlerts = False
Worksheets(intI).Delete
Application.DisplayAlerts = True
End If
End If
NextAz a bajom vele, hogy ha két munkalapon a B10-es cella (egészrésze) megegyezik akkor (várakozásom szerint) annak kellene történnie, hogy a makró az első munkalapot átnevezi a másiknál pedig hibára fut mivel már van egy olyan nevű munkalap amire az aktuálisat nevezni kellene. (ezt a második munkalapot egyébként törölni szeretném a későbbiekben)
Ezzel szemben az történik, hogy hibaüzenet nélkül végigfut a makró és a második munkalapnak meghagyja az eredeti nevét.
Miért van az hogy nem fut hibára a makró az átnevezésnél és hogyan lehet legegyszerűbben detektálni a névütközést?
(ellenőriztem: nincsen "úgymaradt" Application.DisplayAlerts = False parancs sehol a kódban korábban.)
-
válasz
Delila_1 #17054 üzenetére
Ez az én esetemben fals számot ad, mert az össz terület tegyük fel 25000 ha. A részösszeg (9) függvénnyel számolva 100.000 ha-t ad eredményül, amit a helyes szám eléréséhez 4-el kell osztani, mert cégenként 4x szerepel a terület, ha átlagot számoltatok a részösszeggel akkor nem jó, mert a 100.000ha-t 44 felé dobja szét, mivel 44 sorom van. 11 cég, 4 költségnemmel.
-
Delila_1
veterán
A RÉSZÖSSZEG függvény segítségével ezt ár lehet hidalni.
A szűrt állomány adataival számol, a mindenkori szűrésnek megfelelően. A függvényszámtól (súgó) függően összeget, darabszámot, átlagot, minimumot, stb. tudsz vele számolni oszloponként.
Itt az egyik oszlop összegét kell majd osztanod a másik oszlop darabszámával.
-
válasz
Delila_1 #17052 üzenetére
Igen erre gondoltam én is, de ha ő akinek készül meg akar nézni, egyszerre több költségnemet pl vetőmag és műtrágya akkor már nem jó, mert ott csak kettővel kell osztani.
A legfőbb gond az az, hogy amikor szűrök bármire, akkor a terület adatokat hozza, látszanak, de csak a mezei leltár esetén számol (egyesített cellák első adata mindenütt), a többi esetében nulla az értéke a cellának hiába jelenik meg benne szám.
-
Sziasztok!
A segítségeteket szeretném kérni.
Van egy táblázat ami cégenként tartalmaz mezei leltár, műtrágya, növényvédőszer és vetőmag költségadatokat. Hogy szűrni is lehessen minden sor tartalmaz adatokat, tehát minden cégnév is 4x szerepel. Az adatok (oszlopok), cégkód, cégnév, megnevezés, bázis terület (ha), terv terület (ha), Bázis (eFt), Bázis (Ft/ha), Terv (eFt), Terv (Ft/ha). A sorok pedig a fent említett költségféleségeket tartalmazzák cégenként.
A gondom az, hogy ezeket a sorokat kellene összesíteni. A volumen költségeket (eFt) lehet összesíteni, de a fajlagosokat nem, így azt a terület alapján számoltatom, a területek viszont nem szerepelhetnek minden költségnemnél, mivel cégenként az négyszereződne, így cellákat egyesítve, cégenként két terület adatot adtam meg (bázis terv), de emaitt, ha szűrök, csak az összes sor esetén az első költségnemre és bármely cégre szűrve ad helyes eredmény, kölségnemekre szűrve (pedig az a fontos) nem ad ki adatot, mert a területet a cellaegyesítés miatt nem adja ki. Mit tudok tenni, mi lehet a legegyszerűbb megoldás.
A területek, a volumen költségek részösszeg függvény segítségével vannak összesítve.
Előre is köszönöm!
[ Módosította: CoolMan ]
-
werszomjas
addikt
Sziasztok!
Excelben hogyan tudok olyat csinálni, hogy a legelső sor folyamatosan látszódjon, akkor is, ha tovább görgetek rajta.
Tehát ha pl kitöltök egy excel táblát, legelső sorba írom, hogy darabszám, ár, készlet stb stb, és ha van már több 100 tétel a listán, akárhova a görgetek, az első sor fix legyen és mindig látsszon
-
Delila_1
veterán
válasz
m.zmrzlina #17046 üzenetére
Szívesen.
Mutt is írt egy változatot, nézd meg.
-
Delila_1
veterán
válasz
atillaahun #17040 üzenetére
Excelbarát 17042-es válasza remek, azzal a különbséggel, hogy ne @-ot, hanem pl. egy pontot írj az üres cellákba. Az Ugrás menü a Ctrl+g kombinációval jön elő 2003-tól a 2010 verzióig.
-
CsabiHT
csendes tag
Bocsi az előző kérdésem JEGELVE!!!!
-
CsabiHT
csendes tag
Sziasztok
A segítségeteket szeretném kérni, a problémám a következő:
kb. 1500 excel tábla adatait kellett, egy közös excelbe összefűznöm, ami egy kis makrózgatás után sikerült is, viszont, minden egyes tábla különböző embert jelölt, és minden emberhez tartozik egy szám ami viszont többször is szerepel az adott emberhez rendelve.
Ami megkülönbözteti őket egymástól az jelen esetben a fejlécek amik ugye elválasztják őket egymástól, jah és a fejléc mindenkinél természetesen ugyanaz.
Azt szeretném megtudni, hogy összesen hányszor szerepel ugyanaz a szám az összes embernél?Példa:
Termék
4
4
4
4
Termék
3
3
3
3
3
Termék
3
3
3
3
3
3
3
Termék
4
4
4Hányszor szerepel a 4-es szám? Az eredmény ami kell nekem az a 2.
A 7 azért nem jó eredmény, mert egy emberhez hiába szerepel többször ugyanaz a szám, nekem csak az kell, hogy egy fejléc alatt van-e négyes vagy nincs és ha van azokat számolja meg.Nem tudom mennyire voltam érhető...kérlek segítsetek!
-
Excelbarat
tag
válasz
atillaahun #17040 üzenetére
Ha az üres cellákba írsz @-ot egyesével akkor arra van gyorsabb módszer. Kijelölöd az adatbázist, Keresés és kijelölésre katt - Ugrás - Irányított üres cellák pipa Ok, nyomsz egy F2-t beírod a kívánt szöveget és Ctrl+Enter így feltölti az összeset.
-
Caipi
tag
Ezzel kezdtem, de az a gond vele, hogyha
- átnevezed a filet
- átmásolod máshova
- munkalapot átmásolodMegszűnnek ezek a linkek. Emiatt kezdtem el keresgetni más megoldást, mivel a fájlnak többször kell más nevet adnom, emailban küldeni, stb. Ilyenkor meg az összes link elúszik....
Érdekes módón viszont függvényként követi a változásokat. -
atillaahun
veterán
válasz
Delila_1 #17034 üzenetére
Az a gond, hogy nem üres sorok vannak, hanem üres cellák, százával, különböző sorokban és oszlopokban elszórtan. Sajnos mivel maga az adatbázis, egy Outlook-ból csv-ként kiexportált, majd széttagolt levelek százainak ömlesztett szemétdombja, ezért egy pöppet kaotikus a felépítése. A rendszer az utolsó dolog amit ebben meg lehet találni.
De 20-30 oszlopnál több nincs benne szerencsére, úgyhogy mindre ráküldtem egy szűrőt, aztán egyenként kézzel végigmegyek rajtuk "@"-ot tartalmazzon-al Végülis kb. dél óta már a végére értem.
Úgyhogy most jöhet a maradék 7 adatbázis. -
Mutt
senior tag
válasz
Lacces #17030 üzenetére
Hello
A http://financialsoft.about.com/od/spreadsheettemplates/tp/Free-Budget-Spreadsheets.htm oldalon van összegyűjtve pár link ahol vannak ilyen sablonok.
Azonban nem biztos, hogy Excel-re (vagy akár Access-re) szabad bízni ilyen adatokat, s emiatt esetleg jobb választás lehet egy dedikált program. Ezen vagy ezen az oldalon vannak ingyenesek.
üdv.
-
Mutt
senior tag
-
Delila_1
veterán
válasz
m.zmrzlina #17035 üzenetére
On Error Resume Next
Workbooks.Open Filename:= utvonal & fájlnévHa már meg van nyitva az utvonal és a fájlnév változókban meghatározott fájl, nem fut hibára a makró.
-
m.zmrzlina
senior tag
Ismerem egy excel fáljnak az elérési útját és a nevét.
Hogyan tudom makróból legkönnyebben lekérdezni, hogy az adott fájl nyitva van-e?
-
Delila_1
veterán
válasz
atillaahun #17032 üzenetére
Az üres sorok után – ha feltétlen kellenek üres sorok – újabb autoszűrőt rakj be.
Ha csak valami csicsás forma miatt hagysz üreseket, az egyik cellába írj valamit, és a karakter színét állítsd a háttér színére. Akkor a szűrő 1 táblának veszi az adatokat. -
válasz
Fire/SOUL/CD #17031 üzenetére
a debug funkcióval végigléptettem s az derült ki hogy a "CommandButton1"-es a saját helyén ("Munka1") akarja végrehajtani a műveletet, így raktam a "CommandButton2"-be egy "Munka2" fülre (önmagára) való lépést
szal e szerint le tudom futtatni a "CommandButton1"-el a "CommandButton2"-be lévő utasításokatPrivate Sub CommandButton1_Click()
Munka2.CommandButton2_Click
End Sub
Public Sub CommandButton2_Click()
Sheets("Munka2").Select
.... utasítások ....
End Subja s mindent köszi
-
atillaahun
veterán
Szép estét,
lehet hülye kérdés, de létezik valami olyasmi, hogy két dimenziós szűrés?
Tehát egy több sorból és oszlopból álló tartomány celláit leszűrni egy bizonyos feltétel szerint?Delila_1 már írt nekem egy ehhez hasonló makrót múltkor, csak az valamiért nem szereti ha üres cellák is vannak a tartományban, amin végigfut.
-
-
Lacces
őstag
Sziasztok,
Ilyen magánszemélyeknek pénzügyi nyilvántartó mintát ami úgy jó, egyszerű is (nem ezek a bonyolultak, apeh szintűek
) Hol találok? Tudtok javasolni? Amiknek van számítás is?
Bevétel, kiadás, megtakarítás ilyesmi érdekelne -
Mutt
senior tag
válasz
commanDOS #17026 üzenetére
Hello,
...100 és 2000 között bármilyen szám kerülhet, amit meg kell feleltetnem a krititériumnak megfelelő 5 szám (500,750,1000,1500,2000) valamelyikével.
Az FKERES (VLOOKUP) fog itt segíteni, csak itt fontos hogy a függvény 4-ek paramétere (IGAZ legyen, vagy üres). Ilyenkor a legközelebbi találatot adja az Excel, ezért a keresési tartományt mindenképp rendezd sorba.
üdv.
-
commanDOS
senior tag
válasz
Delila_1 #17024 üzenetére
Köszi, de ha jól értelmezem akkor ez konkrét értékekre ad válaszul egy másik értéket.
Viszont nekem a cellába gyakorlatilag 100 és 2000 között bármilyen szám kerülhet, amit meg kell feleltetnem a krititériumnak megfelelő 5 szám (500,750,1000,1500,2000) valamelyikével. -
válasz
Fire/SOUL/CD #17014 üzenetére
sikerült rosszat küldeni
valszeg küldés előtt felülírtam a fájltaz a lényeg hogy a szövegdoboz téma megjelenik, de utána jön a hiba
-
commanDOS
senior tag
Sziasztok!
"HA" függvénnyel megoldható valahogyan ha egy cellában lévő változó értéket közelíteni szeretnék egy létező konstanshoz? Pl. azt mondom, hogy ha az érték 300 és 550 között van, akkor a cellában az 500 jelenjen meg;
ha 551 és 780 között, akkor a 750 értéket adja, stb.
Kiválasztáshoz kellene. A képlet ad egy számot (méretszám), de ilyen méretű termék nem létezik és közelíteni kell egy meglévő mérethez, a méretskála mondjuk 5db méretet tartalmaz. -
Mutt
senior tag
válasz
Salex1 #16983 üzenetére
Hello,
A második munkalapon van egy név és egy dátum, ha ez a dátum a mainál régebbi, akkor a nevet kellene áttenni az első munkalap következő üres sorába.
2 megoldást is találsz itt.
Az egyik makró mentes, és kimutatást használ.
Nálam Referencia nevű lapon van az adatsor, ebben van a dátum és egy számított mező (a pivot miatt kell) amely megmondja, hogy lejárt-e már a dátum. Az egész egy igazi táblázatban van, amely biztosítja hogy amikor új sort viszel be akkor a számított mező automatikusan létrejön (nem kell neked másolnod) és hogy a pivot az újabb értékeket is megtalálja. Az első munkalapon pedig van egy kimutatás, amely a fájl minden megnyitásakor automatikusan frissül és a számított mező alapján szűr. Ami gond, hogy a kiimutatás sorba rendez, így nem a dátum szerint fogod látni az eredményeket. És csak akkor frissül ha újra megnyitod a fájlt.A másik megoldás pedig egy makró használata, amely a munkalapra váltáskor mindig lefut. Azonban hogy feleslegesen ne vigyen át adatok kell neki egy jelzés azon sorokról amelyeket már átmásolt, ez van a negyedik oszlopban (ez elrejthető ha zavar). Az eredményt a Makroval lapra rakja.
A kód pedig:
Private Sub Worksheet_Activate()
Dim vLastRow As Long
Const vTargetSheet As String = "Makroval" 'a lap neve ahova másolni kell a lejártakat
Const vDatumOszlop As Long = 2 'hanyadik oszlopban van a dátum
Const vFlagOszlop As Long = 4 'jelzés hogy melyik lett másolva már
Dim i As Long
'megnézük a cél helyen az utolsó sort
vLastRow = Application.WorksheetFunction.CountA(Sheets(vTargetSheet).Range("A:A")) + 1
'az aktuális lap sorain végigmegyünk
For i = 2 To Application.WorksheetFunction.CountA(Range("A:A"))
'ahol nincs kitöltve a másolás oszlop és a dátum a múltban van azokat másoljuk
If IsEmpty(Cells(i, vFlagOszlop)) And Cells(i, vDatumOszlop) < Date Then
Range(Cells(i, 1), Cells(i, vDatumOszlop)).Copy Destination:=Sheets(vTargetSheet).Range("A" & vLastRow)
'flaget beállítjuk
Cells(i, vFlagOszlop) = "x"
vLastRow = vLastRow + 1
End If
Next i
End Subüdv.
-
sarvari
csendes tag
válasz
Excelbarat #17018 üzenetére
köszi kipróbálom holnap
és majd irok hogy ment
mégegyszer kössz -
Mutt
senior tag
válasz
Excelbarat #17018 üzenetére
Hello,
Itt van az én megoldásom is.
Sub Szorzat()
Dim i As Long, j As Long, k As Long
Dim sor As Long, oszlop As Long
Dim nev As Range, szam As Range, vas As Range, szel As Range, hely As Range
Set nev = Range("B1") 'itt van a név pl. név
Set szam = Range("B2") 'itt van az azonosító pl. 1234
Set vas = Range("A5:A7") 'itt találhatók a vastagságok pl. 3 cm, 4 cm, 5 cm
Set szel = Range("B4:D4") 'itt találhatók a szélességek pl. 10 cm, 20 cm, 30 cm
'a szélességek alatti sorokban találhatók a tömegek
Set hely = Range("A11") 'az eredmény első mezője
sor = hely.Row
oszlop = hely.Column
'fejléc
Cells(sor, oszlop) = [A1]
Cells(sor, oszlop + 1) = [A2]
Cells(sor, oszlop + 2) = [A3]
Cells(sor, oszlop + 3) = [B3]
Cells(sor, oszlop + 4) = "súly"
k = 1
For i = 0 To vas.Rows.Count - 1
For j = 0 To szel.Columns.Count - 1
Cells(sor + k, oszlop) = nev
Cells(sor + k, oszlop + 1) = szam
Cells(sor + k, oszlop + 2) = vas.Resize(1, 1).Offset(i)
Cells(sor + k, oszlop + 3) = szel.Resize(1, 1).Offset(, j)
Cells(sor + k, oszlop + 4) = vas.Resize(1, 1).Offset(i, j + 1)
k = k + 1
Next j
Next i
End Subüdv.
-
Excelbarat
tag
válasz
sarvari #17013 üzenetére
Hi!
Igazából nagyon nem akartam elbonyolítani így a makró a vastagság és szélesség oszlopokat tölti fel a súly értéket pedig függvénnyel már meg lehet oldani.
1. lépés Beírod ugyan arra a munkalapra a fejléceket pl A11: Név, B11: Szám, C11:Vastagság, D11: szélesség
2. makrót elindítod. Működése: a vastagság értékeket beírja annyiszor egymás alá ahány szélesség van. (megkeresi adott esetben C oszlop legalsó értékét és az alá tölti, ezért kell C,D11-be pl beírni a fejlécet, mert az a mérvadó). Majd a szélesség értékeket transzponálja D oszlopba egymás alá addig amíg C oszlopban van érték.
3. a Súly oszlopba beírod ezt a képletet és végigmásolod (katt a jobb alsó sarkában lévő kis fekete pöttyre 2x)
=INDEX($A$5:$D$8;HOL.VAN(C12;$A$5:$A$8);HOL.VAN(D12;$A$5:$D$5)) a te példád szerint vannak a hivatkozások! a dollár jelekre figyelj!
4. makrót törölheted így nem kell makróbarát fájlként elmentened.Futtatás előtt egy másolati példányon teszteld mert makró általi módosításokat nem lehet visszavonni!
Íme a makró:
Sub tolt()
Dim darab
Dim kezd
Dim ertek
darab = 3 - 1
'3-at módosítsd, hogy hány db szélesség érték van(a példádban 10,20,30 tehát 3)!
For i = 6 To 8
'Vastagság kezdő(6) és végső(8) értékének sorszámait módosítsd!
ertek = Cells(i, "A").Value 'A oszlop i sorait írja be megadott számszor az új táblába
kezd = ActiveSheet.Cells(Rows.Count, "C").End(xlUp).Row + 1
Range(Cells(kezd, "C"), Cells(kezd + darab, "C")).Value = ertek
Next i
'vastagság oszlop feltöltve
Range(Cells(5, "B"), Cells(5, "D")).Copy 'módosítsd a szélesség adatok kezdő és végső oszlopát
kezd = ActiveSheet.Cells(Rows.Count, "D").End(xlUp).Row + 1
Do While Cells(kezd, "C").Value <> ""
Cells(kezd, "D").Select
Selection.PasteSpecial Paste:=xlPasteValues, Transpose:=True
kezd = ActiveSheet.Cells(Rows.Count, "D").End(xlUp).Row + 1
Loop
Application.CutCopyMode = False
'feltöltve a szélesség oszlop
End Sub
Alkalmazása: jobb gomb a lapfülre kód megjelenítése oda bemásolod és F5-tel elindítod (vagy felül a zöld play ikonra katt)
A név és a szám értékeket pedig = jellel végigmásolod. -
Caipi
tag
válasz
Excelbarat #17016 üzenetére
Holnap megnézem, köszönöm szépen! :-)
Igen, sokszorosan összetettek a függvényeim, mivel esztétikusan is igyekszem megcsinálni, hogy hiba vagy érték hiánya esetén ne szerepeljen semmi a cellákban. Mindig az alap funkciótól építgetem fel őket, így kiderül, hogy nem műxik :-)
Szval, holnap ráfekszem és próbálgatom. -
Excelbarat
tag
Ahogy nézem fkeres fv keresné meg az értéket.
Próbáld összerakni úgy hogy összefűz fv-t vagy "&" ezt használod.
Próbálgasd csak magát azt a részt ahol a hivatkozás van, hogy normálisan visszaadja a cellában a hivatkozni kívánt fájl elérési útvonalát, tehát a kiszedett képleted ezt az eredményt adja: (D1 cellám ahogy kinéz /képen illusztrálva/ és ilyenkor nem kellenek az idézőjelek a D1 cella kiírásában)
Ha ilyen formában adja vissza, akkor beteheted az összetett függvényed részébe.
Ha összetett függvényt csinálsz javaslom, így járj el! Nehéz kapásból megalkotni többszörösen összetett függvényt, persze ha már gyakorlott vagy nem fog problémát okozni
Valami ilyesmi elindulásra gondolok:
="[" & Fkeres(A:A; munkafüzet) & "]" & ".xlsx" & Fkeres(B:B;lapnév) & "!" & Fkeres(C:C;cella)
Talán így már el tudsz indulni, ha jól értettem mit szeretnél -
Caipi
tag
válasz
Excelbarat #17004 üzenetére
Igen, ez működik, tudom.
A kérdés arról szólt, hogy hogyan tudnám ezt működtetni, ha a fájlnév helyén egy függvény szerepel (függvénnyel szedem át a fájl nevet egy cellából)
Mivel, ha beraktam a zárójelek mögé a függvény funkció megszűnt, sima szöveggé vált. -
sarvari
csendes tag
válasz
Excelbarat #17007 üzenetére
Ahogy a képen van azt veheted alapul, ha az alapján írsz nekem egy makrót azt már talán rátudom huzni arra amire nekem kell.
Az új táblát pedig oda szeretném alá csinálni, de ha új fülre kerül nekem az is jó, végül is az tök mindegy hova kerül az új tábla.Köszi Józsi!
-
válasz
Fire/SOUL/CD #17006 üzenetére
tudom s láttam
csak munkahelyen nem működött ez, üresbe se (valszeg valamit elszúrtam)
itthon üresbe működik, de módosítottba már nemez nektek működik? klikk
-
D.Orion
veterán
Köszönöm mindkettőtöknek a segítséget, sikerrel jártam.
-
Delila_1
veterán
válasz
D.Orion #17008 üzenetére
Jelöld ki a tábládat. Mivel a címsorban egyesített cellák vannak, anélkül (A9:AE...)
Kezdőlap | Szerkesztés | Rendezés és szűrés | Egyéni sorrend. "Az adatok fejlécet tartalmaznak" négyzet NE legyen bejelölve. A Rendezés legördülőben add meg, melyik oszlop szerint akarod rendezni.
Adhatsz ezen belül is újabb szempontot. -
D.Orion
veterán
Sziasztok egy meglévő táblázatot kéne módosítanom, de nem boldogulok vele mivel csak alap szinten értek az excel-hez.
Nos a már meglévő oszlopok egy részében lévő értékek követik egymást. Tehát ha az egyiket mondjuk növekvőbe rakom, kizárok ezt azt, akkor a mellette lévő oszlop adatai követik vízszintesen az adott sort. Azonban vannak olyan oszlopok amiknél nincs beállítva ez a funkció. Így az lenen a kérdésem, hogy ezt hol lehet beállítani?
Kép, hogy az is megértse, akkor nem olyan hülye hozzá, mint én.
-
Excelbarat
tag
válasz
sarvari #17000 üzenetére
Hi!
Írok rá egy makrót ha megadsz pár adatot:
Vastagság értékei mettől meddig helyezkednek el: pl. amit fényképeztél ott: A6-A8 ig
Szélesség értékei mettől meddig vannak és hányadik sor: pl:5. sor B-D
Név: Cellája(B1)
Szám: Cellája(B2)
és hogy hova kerüljön az új tábla. (Gondolom fejléceket már beírtad)
-
válasz
detroitrw #17005 üzenetére
"arra megkérhetnélek hogy egy ilyen kis szövegdobozos megjelenítős félét megtudnál osztani ami Nálad működik?"
Pont ezt tettem itt.
(Létrehozol egy új üres munkafüzetet, beszúrsz 2 darab ActiveX Command Button-t (egyik lesz a CommandButton1, másik a CommandButton2), rájuk klikkelsz duplán és az imént linkelt hsz szerint módosítod a makrót.Ennél egyszerűbb megoldás nincs és annak mennie kell.
-
válasz
Fire/SOUL/CD #16982 üzenetére
Szia!
nem igaz hogy nekem nem megy
hogy a vba rossz lenne nem hiszem mert egymástól független gépeken se működik(office 2010-2013)
arra megkérhetnélek hogy egy ilyen kis szövegdobozos megjelenítős félét megtudnál osztani ami Nálad működik?
Lehet én vagyok az atom láma
pedig a több száz soros cuccok meg gond nélkül lefutnak -
Delila_1
veterán
válasz
BuktaSzaki #17002 üzenetére
Ez a dolga, szívesen.
Új hozzászólás Aktív témák
- ROBUX ÁRON ALUL - VÁSÁROLJ ROBLOX ROBUXOT MÉG MA, ELKÉPESZTŐ KEDVEZMÉNNYEL (Bármilyen platformra)
- Jogtiszta Windows - Office & Vírusirtó licencek- Azonnal - Számlával - Garanciával - Nint.hu
- Battlefield 6 - Digitális játékkulcs
- Antivírus szoftverek, VPN
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Bomba ár! Toshiba Satellite Pro R50-C - i3-6G I 4GB I 128GB SSD I 15,6" I HDMI I Cam I W10 I Gari!
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- 136 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080
- LG 27GP850P-B - 27" NANO IPS - 2560x1440 - 180Hz 1ms - NVIDIA G-Sync - AMD FreeSync - HDR 400
- Samsung Galaxy S21 FE 128GB // Ajándék // Számla // Garancia //
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest