Hirdetés

2024. április 27., szombat

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

(#47551) kisg válasza lappy (#47549) üzenetére


kisg
tag

Összetettebb, de így is megy :C

Köszi!

Üdv, kisg

(#47552) olloczky


olloczky
senior tag

Sziasztok!

A kérdésem nem függvényekkel kapcsolatos:

Melóban O365öt használunk. Van sharepointon egy excel, amit én a natív windowsos programban szeretek megnyitni. De mostanában feltűnt, hogy ha szűrök valamire és ezzel beállítok egy viewt (See just mine lehetőség), akkor a view-ból való kilépés után nem ugrik vissza az eredeti szűrési állapotra az enyém marad az aktív. Webes felületen pedig jól működik.

Találkoztatok már ilyennel? Azt sem tudom, hogy keressek erre rá googleben.. :F

köszi!

Úgy még sosem volt, hogy valahogy ne lett volna!

(#47553) t420s


t420s
aktív tag

Excel munkafüzetben a munkafüzet lapjait hogyan számolhatom össze az excellel ha nagyon sok lap van?

Ott a munkafüzet benne kb 50 lap. Nevük alma körte szilva szőlő stb stb
Én azt akarom hogy számolja össze hogy körte és szőlő közt hány lap van (db). Nem az összes lap számára vagyok kíváncsi. Vagyis nem elejétől a végéig hanem csak tól ig lapok száma érdekel.

(#47554) Delila_1 válasza t420s (#47553) üzenetére


Delila_1
Topikgazda

Lehet, hogy van egyszerűbb módja is, én ezt írtam:
Sub lapok()
    Dim kezd As Integer, lap As Integer
    
    For lap = 1 To Sheets.Count
        If Sheets(lap).Name = "alma" Then kezd = lap
        If Sheets(lap).Name = "körte" Then Exit For
    Next
    MsgBox "Az alma és a körte nevű lapok között " & lap - kezd - 1 & " másik lap van.", vbInformation, "Tájékoztatás"
End Sub

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

(#47555) A214 válasza lappy (#47545) üzenetére


A214
aktív tag

Köszönöm.

(#47556) Traxx


Traxx
őstag

Sziasztok!

A segítségeteket szeretném kérni egy problémában. Van 3 műszakom, jó pár emberrel. Olyat szeretnék elérni, hogy ha pl. A1-be beírom, vagy még inkább listából kiválasztom az adott műszakszámot, akkor a B1-B... celláig az adott műszakban dolgozó embereket listázza ki. Természetesen nem ugyanakkorák a létszámok :)

Megoldható ez makró nélkül?

Köszönöm szépen! :R

"Amúgy a lekvár leszedésre jobb módszer is van: le kell nyalni... elképzelem, ahogy egy nagy PH!-s procitesztben fLeSsék nyalogatják a procikat" by Male (Hűtőpaszta vs. lekvár 2. rész)

(#47557) lappy válasza Traxx (#47556) üzenetére


lappy
őstag

meg lehet oldani ha függvénnyel pl.
amikor kiválasztod hogy "A" műszak akkor veszi a listából az első, második, sokadik elemet,
ha "B" akkor így tovább

egy másik megoldás

[ Szerkesztve ]

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

(#47558) Traxx válasza lappy (#47557) üzenetére


Traxx
őstag

Köszönöm, elsőre az első megoldás szimpatikusabb lenne :R Viszont ez a HA függvényes megoldás nincs előttem. meg tudnád adni, hogyan nézne ki a "veszi a listából az első, második, sokadik elemet" dolog? :R

"Amúgy a lekvár leszedésre jobb módszer is van: le kell nyalni... elképzelem, ahogy egy nagy PH!-s procitesztben fLeSsék nyalogatják a procikat" by Male (Hűtőpaszta vs. lekvár 2. rész)

(#47559) Delila_1 válasza lappy (#47557) üzenetére


Delila_1
Topikgazda

Kimutatá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.

(#47560) EasyLife


EasyLife
aktív tag

Sziasztok!
Office 365-használok és az excellel olyan problémám van, hogy ha meg van nyitva egy excel fájl, hiába kattintok egy másik fájlra duplán addig nem nyitja meg amíg az elsőt be nem zárom, tehát nem tudok egyszerre két excel fájlt megnyitni. Random csinálja, de elég gyakran. :F

(#47561) föccer válasza EasyLife (#47560) üzenetére


föccer
nagyúr

Ilyet én akkor tapasztaltam, hogy ha egy cella szerkesztésre meg van nyitva, vagy valamilyen dialóg várja hogy adatot adj neki.

üdv, föccer

Építésztechnikus. Építőmérnök.

(#47562) BEndre34


BEndre34
tag

Sziasztok!

Kb 3 napja bújom a netet, de csak részmegoldásokat találtam, de azokat összefűzni nem tudom és nem is teljes a megoldás halmaz. :(

A feladat az lenne, hogy egy Excel (ebben indul a makró) 6 munkalapját átnevezze és a munkalapokra a dátum szerint oda tartozó Excel első munkafüzetlapját bemásolja. Mind a 7 Excel 1 adott könyvtárban van (6 jelenléti és 1 összesítő, amibe a makró fut(na)).

Ez lenne a könyvár (csak próba, mert a valóságban nem ebben a könyvtárban lesznek, hanem a hetente létrehozott (2021/1 hét, 2021/2 hét.... könyvárakba és azokba kerülne 1-1 összesítő (itt Munkafüzet1) Excel)

A cél pedig az lenne, hogy a Munkafüzet1 munkalapjait a többi, ugyanabban a könyvtárban található file nevének dátumára átnevezze és a hozzájuk tartozó Excel első munkalapját bemásolja (sima ctrl+c és ctrl+v, mert nem kell formázás megőrzése vagy más tulajdonság)

Utána van még vele pár képlet feladat, de azok már megvannak. Illetve a végén a képletek helyett majd csak érték kell, de azt már megoldottam makróval, hogy ne egyesével kelljen a munkafüzetlapokkal szenvedni.

Megköszönném, ha valaki tudna ebben segíteni. :R :R :R

A mintában lévő "Próba" mappa file neveit ki tudom olvasni és beírni a Munkafüzet1-re, de a munkalapok átnevezése és főleg a másolás már nem megy, pedig azt hittem a file nevek birtokában már menni fog. :W

(#47563) Pakliman válasza BEndre34 (#47562) üzenetére


Pakliman
tag

Szia!

Egy egyszerűsített lehetőség (nincs hibakezelés):
Sub Makró1()
Dim MFName As String

MFName = Dir("x:\utvonal\Jelenléti ##.##.xlsx")
Do While MFName <> ""
Workbooks.Open Filename:="x:\utvonal\" & MFName
ActiveWorkbook.Sheets(1).Copy Before:=Workbooks("Összesítő").Sheets(1)
ActiveSheet.Name = Mid(ActiveWorkbook.Name, 11, 6)
Workbooks(MFName).Close SaveChanges:=False

MFName = Dir 'NINCS PARAMÉTER!!
Loop
End Sub

(#47564) zsolti_20


zsolti_20
senior tag

Sziasztok!

Lehetséges azt megadni excel, hogy melyik kép legyen felül?

Van két képem excelben. Kép1 és Kép2. Először Kép1-et helyeztem a munkalapra és utána Kép2-öt. Ekkor az történik, hogy Kép2 fogja takarni Kép1-et, szóval mintha egy feljebb lévő "layeren" helyezkedne el.

Kép1-et módosítani szeretnék, de ehhez újra be kell illesztenem. Sajnos ha beillesztem Kép1 lesz felül és Kép2 alul. Lehetséges ezt beállítani valahol hogy melyik kép melyiket fedje?

(#47565) lenkei83


lenkei83
tag

Sziasztok!
Mi lehet a kód mögötte? [link]

Public Function rgb_colorincell(Red As Integer, Green As Integer, Blue As Integer) As Long
    
    ActiveCell.Interior.Color = rgb(Red, Green, Blue)
    
    End Function

Itt csak annyi a baj, hogy ha lehúzom a képletet több cellára, akkor viszont nem működik. Minden egyes cellába kézzel kell betolni a képletet.

Köszi
P.

(#47566) Fferi50 válasza zsolti_20 (#47564) üzenetére


Fferi50
őstag

Szia!
Kiválasztod a képet, amit hátrább szeretnél sorolni.
Jobb egérgomb - hátraküldés.
Kiválasztod azt a képet, amit felül szeretnél látni - ha kilátszik egy része... jobb egérgomb, előrehozás.
Üdv.

(#47567) zsolti_20 válasza Fferi50 (#47566) üzenetére


zsolti_20
senior tag

Köszönöm szépen! :R Sokkal egyszerűbb így mint minden alkalommal újra és újra bepakolni a képeket. :C

(#47568) milu


milu
aktív tag

Szeretnék olyan grafikon(oka)t készíteni, amiben legalább 4-5 oszlopot kell megjelenítenem egyszerre.
A kérdésem az, hogy az elkülönülés és a jól láthatóság miatt milyen színeket javasoltok az oszlopok színeinek? (van erre "szakirodalmi" javaslat?)
(ha tudtok, színkódokat írjatok a színhelyesség miatt)

[ Szerkesztve ]

(#47569) Pakliman válasza lenkei83 (#47565) üzenetére


Pakliman
tag

Szia!

Próbáld így:
Public Function rgb_colorincell(Red As Integer, Green As Integer, Blue As Integer) As Long

Application.Volatile

ActiveCell.Interior.Color = RGB(Red, Green, Blue)

End Function

Nézd meg ezt

(#47570) lenkei83 válasza Pakliman (#47569) üzenetére


lenkei83
tag

Szia!

Ezt már próbáltam, de sajnos nem ez lesz a megoldás.

(#47571) Fferi50 válasza lenkei83 (#47570) üzenetére


Fferi50
őstag

Szia!
Ez a függvény nem VBA-ban van megírva szerintem, hanem Visual Studioban. Ha elmész a szerző(k) oldalára https://www.instagram.com/knacksack_official/,fogsz találni rá példát, hogyan csinálta.
A VBA UDF értéket ad vissza és nem tudja módosítani a cellaformázást.
Üdv.

[ Szerkesztve ]

(#47572) lenkei83 válasza Fferi50 (#47571) üzenetére


lenkei83
tag

Szia Feri! :)

A youtube csatornájukon kerestem volna, de az nem működik. Köszi a tippet, az instán nem néztem, de ott volt a megoldás. Excel\VBA-ban van megírva.

Gyorsan felvertem VBA-ba, működik, a lenti linkről le lehet tölteni. Próbálom értelmezni... :F
[https://1drv.ms/x/s!Ans3TmRiC9RGhaMx1z_INz4zg7X91Q?e=lSc26r]

Üdv.:
P.

(#47573) Ribobon


Ribobon
tag

A törölni kívánt cellák kijelölésénél felugrik a képen látható ablak.
Office 2021-nél a "Cellák eltolás balra" jelenik meg alapértelmezésként, míg az Office 2019-nél a "Cellák eltolása felfelé" jelenik meg alapértelmezésként.

Mivel nekem mindig a "Cellák eltolása felfelé" funkcióra van szükségem, így az Office 2021-nél minden egyes cellacsoport törlésénél plusz egy művelet, hogy átállítsam "Cellák eltolás balra" funkcióról "Cellák eltolása felfelé" funkcióra.

Nem vagy lusta, de amikor naponta több száz cellcsoportot kell törölni, ez plusz lépés jelentős plusz időt eredményez.

Az Office beállításait és a netet átnézve nem találtam megoldást, hogyan lehetne alapértelmezetté tenni törlés esetén a "Cellák eltolása felfelé" funkciót. :W

(#47574) Fferi50 válasza lenkei83 (#47572) üzenetére


Fferi50
őstag

Szia!
Ez elég szép ravaszság. Függvény és Sub együttműködése.
Üdv.

(#47575) Delila_1 válasza Ribobon (#47573) üzenetére


Delila_1
Topikgazda

Tedd a personalba (lásd a Téma összefoglalót) a lenti kis makrót. Tegyél ki hozzá a Gyorselérési eszköztárra egy ikont. Kijelölöd a feljebb mozgatandó cellákat, majd az ikonra kattintasz.

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

(#47576) Reinhardt


Reinhardt
őstag

Hello,

Van vmi formazasi lehetoseg ami beallitja a cella szint igy:

Tehat szinez minden masodik sort, de ha a szoveg azonos a kovetkezoben akkor azt is.

Vagy sz is megoldas lehetne, ha ugy egyesitene a duplikat cellakat.

[ Szerkesztve ]

(#47577) lappy válasza Reinhardt (#47576) üzenetére


lappy
őstag

ilyen nincs csak vmi makró oldja meg ezt neked
vagy segédoszloppal talán

[ Szerkesztve ]

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

(#47578) Delila_1 válasza Reinhardt (#47576) üzenetére


Delila_1
Topikgazda

A feltételes formázás képlete
=VAGY(PÁROSE(SOR());A2=A1)

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

(#47579) lappy válasza Delila_1 (#47578) üzenetére


lappy
őstag

nem teljesen jól működik :R

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

(#47580) lenkei83 válasza Stevan87 (#29698) üzenetére


lenkei83
tag

Téves.. :DD

[ Szerkesztve ]

(#47581) Delila_1 válasza lappy (#47579) üzenetére


Delila_1
Topikgazda

Nálam igen.
Valamiért nem jön be a képfeltöltés lehetősége. Linket adok hozzá.
[link]

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

(#47582) lappy válasza Delila_1 (#47581) üzenetére


lappy
őstag

a példádban a 2-4 12-14 soroknál látszik a hiba. ha azonos akkor sárga és onnan újra indul a páros és az azonosság figyelése nézd meg amit felrakot :D

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

(#47583) lappy válasza Reinhardt (#47576) üzenetére


lappy
őstag

Segédoszlop kélete
=HA(A2=A1;F1;F1+1)
Hamis vagy Igaz
=ÉS(HOSSZ($A2)>0;MARADÉK($F2;2)=0)
itt a hamis-t kell majd színezni!

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

(#47584) Delila_1 válasza lappy (#47579) üzenetére


Delila_1
Topikgazda

Szerintem a kérdező mintája sántít. A párosaknak sárgáknak kellene lenniük, de a mintájában a 8; 10; 12; 16 és 20 fehérek.
Vagy a kérdés feltevése nem az igazi.

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

(#47585) lappy válasza Delila_1 (#47584) üzenetére


lappy
őstag

Lehet, most mindkettőre kapott választ majd eldönti melyik kell neki :DD

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

(#47586) BEndre34 válasza Pakliman (#47563) üzenetére


BEndre34
tag

Szia!

Köszönöm. Viszont pont az a gondom, hogy nem tudok útvonalat megadni. Illetve igen, de úgy már nincs értelme a makrónak. Kollégák fogják használni és pont az lenne a lényeg, hogy nekik ne kelljen semmin változtatni, csak a minta fájlt bemásolja az adott heti könyvtárba és lefut arra a hétre(könyvárra) vonatkozóan.

(#47587) botond187


botond187
csendes tag

Sziasztok,

Magyar Office 2019 Professional Plus

Olyan problémám lenne, abban kérném a segítségeteket, hogy egy jó nagy adathalmazból úgy szeretnék kinyerni egy cella értékét, hogy az egyik fülből kellene kinyerni az adatot bizonyos feltétellel, melyek az eredeti fülön találhatóak.

Viszont - és ahol elakadtam -, hogy egyfelől kellene keresnie egy másik fülön lévő adathalmazból az eredeti fülön lévő azonosító szerint és dátum értéke szerint is(a dátumot átalakítom értékké).
Tehát szerepel az eredeti fülön az A3 oszlopban az azonosító, az AH 3 oszlopban meg a dátum értéke szerepel.
Meg kellene keresnie az azonosítót a másik fülön, úgy, hogy vele párhuzamosan a dátum értéke ne legyen nagyobb (tehát kisebb, vagyis korábbi legyen).
Az FKERES-el csak megtalálom, de ha tovább akarom, hogy menjen a keresés, azt nem tudom melyikkel lehetne.

Hogy (remélhetőleg) érthetőbb legyen:
Azt szeretném megtudni ezzel, ahol az azonosító egy terméknek az azonosítószáma, ID-ja, és ezt szeretném megkeresni a másik fülön lévő beszerzési árát (amit úgy lehetne kinyerni, hogy korábbi, mint az eredeti fülön lévő dátumérték).
A termék többször is szerepel a másik fülön, olykor eltérő árral, eltárő dátummal, emiatt szeretném kikeresni, hogy az eredeti fülön lévő dátumhoz legközelebb eső korábbi beszerzési ára mi lehet.
Tehát pl az eredeti fülön lévő június 3.-i dátumértéknél az ennél korábbi beszerzési árat nézze, ne az utánit.

Ezt milyen megoldással csinálnátok meg?

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

Üdv,
Bálint

(#47588) Fferi50 válasza botond187 (#47587) üzenetére


Fferi50
őstag

Szia!
Azért egy mintát mutathatnál, mert a leírás alapján még nem tiszta egyáltalán.
Pl milyen oszlop az A3 és az AH3?
Továbbá hol van az ár, amit keresel.
Tömbképletet el tudok képzelni rá, de jó lenne a minta.
Üdv.

(#47589) Pakliman válasza BEndre34 (#47586) üzenetére


Pakliman
tag

Szia!

Megoldható úgy is: az útvonalat a ThisWorkbook.Path fogja megadni a makróm elején:
MFName = Dir(ThisWorkbook.Path & "\Jelenléti ##.##.xlsx")

De egy másik lehetőség:
A kollégák választják ki a szükséges táblázatokat (hibakezelést itt sem csináltam!).
Az összesítő munkalapra teszel egy ActiveX CommandButton-t, aminek a kódja:
Private Sub CommandButton1_Click()
Dim twb As Workbook: Set twb = ThisWorkbook
Dim fd As FileDialog
Dim i As Long
Dim MFName As String

Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.AllowMultiSelect = True
.Filters.Clear
.Filters.Add "Excel Files", "*.xls*"

If .Show = -1 Then
For i = 1 To .SelectedItems.Count
If .SelectedItems(i) Like "*\Jelenléti ##.##.xls*" Then
Workbooks.Open Filename:=.SelectedItems(i)
MFName = ActiveWorkbook.Name
ActiveWorkbook.Sheets(1).Copy Before:=twb.Sheets(1)
ActiveSheet.Name = Mid(MFName, 11, 6)
Workbooks(MFName).Close SaveChanges:=False
End If
Next i
End If
End With
End Sub

[ Szerkesztve ]

(#47590) ny.janos válasza Reinhardt (#47576) üzenetére


ny.janos
tag

Szia!

Feltételes formázással megoldható. Az A oszlopot az első (fejléc) sor kivételével kijelölve a feltételes formázás képlete:

=PÁROSE(SZORZATÖSSZEG(--NEM($A2:$A$2=$A1:$A$1)))

Pár éve én is ezen a fórumon kaptam ezt a megoldást. :)

(#47591) Fferi50 válasza Fferi50 (#47588) üzenetére


Fferi50
őstag

Botond187-nek a korábbi üzenet folytatása:
Az eredeti adathalmazt alakítsd át táblázattá, az első sor a fejléc.
Ezután a tömbképlet a következő:
=INDEX(Táblázat1[[#Mind];[ár]];MAX((Táblázat1[[#Mind];[azon]]=$A$3)*(Táblázat1[[#Mind];[dátum]]<$AH$3)*SOR(Táblázat1[[#Mind];[azon]])))
Táblázat1: az átalakított halmaz neve.
ár: a táblázat árakat tartalmazó oszlopának felirata
azon: a táblázat azonosítókat tartalmazó oszlopának felirata
dátum: a táblázat dátumokat tartalmazó oszlopának felirata
A3 cella tartalmazza az azonosítót
AH3 cella tartalmazza a dátumot, aminél korábbit keresel
A tömbképletet Shift+Ctrl+Enter kombóval kell lezárni, az Excel kapcsos zárójelbe teszi.
Remélem, jól értelmeztem a kérdésed.
Üdv.

[ Szerkesztve ]

(#47592) ny.janos válasza botond187 (#47587) üzenetére


ny.janos
tag

Szia!

Ha jól értem a problémádat, akkor arra Mutt 3,5 évvel ezelőtt javasolta nekem ExcelisFun videóit erre a témára. Itt a megoldás. A kérdést pedig itt találod hozzá.

(#47593) Reinhardt válasza lappy (#47585) üzenetére


Reinhardt
őstag

Koszonom mindenkinek, most mar csak azt kell kitalalonom, hogy mik ezek angol Excelben :)

(#47594) lappy válasza Reinhardt (#47593) üzenetére


lappy
őstag

ez segít kitalálni

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

(#47595) Mutt válasza Reinhardt (#47593) üzenetére


Mutt
aktív tag

Szia,

Office365 vagy Office 2021-ben vannak újabb függvények, amelyekkel szintén megoldható.
A feltételes formázásban ez a képlet:
=ISODD(XMATCH(A2;UNIQUE($A$2:$A$21)))

üdv

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

(#47596) Ribobon válasza Delila_1 (#47575) üzenetére


Ribobon
tag

Köszönöm a választ! :R

(#47597) Mr. Y


Mr. Y
senior tag
LOGOUT blog

Sziasztok!

A segítségeteket szeretném kérni.
Van két excel fájl, amit össze szeretnék fésülni. Soronként vannak és az első oszlop az egyedi azonosító.
Mindkét fájl tartalmaz ugyan olyan azonosítóval ellátott sort és azt szeretném, ha az alap xls-t felülírná a bemásolandó ezeken a pontokon, a többit pedig hozzáadná. Megoldható ez valahogyan?

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

[ Szerkesztve ]

But who is watching the guardians?

(#47598) lappy válasza Mr. Y (#47597) üzenetére


lappy
őstag

Egy vagy több munkalap
Én így csinálnám: a két munkafuzet azonos lapjának cellait összemasol majd ismétlések eltávolítása

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

(#47599) Mr. Y válasza lappy (#47598) üzenetére


Mr. Y
senior tag
LOGOUT blog

Igen, de nálam azért kellene a felülírás, mert csak az azonosító ugyan az, a sor tartalmában viszont változások vannak.

But who is watching the guardians?

(#47600) Fferi50 válasza Mr. Y (#47599) üzenetére


Fferi50
őstag

Szia!
Jó az ismétlődések eltávolítása.
Egy üres munkalapra másold fel először a második munkalap adatait, majd az első munkalapét alá. Tehát azt másolod először, amivel felül szeretnéd írni az értékeket.
Kijelölöd az egész adathalmazt. Ezután ismétlődések eltávolítása csak az azonosító oszlopát kijelölve.
Mivel ez a művelet a legelőször talált tételeket hagyja meg, a többször előforduló tételeknél az első marad meg - ezért kell először a felülírásra használandó adatokat bemásolni.
Üdv.

Útvonal

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