Hirdetés

2024. április 24., szerda

Gyorskeresés

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)

Téma összefoglaló

Téma összefoglaló

  • Utoljára frissítve: 2023-11-13 08:31:56

LOGOUT.hu

A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.

Összefoglaló kinyitása ▼

Hozzászólások

(#47001) Delila_1 válasza Fferi50 (#47000) üzenetére


Delila_1
Topikgazda

:C

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47002) RAiN91


RAiN91
őstag

Sziasztok,

adott A1 cella, amiben 5-6 különböző szó van, szóközzel elválasztva. És mindig változnak a szavak, a sorrend is.

Ebből szeretnék kiragadni bizonyos szavakat akkor, ha megegyezik az általam előre definiált szavakkal.

Konkrét példa:

A1 cella jelenleg: szó1 szó7 szó3 szó4 szó5

B oszlopban egymás alatt, a szavak, amiket keresek: szó5, szó8, szó9

C1 cellában szeretném látni szó5, szó8 vagy szó9-et akkor, ha A1-ben valahol szerepelnek.

A sorrend A1-ben nem fix, ezért a "BAL" "KÖZÉP" stb. függvény sajnos nem jó. Van erre valami kereső függvény esetleg, vagy csak VBA-val tudom megoldani?

Köszömöm előre is!

