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:] [koxx:] Bloons TD5 - Tower Defense játék
- [Re:] [gban:] Ingyen kellene, de tegnapra
- [Re:] [D1Rect:] Nagy "hülyétkapokazapróktól" topik
- [Re:] [Luck Dragon:] Asszociációs játék. :)
- [Re:] Android másképp: Lineage OS és társai
- [Re:] [sziku69:] Fűzzük össze a szavakat :)
- [Re:] [Luck Dragon:] MárkaLánc
- [Re:] [bitpork:] Fogyasztásra ítélve
- [Re:] Elektromos rásegítésű kerékpárok
- [Re:] [GoodSpeed:] SAMSUNG Galaxy Buds FE (SM-R400NZAAEUE) a 9 éves SONY SBH20 utódja (nálam)
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
jerry311
nagyúr
Hello újra
Két oszlopot szeretnék egybeolvasztani, úgy hogy a harmadik oszlopban felváltva vannak egymás után az értékek az első kettőből. Az internet mutatott példát többféle egyesítésre, de ezt nem sikerült megtalálnom. Pont a lényeg hiányzik mindből, hogy sorban legyenek az cellaértékek egy innen egy onnan.
A1 --> C1
B1 --> C2
A2 --> C3
B2 --> C4
...
jerry311
nagyúr
Megpróbáltam egy sokadik újabb keresőszót, amivel meglett.
=INDEX($A$1:$B$4,INT((ROWS(C$1:C1)-1)/2)+1,MOD(ROWS(C$1:C1)-1,2)+1)
Fferi50
őstag
Szia!
C1-be =A1
C2 képlete: =INDEX($A$1:$B$4;HOL.VAN(C1;$A$1:$A$4;0);2)
C3 képlete: =INDEX($A$1:$B$4;HOL.VAN(C1;$A$1:$A$4;0)+1;1)
Ez utóbbi képlet másolható lefelé párban.
Üdv.
jerry311
nagyúr
Hmmm, más irányokból közelít a kettő ha jól látom.
sztanozs
veterán
A tiéd asszem praktikusabb (meg akkor is működik ha van ismétlődés)
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
Lajos.P
csendes tag
Szia Először is köszönöm hogy foglalkozol velem.
Viszont nekem ez így nem jó.
Én azt szeretném hogy a B2 oszlopban a betűt jelenítse meg.
Ha az A1 oszlopban lévő szám 103 akkor a B2 A betű legyen.
Ha az A1 oszlopban lévő szám 140 akkor a B2 oszlopban C betű legyen.
És így tovább.
Köszönöm segítséged remélem így érthetőbb.
Fferi50
őstag
Szia!
Már megbocsáss, de honnan tudhatjuk meg, hogy melyik kódhoz milyen betű tartozik???
Gondolom van egy kódtáblád. Azt be kell vinni egy segédterületre -- 1. oszlop kód, 2. oszlop a hozzátartozó betű - , ezután a táblában FKERES függvénnyel megtalálhatod a megfelelő betűt.
Pl. =FKERES(A2;Segédtábla;2;0)
Egy kis kötözködés még: Az Excelben nincs olyan, hogy A1 vagy B2 oszlop!!! csak A ill. B oszlop. A1 és B2 egy-egy cella, amelyet a sor és az oszlop határoz meg.
Üdv.
Lajos.P
csendes tag
Fferi50
őstag
Szia!
Ez már volt az előző hozzászólásodban. Csak épp azt nem mondtad meg, hogy az micsoda és mi célt szolgál?
Hiszen a B oszlop tele van betűkkel. Oda milyen képletet írjunk? Hol van az az oszlop, ahová az A oszlop alapján a betűket be kell írni?
Ha ez a kódtáblád, akkor az FKERES függvényt tanulmányozd légy szíves. Bár nem értem, miért vannak benne az ismétlődések.
Üdv.
[ Szerkesztve ]
Lajos.P
csendes tag
Szia
Nevesíteni szeretném a számokat.Ebben az esetben mikor bekerül egy szám az A oszlopba mondjuk a 103 akkor a B oszlopban meg egy A betű legyen,de ha mondjuk beírok egy másik számot az A oszlopba mondjuk 141 akkor a B oszlopban egy C betű jelenjen meg.
Lehetne esetleg úgy is mivel a code az általában ugyan azokból a számokból áll,hogy valahogy csoportosítani, az egyessel kezdődőek mellé írná az A betűt a kettessel kezdődőek mellé a B betűt és így tovább.
Egyenlőre csak ezek a kódok vannak 103,140,141,142,143,144,340,342,440,441,540,541,542,640,840,841,842
Ezek közül kerülne az A oszlopba valamelyik és a B oszlopba kellene mellé a tartozó betű.
Remélem így érthető.
Köszi
lappy
őstag
Akkor amit Fferi50 írt fkeres függvény jó neked
Van egy tábla amiben össze van rendelve a szám és a betű - ez az alap
Majd amikor A oszlopba bekerül egy szám ezt megnezi hogy ebben a táblában benne van és ha igen akkor a mellette lévő betűt beirja
Bámulatos hol tart már a tudomány!
Fferi50
őstag
Szia!
Itt egy minta:
A kódtábla az L-M oszlopban van - folytathatod.
A B2 cella képlete: =FKERES(A2;$L$1:$M$8;2;0)
Természetesen a második paramétert a kódtáblához kell igazítani, de átalakíthatod táblázattá is a kódtáblát és akkor annak a nevét kell megadnod és automatikusan bővíthető.
Üdv.
[ Szerkesztve ]
Lajos.P
csendes tag
Köszönöm szépen megpróbálom így.
Lajos.P
csendes tag
föccer
nagyúr
Az alap adatokat tartalmazó táblázatot (mint egy kódtáblát) külön munkalapra rakd át.
Ez után a B oszlopba írj egy ilyen függvényt
B2 cellán:
=HA(A2="";"";FKERES(A2;Alapadat!A:B;2;0))
Felétele hogy az Alapadat legyen a külön munkalap neve és A1-től szerepeljen a kód táblázat.
üdv, föccer
Másikra:
A színek táblázatában használd az INDEX függvényt, úgy, hogy a számnak veszed a százas helyiértékét, és ezt a számot használod az INDEX függvénybe.
[ Szerkesztve ]
Építésztechnikus. Építőmérnök.
Fferi50
őstag
Lajos.P
csendes tag
köszönöm
Lasersailing
senior tag
Sziasztok,
Vonalkódot szeretnék cimkenyomtatóra nyomtatni excel VBA-val. Most ott tartok, hogy egy sheeten egy excel cellát megformáztam és ki is tudom nyomtatni, de olyan nyomtatásra lenne szükségem, ami nem változtatja meg az aktív cellát. Jelenleg ezzel nyomtatok:Sheets("print").Cells(1, 1).Value = "*" & vonalkod & "*"
Sheets("print").Select
ActiveSheet.PrintOut copies:=1, collate:=True, ignoreprintareas:=False
Ebből a második sorral van gondom, úgy szeretnék nyomtatni, hogy az aktív sheet-et ne változtassa meg a program.
Ill. az is jó lehet, ha sheet használata nélkül nyomtatok, (de a betűtípusnak Barabara-nak kell lennie, amit a nyomtató ismer), ez nehezebbnek hangzik.
Gondolom lehetne azt, hogy az aktív sheetet lementem, átváltok a printre majd nyomtatás után vissza a lementettre, de az időrablónak hangzik...
Fferi50
őstag
Szia!
Nem kell a nyomtatni szándékozott munkalapot aktívvá tenni, direktben lehet rá hivatkozni.Sheets("print").Select
ActiveSheet.PrintOut copies:=1, collate:=True, ignoreprintareas:=False
helyettSheets("print").PrintOut copies:=1, collate:=True, ignoreprintareas:=False
Üdv.
[ Szerkesztve ]
Lasersailing
senior tag
Köszönöm szépen!
kezso21
csendes tag
lappy
őstag
=SZUMHA(A1:C8;A1;C1:C8)
A- terméknév
B alapanyag
C árak
[ Szerkesztve ]
Bámulatos hol tart már a tudomány!
Fferi50
őstag
Szia!
Legyen inkább SZUMHATÖBB, mivel több alkatrészből állnak össze a termékek.
Üdv.
kezso21
csendes tag
Köszönöm szépen, a legegyszerűbb megoldás nem jutott az eszembe
tonermagus
aktív tag
Szia!
Sajnos elakadtam a 2-es pontál.
Hogyan tudom úgy megoldani az átforgatást ahogy te csináltad?
Köszönöm előre is!
lappy
őstag
manuálisan
Bámulatos hol tart már a tudomány!
bteebi
veterán
Sziasztok!
Egy nem összefüggő tartományba (B2:B10,D2:D10,F2:F10) írok, vagyis olvasok be adatokat makróval. Ez teljesen jól működik, viszont felmerült az kérdésként, hogy az egymás utáni nagyon hasonló értékeket jelezhetné a makró (ha pl. valami véletlenül kétszer került volna rögzítésre). Az "eredmenyek" tartomány mindig üres cellájába írja a szerkesztett adatot ("ertek"). kód:
Set eredmenyek = ActiveSheet.Range("B2:B10,D2:D10,F2:F10")
For Each cella In eredmenyek
...
If cella = "" Then
cella = ertek
Application.Speech.Speak "OK", SpeakAsync:=True
Exit Sub
End If
Az ellenőrzést egyszerűen meg lehet csinálni az esetek többségében, oszlopon belül, csak a fentebbi cella értékét kell kivonni a frissen bemásoltból (offset -1):
If Abs(cella - cella.Offset(-1, 0)) < 1 Then
Application.Speech.Speak "Please check", SpeakAsync:=True
Else: Application.Speech.Speak "OK", SpeakAsync:=True
End If
Csak ugye amikor oszlopváltás van (pl. B-ről D-re), akkor ez nem működik. Lehetne valahogy egyszerűbben az "eredmenyek" tartományra hivatkozva megkeresni az előző írott cellát, tehát pl. a D2-t összehasonlítani a B10-zel?
Nem szép módszerrel meg tudnám oldani:ha cél cella sor = 2 és oszlop >=D, akkor előző cella sor = 10
és oszlop offset -2
De kell(ene) lennie ettől lennie szebb, univerzális(abb) megoldásnak. Tudnátok ebben segíteni? Előre is köszönöm!
Cancel all my meetings. Someone is wrong on the Internet.
Fferi50
őstag
Szia!
Új munkalapra túlnyomórészt képlettel át lehet fordítani, mutatom a képet:
Megjegyzések:
Az első sort (fejlécek) és a B2-B3 cellát kézzel kell beírni.
A B4 cella képlete: =B2: Ez a képlet húzható lefelé.
A többi második sori képletet látod a képen.
Ezek is húzhatók lefelé.
A képletek a korábbi munkalap elrendezésnek megfelelően hivatkoznak.
Remélem, sikerül megoldanod.
Üdv.
Fferi50
őstag
Szia!
Mi lenne, ha egy kijelölt cellába is beírnád az utolsó cella értékét. Ezután csak ezzel kell összehasonlítani az új bevitel értékét.
Üdv.
Sziasztok,
Segítségre lenne szükségem egy megoldandó problémával kapcsolatban. Adott egy Excel tábla, melyben két sheet van, legyen az egyik "Main data", míg a másik "Delivery method".
A "Main data" sheeten az A oszlop tartalmazza a gyár nevét, a B oszlop pedig a cikkszámot. A "Delivery method" sheeten A oszlopban a gyár neve, B oszlopban a, C oszlopban pedig a szállítás módja található.
A feladat az lenne, hogy a "Main data" sheeten az N oszlopba, soronként párosítsam össze az adatokat a "Delivery method sheetről. Tehát adott gyár/cikkszám kombinációhoz melyik szállítási mód tartozik. Ezt milyen függvénnyel tudom megcsinálni?
Első körben a VLOOKUP-hoz fordultam, de ez a dolog most kifogott rajtam, pedig biztos nem bonyolult annyira. Valaki tudna esetleg segíteni? Legalább rávezetni. Köszi!
⭐ Revolut meghívó ajándék 7500 Ft bónusszal | Raiffeisen Bank meghívó változó ajánlói bónusszal ⭐ Kérd privát üzenetben tőlem!
Szerintem sikerült, a CTRL+ALT+ENTER lehetett a gond, de azért bemásolnám ide: =INDEX('Delivery method'!$C$2:$C$233,
MATCH(1,
(A3='Delivery method'!$A$2:$A$233) * (B3='Delivery method'!$B$2:$B$233),0))
⭐ Revolut meghívó ajándék 7500 Ft bónusszal | Raiffeisen Bank meghívó változó ajánlói bónusszal ⭐ Kérd privát üzenetben tőlem!
daver88
aktív tag
Üdv!
Összesn 4 felhasználó használ Online Excelt megosztva (Onedrive megosztással). A cél az lenne, hogy 2 felhasználó lásson minden oszlopot és sort a munkafüzeten, a másik két felhasználó azonban csak mondjuk A és B oszlopot. Ez megoldható valahogy? Köszi!
bepken
veterán
sziasztok!
a segítségeteket kérem a következő amatőr problémában
a cél: A oszlopba beírt bármilyen érték mellé B oszlopba tegye oda az aktuális dátumot, ami ezt követően nem változhat, se függvény által, sem manuálisan (ez utóbbit lock-olással meg tudtam oldani)
működik ugyan, de sajnos ha pl C oszlopba írok valamit, akkor a dátum ugyanúgy frissül...
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Not Application.Range("A" & Target.Row).Value = "" Then
Application.Range("B" & Target.Row).Value = Format(Now, "yyyy.mm.dd")
End If
Application.EnableEvents = True
End Sub
köszi előre is a tippeket!
[ Szerkesztve ]
╔═══════ "Csak egy visszatérés létezik és az nem a királyé...hanem a JEDIÉ!" ═════╗ ╚════════════════ Xiaomi Mi A1 ═════ Huawei Nova 5T ═════════════╝
bteebi
veterán
Szia!
If Target.Column = 1 And Target.Value <> "" Then
Range("B" & Target.Row).Value = Format(Now, "yyyy.mm.dd")
End If
Cancel all my meetings. Someone is wrong on the Internet.
bteebi
veterán
Szia!
Jó ötlet, bár valahol kerülő megoldás. Nem valami jó jel, ha már te se tudsz rá azonnal egyszerűbb megoldást. Köszi a javaslatot!
Cancel all my meetings. Someone is wrong on the Internet.
bepken
veterán
tökéletes, köszönöm szépen!
abban még egy rövid magyarázattal tudnál segíteni kérlek, hogy az én kódom miért nem úgy viselkedett, ahogy szerettem volna? mármint ugyanúgy azt a feltételt adtam meg én is, hogy csak akkor illesszen be dátumot a B oszlopba, ha az A oszlop üres.
╔═══════ "Csak egy visszatérés létezik és az nem a királyé...hanem a JEDIÉ!" ═════╗ ╚════════════════ Xiaomi Mi A1 ═════ Huawei Nova 5T ═════════════╝
Lasersailing
senior tag
Szia,
Makróval: file megnyitásnál Application.username
-el lekérdezed az aktív felhasználó nevét, majd annak megfelelő oszlopokat megjelenítesz / elrejtesz. Értelemszerűen nem atombiztos, de gondolom nem a rosszindulatot, hanem a figyelmetlenséget kell kezelni.
(pontosabban én úgy csinálnám, hogy ha nagyobb jogú felhasználó esetén megnyitáskor megjelenítenék a C oszloptól mindent, bezáráskor pedig elrejtem ugyanezen oszlopokat. Így ha jön egy új felhasználó ő alapból nem fog látni mást csak A és B oszlopot)
lappy
őstag
Szerintem megosztott dokumentumban a Vba nem működik (sajnos)
Bámulatos hol tart már a tudomány!
Lasersailing
senior tag
Azt nem, tudtam, akkor sorry.
daver88:
Akkor amit szerintem lehet tenni, de ez nagyobb meló:
csinálsz egy adatbázis file-t, ill. egy másik file-t. A másik file-t nyitja meg minden felhasználó, az sem baj, ha csak read only-ban, mert más is használja.
Ez a másik file struktúrája ugyanúgy néz ki, mint az adatbázis maga:
1-es felhasználónak betöltöd a teljes file-t, míg
a 2-es felhasználónak csak az AB oszlopokat.
Végül mentésnél kiírod az adatokat az adatbázisba.
Csak az a gond, hogy gondoskodnod kell az alábbiakról:
- mi van akkor, ha ugyanazt az adatot két ember egyszerre írja felül? Kinek lesz igaza, vagy esetleg szólsz a második mentőnek, hogy ezt közben valaki felülírta (ez esetben kell egy "láthatatlan" másolatot betölteni, hogy lássad, hogy miről mire változtatott a felhasználó, és a "miről"-t összehasonlítani az adatbázissal
- sortörlés, sorbeszúrás kezelése
- és millió dolog ami még nem jutott eszembe...
Én csináltam ilyen jellegű programot, de ott a felhasználó csak 2-3 oszlopot írhat át (átírhat többet is, de azok elvesznek makrós-mentéskor)
- nincs sorbeszúrás - törlés gond (13-jegyű cikkszámok alapján azonosítja a sort)
- És rajtam kívül még 1 felhasználó használja (+ programok mentenek az adatbázisba), akit ki lehetett képezni a használatra. Ez utóbbi a legfontosabb! Ha nagyon alap tudással rendelkeznek a felhasználók, akkor nagyon sokat kell programozni, hogy minden lehetséges hibát lekezelj...
zeon.hu
nagyúr
Üdv!
Android Excel.
Korábban a szerkesztőléc felül jelent meg, de egy ideje alul van.
Hogyan tudnám ismét felül megjeleníteni?
#?*@&!
Magnat
veterán
Szia,
Set eredmenyek = ActiveSheet.Range("B2:B10,D2:D10,F2:F10")
Vizsgal = false
For Each cella In eredmenyek
If Vizsgal Then
If Abs(Cella - PreCell) < 1 Then
Application.Speech.Speak "Please check", SpeakAsync:=True
Else: Application.Speech.Speak "OK", SpeakAsync:=True
End If
Else
Vizsgal = true
End If
PreCell = Cella
Next
[ Szerkesztve ]
̿' ̿'\̵͇̿̿\з=(◕_◕)=ε/̵͇̿̿/'̿'̿ ̿
tonermagus
aktív tag
Nagyon szépen köszönöm az eddig segítségedet!
Hála neked meg tudtam oldani a feladatot, teljesen boldog vagyok.
Hihetetlen tudásod van, kijár a tisztelet!
A formázáson lehet még valahogy finomítani? Sajna túlságosan összefolyik, nehéz eldönteni melyik sáv melyik időponthoz tartozik. Van arra lehetőség hogy ezeket jobban széthúzzam, minden második vastagabb legyen, vagy valami?
(#48943) tonermagus válasza tonermagus (#48942) üzenetére
tonermagus
aktív tag
f(x)=exp(x)
őstag
Sziasztok!
Van egy A oszlopom, amelyben azonosítók vannak. Egy azonosító viszonylag hosszú. Ki szeretném szűrni egy külön oszlopba, amelyek tartalmaznak egy bizonyos karaktersort. Pl.: MN legyen benne: E10MN9 bekerül az új oszlopba, E10LM9 nem.
[ Szerkesztve ]
lappy
őstag
=ha(szám(szöveg.keres("MN";E10MN9));"Igen"; "Nem")
természetesen a megfelelő cellákat kell a szöveg.keres után, illetve lehet kiíratni magát a szöveget ha igen ha nem akkor lehet " " is helyette
[ Szerkesztve ]
Bámulatos hol tart már a tudomány!
bteebi
veterán
Szia!
Először is szívesen.
Elsőre én is kicsit nehezen értettem meg, pedig amúgy nem annyira bonyolult. Nem teljesen azt adtad meg, amit szerettél volna. Azt mondtad, hogy ha az A oszlop a cél cella (Target) sorában nem üres, akkor írja be a B-be a dátumot. Vagyis ha a cél cella oszlopa nem az A oszlop volt, viszont a sorában az A oszlop nem üres, akkor is frissült a dátum.
Ehelyett az kellett, hogy ha az A oszlopban van a cél cella, akkor (és csak akkor) írjon a B-be, ha az nem üres. Hasonló, de nem ugyanaz.
Használd nyugodtan az ="" (üres) vagy épp <>"" (nem üres) kifekezéseket, illetve ha több feltételed is van, akkor azokat "And"-del vagy "Or"-ral fűzd össze.
[ Szerkesztve ]
Cancel all my meetings. Someone is wrong on the Internet.
kormo1
csendes újonc
sziasztok,
létezik arra valamilyen makró, hogy cellában lévő összes karaktert kijelölje/másolja/vágólapra rakja. Makrórögzítéssel ezt nem sikerül megoldanom
Köszi a segítséget.
lappy
őstag
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:A9")) Is Nothing Then
Target.Copy
End If
End Sub
ha erre gondolsz
[ Szerkesztve ]
Bámulatos hol tart már a tudomány!
Fferi50
őstag
Szia!
Range("A1').Copy
Ez a vágólapra helyezi az A1 cella tartalmát.
Üdv.
kormo1
csendes újonc
igazából arra gondolok, hogy van egy cellában sok-sok karakter és azt a makró az első karaktertől az utolsóig kijelölje/válóglapra rakja és ezt majd én be szeretném illeszteni valahová, de ha az egész cellát jelölöm ki és beillesztem akkor nem ugyanaz lesz a végeredmény, szóval a nekem egy adott cellában lévő összes karakter kijelölése kell...