(#47003) lappy válasza RAiN91 (#47002) üzenetére


lappy
őstag

Szöveg.keres függvényt ajánlom.
Valahogy így nézne ki: ha(vagy(szöveg.keres();szöveg.keres()...;összefűz(b1:b3);0)

Bámulatos hol tart már a tudomány!

(#47004) Nixon18


Nixon18
senior tag

Sziasztok!

Hogyan tudok egy táblázategyik oszlopából kigyűjteni egy másik munkalapra neveket az alapján, hogy a névhez tartozó átlag 4 vagy annál nagyobb?

Köszi!

(#47005) lappy válasza Nixon18 (#47004) üzenetére


lappy
őstag

Mondjuk egy sima szűréssel is megoldhato

Bámulatos hol tart már a tudomány!

(#47006) Delila_1 válasza Nixon18 (#47004) üzenetére


Delila_1
Topikgazda

[link]
A szűrőtartomány >=4 legyen.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47007) zsolti_20 válasza Fferi50 (#47000) üzenetére


zsolti_20
senior tag

Köszönöm szépen a jobbnál jobb kódokat. :R

Linkelek ide egy képet, az A oszlopban vannak az értékek, B oszlop Delila_1 gyártott kód eredménye C oszlop Fferi50 kódjának eredménye.

Ahogy látom a Fferi50 a te kódodnál végülis mindegy mennyi elválasztás történik, az utolsó tömb értéke elé lesz beszúrva a "." aztán össze fűzzük a maradékot. Így a forrás lehet bármekkora, működni fog.

(#47008) zsolti_20 válasza zsolti_20 (#47007) üzenetére


zsolti_20
senior tag

A kép lemaradt véletlenül:
[link]

(#47009) Nixon18 válasza Delila_1 (#47006) üzenetére


Nixon18
senior tag

Köszönöm mindkettőtöknek!
Ez valamiért nem jutott az eszembe egyáltalán...

(#47010) MostaPista válasza Delila_1 (#33224) üzenetére


MostaPista
tag

Ez a link mar nem el, atiranyit valami MS regisztracios weboldalra.

(#47011) Delila_1 válasza MostaPista (#47010) üzenetére


Delila_1
Topikgazda

Sajnos...

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47012) Chrisluke


Chrisluke
csendes tag

Sziasztok, Kaptam több oldalas költségvetést egyetlen munkalapon. A nyomtatás során a táblázat össze-vissza került volna a lapokra egyes tételekt el is választott volna fele erre a lapra fele a másik lapra került volna ezt megoldottam a töréspontokkal. Az utolsó lapon azonban egyetlen tétel van ezt a tételt a lap közepére akarja nyomtatni, olyan mintha lennének üres sorok elötte pedig nincsenek. Hogyan tudnám ezt a tételt a lap tetéjére igaztani?

(#47013) zsolti_20


zsolti_20
senior tag

Sziasztok!

Azt lehet esetleg tudni, hogy kijelentkezett windows alatt miert nem lehet hasznalni copy pastet excel VBA kodban?

Csupan egy szimpla cella masolasrol lenne szo egyik wokrbookbol a masikba. A kod le is fut szepen miko be vagyok jelentkezve, de ha nyomok egy windows + L-t akkor a kod mindig megakad a paste-nal.

Lehetseges, hogy mikor kijelentkezek, akkor pauseolja a windowst?
Bar a fura dolgo az egeszben, hogy a masik filet megnyitja, de a cella tartalom nem kerul at csak egy hibat ir.

"Run-time error '1004':

PasteSpecial method of Worksheet class failed.

ActiveSheet.PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:= _
False, NoHTMLFormatting:=True

Elkepzelheto hogy ez valami vedelem reszben? Amint belepek a windowsba ujra es emgnezem, semmi nincs a vagolapon. Szoval ugy tunik a masolas sem tortenik meg.

(#47014) MostaPista


MostaPista
tag

Sajnos 46989-es kerdesem azota is valaszra var. :O

(#47015) PistiSan


PistiSan
addikt

Sziasztok!

Power Query-szerkesztő-ben össze hoztam magamnak strukturáltan az adatokat.
NÉV | SZÁM1 | SZÁM2
Kacsa | 12,5 | 21
Kutya | 16 | 45

Annyit szeretnék, hogy a a "Kacsa"-val kezdődő sorban a "SZÁM1" és "SZÁM2"-ból kivonjak mondjuk 5-öt.
Olyat találtam, hogy a teljes oszlopból vonjon ki egy számot, de nekem az azért nem jó, mert ez egy egyedi eset, 1 adott név melletti értékből kell kivonni 2 különböző számot.

(#47016) pigsty


pigsty
aktív tag

Üdv,
olyankor mi van, ha hiányzik a "SZÖVEGÖSSZEFŰZÉS" képlet? Excel 2016
Múlt héten még megvolt.
két oszlop összeillesztéséhez kellen, óra és perc oszlopból egy oszlopba illessze össze HH:MM formába.

--
A Szöveg-> Összefűznél hiányzik az elválasztó, és üreset mellőz lehetőség.

[ Szerkesztve ]

Jobb ma egy veréb, mint holnap egy véreb.

(#47017) pigsty válasza pigsty (#47016) üzenetére


pigsty
aktív tag

+ ezt hogy lehet megoldani ha a dátumformátum "20210614"-ban van, egy makróval/függvénnyel berakja a tagolást, így "2021.06.14."

Jobb ma egy veréb, mint holnap egy véreb.

(#47018) Fferi50 válasza pigsty (#47017) üzenetére


Fferi50
őstag

Szia!
Az Összefűzés függvényt "helyettesíti" az & . A & B =AB
Ha valóban dátum van az adott cellában, akkor a cellaformátumot kell megváltoztatnod a kívánt formára. Szerintem a dátumformátumok között ott is van ez a fajta. (Cella - jobb egérgomb - cellaformátum - dátum és ott kiválasztod. Ha nincs ilyen, akkor a cellaformátum után Egyéni és oda beírod a kívánt formátumot.)
Ha szöveg van - dátumnak kinézően, akkor a szövegdaraboló függvényeket tudod használni a forma eléréséhez:
=BAL(A1;4) & "." & KÖZÉP(A1;5;2) & "." & JOBB(A1;2)
Üdv.

(#47019) pigsty válasza Fferi50 (#47018) üzenetére


pigsty
aktív tag

Köszönöm szépen!

Jobb ma egy veréb, mint holnap egy véreb.

(#47020) Mutt válasza PistiSan (#47015) üzenetére


Mutt
aktív tag

Szia,

Új oszlopot kell hozzáadnod:

Egy kicsit univerzálisabb megoldás, hogy egy másik táblában felsorolod hogy melyik név esetén mennyivel kell módosítani az eredményt és utána a két táblát összekapcsolod majd megint új oszlop hozzáadásával számítod a végeredményt.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#47021) PistiSan válasza Mutt (#47020) üzenetére


PistiSan
addikt

Mindkét verzió eszembe jutott, az általad felsoroltakból.
Felsoroltam egy külön fájlban amit le kellett vonni, de függvényt nem tudtam írni hozzá, ami amúgy így hogy már leírtad, marha egyszerűen tűnik utólag. :)
Mivel összesen 1 névről van szó, ezért az első verziót használtam fel az általad írt megoldások közül!
Nagyon szépen köszönöm,úgy működik, ahogy elvártam tőle.

Annyira ritkán kell ilyen egyéni függvény, hogy még soha nem néztem utána rendesen, esetleg ha tudsz hozzá ajánlani egy faék egyszerű dolgokat leíró leírást amit ajánlanál, szívesen elolvasnám.

Köszi!

(#47022) Telda


Telda
addikt

Sziasztok!
Hogyan tudnám a munkalapok tartalmát egymás alá másolni egy munkalapra?
A program ami kihozza az adatbázist, de csak 65536 sort tud kezelni, ezért mindig új munkalapot csinál.
Maga az adatbázis viszont 940ezer soros, így 15 munkalapot hoz létre.
Ezeket szeretném egy munkalapra egymás alá bemásolni.

(#47023) lappy válasza Telda (#47022) üzenetére


lappy
őstag

Mivel az excel csak ennyi sort kezel így sajnos sehogy

Bámulatos hol tart már a tudomány!

(#47024) Mutt válasza Telda (#47022) üzenetére


Mutt
aktív tag

Szia,

Ha Excel 2016-osod vagy frissebbed van, akkor a Power Query-vel lehet automatizálni.

A másik megoldás, hogy mivel az első 14 lapon mindig 65 ezer sor van fixen, akár képlettel is megoldható.
Lenne egy input.xls és egy template.xlsx nevű fájlom. Az input amit a program kiad. A template-ben pedig egy sima hivatkozás lenne egy lapon az input első lapjára, majd a 65 ezredik sor után a második lapra és így tovább. Az utolsó lap esetén pedig mivel nem lesz minden sor vmi ilyen hivatkozás lenne:
=HA([input.xls]Sheet15!A1<>"";[input.xls]Sheet15!A1;"")

Ezek után csak az input fájlt kell cserélgetned és a template-ben kapott eredményt elmenteni értékek beillesztése után.

Mindkét megoldás hátránya, hogy formátumokat nem másol.
Ha kell formátum, akkor VBA.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#47025) Mutt válasza PistiSan (#47021) üzenetére


Mutt
aktív tag

Szia,

Alapokhoz nekem sokat segített az "M is for Data Monkey" nevű könyv. Régi, de jól elmondja a dolgokat.

Microsoft hivatalos doksija segít a függvényekben eligazodni.

Youtube-on pedig Mike Girvin csatornája kiváló forrás, illetve Mynda csatornája.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#47026) Telda válasza Mutt (#47024) üzenetére


Telda
addikt

Köszi!
Közben találtam rá egy makrót.

Sub munkafuzetmasolas()

Sheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = "munkalaplista"
Range("A1").Select


For i = 1 To Sheets.Count - 1

Sheets(i).Select

Range(Cells(1, 1), Cells.SpecialCells(xlCellTypeLastCell)).Select
Selection.Copy
Sheets("munkalaplista").Select
Range("A1").Select
Selection.SpecialCells(xlCellTypeLastCell).Select
lastRow = ActiveCell.Row
Cells(ActiveCell.Row, 1).Select
ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Next i

End Sub

(#47027) lappy


lappy
őstag

Sziasztok!
hol lehet beállítani hogy egy munkafüzet mérete ne kisebb méretű legyen (a képernyő 1/4-ben létszik csak?

Bámulatos hol tart már a tudomány!

(#47028) user112


user112
senior tag

Sziasztok!
Fkereshez kapcsolódóan kérdeznék.
Van valami gyors módszer arra, hogy megtudjam lenne e esetleg a másik táblában több találat

(#47029) Delila_1 válasza user112 (#47028) üzenetére


Delila_1
Topikgazda

A DARABTELI függvényt javaslom.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47030) karlkani


karlkani
aktív tag

Sziasztok!

Van egy listám, .m3u8 kiterjesztéssel, ez az A1 cellában van. Szétszedtem, módosítva több csoportba, egy elég ronda képlettel, meg hozzáfűztem, cseréltem, amit kell. Lett 4x30 sornyi adatom, melyeket külön-külön fájlokba (4 darab, .m3u8 kiterjesztéssel) szeretném menteni. A név nem számít, átírom utólag, lehet 1, 2, 3, 4. Az lenne a legjobb, ha egy gombra kattintva létrehozná a listákat. A makrónak úgy kellene kinézni, hogy kiválasztja az A1 cellát, beilleszti a vágólap tartalmát, majd külön-külön fájlokba lementi az A4:A33, A36:A65, A68:A97 és A100:A129 tartományok tartalmát.

Előre is nagyon szépen köszönöm! :)

(#47031) EroSennin79


EroSennin79
újonc

Sziasztok.
Segitséget szeretnék kérni.
Van egy összefoglaló statiszikai táblázat amit készitettem a munkahelyemen.
Éves összefoglást készit megrendelőkre lebontva, elég sok megrendelőről van szó ezért sok az adat. A kérdésem az lenne hogy hogyan tudnám az alábbi formulában gyorsan kicserélni a tól-ig dátumot. Eddig megoldottam manuálisan de most kissé sürget az idő.
A formula a Januári cellában ez és ezt minden hónapban meg kell tenni (cellák egymás alatt vannak):
=COUNTIFS(Datas!I:I,"ONT01", Datas!K:K,"On time delivery",Datas!G:G,">31/12/2019",Datas!G:G,"<01/02/2020")

Az aktuális érték 31/12/2020 és 01/02/2021 lenne, viszont ez minden hónap cellájában módositani kell megrendelőnként 3x a megfelelő dátumra emelkedő sorrendben. Manuálisan sajnos nagyon sok idő.
Próbáltam már a google-ban keresni megoldást de nem nagyon találtam jót.
Csatoltam egy képet a táblázat egy részletéről.

Előre is köszönöm :)

[ Szerkesztve ]

(#47032) Fferi50 válasza EroSennin79 (#47031) üzenetére


Fferi50
őstag

Szia!
A Keres - cserél funkciót (Ctrl + F ) használhatod:
Először keresed a 2020 -at és cseréled 2021-re a képletekben, az összes cseréje.
Ezután keresed a 2019 -et és cseréled 2020-ra szintén a képletekben, az összes cseréje.
A december havi tételek képletében megnézed a < utáni dátumot és ha szükséges, akkor az egész dátumot cseréled a jóra.
Csak magyar képet tudok csatolni:

Üdv.

[ Szerkesztve ]

(#47033) EroSennin79 válasza Fferi50 (#47032) üzenetére


EroSennin79
újonc

Hihetetlen vagy, nagyon szépen köszönöm. Hatalmas segitség volt. El sem hiszem már készen is vagyok :) Póbálom magamat képezni de egyedül kissé nehézkes.
Még egy kérdésem lenne. Ha a formula eredménye 0 akkor az excel mindig #DIV/0 hibát ir. Ezt IF funkcióval szoktam nullázni. Van valami más egyszerübb módja hogy ne legyen a nullától rosszul ? Például ennél a formulánál?
=Statistic!W41/Statistic!Z41

(#47034) Delila_1 válasza EroSennin79 (#47033) üzenetére


Delila_1
Topikgazda

=IFERROR(=Statistic!W41/Statistic!Z41,"")
A magyar HAHIBA függvény angol megfelelője.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47035) EroSennin79 válasza Delila_1 (#47034) üzenetére


EroSennin79
újonc

Szuper, köszönöm szépen mindenkinek a sok segitséget. Fantasztikusak vagytok :)

(#47036) 3DFan


3DFan
aktív tag

Sziasztok!
Az R1 cella értékét szeretném kijelölni feltételes formázással a képen látható tartományban.
Az oszlopot miként kerestessem, hogy más értékkel is helyesen működjön? Köszönettel.
[kép]

(#47037) Fferi50 válasza 3DFan (#47036) üzenetére


Fferi50
őstag

Szia!
Ha az R1 cella érték hollétét szeretnéd a táblázatban feltételes formázással megmutatni, akkor elegendő az R1 cellával hasonlítani az adott cella értékét.
Állj rá az A1 cellára (vagy jelöld ki a teljes A1:O6 tartományt).
Feltételes formázás - kijelölés képlettel.
A képlet: =A1=$R$1
Az érvényesség területe pedig A1:O6
Ezzel rögzíted az R1 cellát és a tartományon belül minden cella értékét ehhez hasonlítja.
Üdv.

[ Szerkesztve ]

(#47038) 3DFan válasza Fferi50 (#47037) üzenetére


3DFan
aktív tag

Köszönöm.

(#47039) szricsi_0917


szricsi_0917
tag

Sziasztok

Egy kis vba segítséget szeretnék kérni:


Erről a kis táblázatról lenne szó ami pár ezer soros lesz. A "D" oszlop lesz a feltétel oszlopa. Ha a D oszlopban pl 01H02401 található akkor az "A" oszlopban található sorszámokat tárolja el, mert egy másik szumhatöbb függvényhez majd szükségem lesz rá. Milyen kóddal oldható meg, hogy ezeket az értékeket tárolja, majd egyessével lépkedve fel tudjam tudjam használni egy for ciklusban?

Köszönöm előre is a segítséget!

(#47040) andreas49


andreas49
senior tag

A mellékelt linken szereplő Excel táblázatban foglaltakhoz keresek megoldást.
Segítséget előre is köszönöm.
[link]

HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro

(#47041) Delila_1 válasza andreas49 (#47040) üzenetére


Delila_1
Topikgazda

Az F2 cella képlete legyen
=HAHIBA(FKERES("*"&KÖZÉP(D2;3;20);A:A;1;0);"Nem szerepel az A oszlopban")
Azokat a neveket nem találja meg, amikben idegen karakterek szerepelnek, ezért tettem be a HAHIBA függvényt.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47042) andreas49 válasza Delila_1 (#47041) üzenetére


andreas49
senior tag

Hálás köszönetem, úgy működik, ahogy elképzeltem.

HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro

(#47043) Delila_1 válasza andreas49 (#47042) üzenetére


Delila_1
Topikgazda

Szívesen. :)

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47044) andreas49 válasza Delila_1 (#47043) üzenetére


andreas49
senior tag

Esetleg megoldható, hogy az idegen karakterest is becserélje?

HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro

(#47045) Delila_1 válasza szricsi_0917 (#47039) üzenetére


Delila_1
Topikgazda

A másik fórumon, ahol feldobtad ugyanezt a kérdést, megadtam a választ: speciális szűrés.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47046) Delila_1 válasza andreas49 (#47044) üzenetére


Delila_1
Topikgazda

Azt nem tudom, de a képletet kicsit módosítva a 3 tagból álló nevek is megjelennek a kigyűjtésben.

=HAHIBA(FKERES("*"&KÖZÉP(D2;3;HOSSZ(D2)-3)&"*";A:A;1;0);"")

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#47047) szricsi_0917 válasza Delila_1 (#47045) üzenetére


szricsi_0917
tag

Szia

Köszi. Mindenhol ott vagy! :)

(#47048) andreas49 válasza Delila_1 (#47046) üzenetére


andreas49
senior tag

+1* köszi, ez a 3 tagból álló további nagy segítség volt.

HONOR Magic5 Pro - Huawei P30 Pro 8/128 GB - Xiaomi MI Note 10 Pro - Huawei Mate 10 Pro

(#47049) zoombiee


zoombiee
csendes tag

Sziasztok,
Szeretnék segítséget kérni az alábbi kódhoz.

Működése: Ha az "A" oszlopban van érték, akkor létrehoz gombot az "S" oszlopban.
Az automatikusan létrehozott gombban kellene szerepelnie kódnak.
A probléma az, hogy ennél a sornál:
.InsertLines N + 3, "ThisWorkbook.Sheets("Munka1").Range("K5") = 5"
Hibát generál, ha ezt a sort kiveszem, akkor minden rendben lefut, viszont így sajnos a gomb lényege elvész, mert nincs hivatkozás sor benne.

Sub gomb()


Dim ws As Worksheet
Dim celLeft As Integer
Dim celTop As Integer
Dim celWidth As Integer
Dim celHeight As Integer

Dim LastRow As Long
LastRow = Range("A" & Rows.Count).End(xlUp).Row

Set ws = Sheets("Munka1")

For i = 2 To LastRow

celLeft = ws.Range("S6").Left
celTop = ws.Range("S" & i).Top
celWidth = ws.Range("S6:S6").Width
celHeight = ws.Range("S6:S6").Height

Set objBtn = ws.OLEObjects.Add(classType:="Forms.CommandButton.1", Link:=False, _
displayasicon:=False, Left:=celLeft, Top:=celTop, Width:=celWidth, Height:=celHeight)
objBtn.Name = "S" & i
objBtn.Object.Caption = "--->"

With ThisWorkbook.VBProject.VBComponents(ActiveSheet.CodeName).CodeModule
N = .CountOfLines
.InsertLines N + 1, "Private Sub " & "S" & i & "_Click()"
.InsertLines N + 2, vbNewLine
.InsertLines N + 3, "ThisWorkbook.Sheets("Munka1").Range("K5") = 5"
.InsertLines N + 4, vbNewLine
.InsertLines N + 5, "End Sub"

End With

Next i

End Sub

Előre is köszönöm a segítséget!
Üdv: Dani

(#47050) Fferi50 válasza zoombiee (#47049) üzenetére


Fferi50
őstag

Szia!
Az a probléma, hogy a szövegben levő idézőjelek megszakítják a szöveget, az utána következő részt (és az előtte levőt is persze) nem tudja értelmezni.
Ha idézőjeleket szeretnél a szövegben elhelyezni, akkor meg kell duplázni azokat:
"ThisWorkbook.Sheets(""Munka1"").Range(""K5"") = 5"
minden olyan helyen, ahol idézőjelet akarsz.
Üdv.

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)
Copyright © 2000-2024 PROHARDVER Informatikai Kft.