-
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
-
Traxx
őstag
Sziasztok!
Abban szeretnék segítséget kérni, hogy figyelmeztető alsót hogyan tudok készíteni? Arra gondolok, hogy A1-A2 cellában van 2 értékem, és ha a B oszlopba olyan szám kerül, ami nincs a 2 között, akkor meglenne egy üzenet. Feltételes formázással már éltem, de nem elég hatékony sajnos.
Köszönöm a segítséget!
"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)
-
Traxx
őstag
válasz Delila_1 #41252 üzenetére
Köszönöm szépen!
Mindez esetleg megoldható message box-al is? Tehát ha csak akkor jelenne meg a box, ha nem jó az érték
"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)
-
Delila_1
Topikgazda
-
szricsi_0917
tag
Sziasztok
Egy kis segítséget szeretnék kérni.
Egy adatbázisból lehúzok egy listát ahol a számok is szövegként szerepelnek.
Van egy összesítő táblázatom ahova beillesztem értékként viszont akkor is szöveg marad pedig általánosra van formázva, de ha megnyitok egy üres excelt és oda illesztem be értékként akkor már átalakítja számmá.
Mi lehet ennek az oka? -
AtthysKA
csendes tag
Sziasztok!
A segítségeteket kérném: adott egy tábla ahol 2 oszlopban van egy full termék név és a másikban egy gyűjtő termék név. Lásd az alábbi képen(5,6 oszlop):
Azt szeretném ha az 5-ös oszlopban csak a gyűjtőnéven felüli adatok maradnának, tehát a 6. oszlop tartalmát, ha van egyezés, eltávolítani az 5. oszlop tartalmából (a példaképen marad tehát 50G, 60G stb). Ha teljesen ugyanaz a tartalom minden törlődik.
Nem tudom ez megoldható valami függvénnyel, így hogy nem számokról, hanem szövegről van szó?
Köszönöm előre is a segítségetek! -
Fferi50
őstag
válasz AtthysKA #41257 üzenetére
Szia!
Egy segédoszlopban alkalmazd a következő képletet:
=Helyette(E2;F2;"")
Angolban =SUBSTITUTE(E2,F2,"")
végighúzva addig, amíg értékek vannak az oszlopokban.
Ezután a segédoszlopot értékké alakítod (másolás - irányított beillesztés értékként ugyanoda), majd átmásolod az 5 oszlopba.Üdv.
-
modflow
veterán
Megtudnátok azt mondani, hogy ha egy számítási művelet eredménye bekerül mondjuk A-oszlopba, pl. A1-be és A1=54,9875, akkor hogy lehet azt megoldani, hogy ezt 2 tizedesjegyre kerekítse? De ténylegesen és ne csak látszatilag?
Úgy értem nem csak azt akarom, hogy 54,99, hanem azt akarom, hogy a cellában tényleg 54,99 legyen.
MERT ha további műveletet végzek, akkor azt akarom, hogy A*54,99 legyen a művelet és ne a mögöttes 54,9875*A, mert ez már más eredményt ad.Szóval a kerekítés utáni további művelet miatt kellene, hogy 2 tizedesjegyre kerekítsen és az utána lévő műveletekben ezt a 2 tizedesjegyű számot használja.
Remélem érthetően írtam le.Tudtok segíteni?
-
huan
őstag
Sziasztok!
Szeretném egy táblázatban több sor szín-kitöltését megváltoztatni automatikusan egy sornak megfelelően, ahol manuálisan változtattam a szín-kitöltést.
Magyarul egyikben beállítom a kitöltést kézzel és automatikusan a táblázat több másik sora is kitöltődik színnel ennek megfelelően.
Lehetséges ez? -
Delila_1
Topikgazda
Ezt csak makróval tudod megoldani.
Sub Szinezes()
Range("2:2,5:5,10:10,15:15").Interior.Color = Range("A1").Interior.Color
' Range("A2:L2, A5:L5, A10:L10, A15:L15").Interior.Color = Range("A1").Interior.Color
End SubAz első sor az A1 cella háttérszínével azonosra színezi a 2; 5; 10 és 15. sor celláit.
A második sor, ami most megjegyzésbe van téve, a fenti sorokból csak az A:L tartományt színezi.
Írd át a színezendő területeket a saját igényednek megfelelően, valamint a Range("A1")-et, ha nem az A1 szerint szeretnéd végrehajtani a műveletet.
Töröld a makróból azt a sort, amelyikre nincs szükséged.A makrót kötheted egy billentyű kombinációhoz. Alt+F8-ra bejön a makrókat tartalmazó ablak. Kiválasztod a Szinezes makrót, Egyebek, a Billentyűparancsnál a Ctrl+ -hoz beírsz egy betűt. Ezután erre a kombinációra indul a makró, és színez.
A füzetet makróbarátként kell elmentened.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
RAiN91
őstag
Sziasztok
Egy kis segítséget szeretnék kérni.
i egy változó, 44-47ig, ha 47-ig eljutott, akkor a következő mindig a 44, és így megy körkörösen.
Erre ezt írtam, de mivel megadtam, hogy i kezdő értéke 44, ezért mindig is az lesz az első, és nem ugrik tovább.
Private Sub Worksheet_Calculate()
Dim i As Long
i = 44
If Cells(9, 7) <> Cells(9, i) Then
Cells(9, i + 1) = Cells(9, 7)
i = i + 1
end if
If i = 47 Then i = 44
End SubHogy lehetne másképp megoldani? For-Next ciklussal sem tudtam megoldani, mert csak akkor szeretném, ha i ugorjon egyet, ha a feltétel teljesül, és ha NEXT-et IF függvényen belül rakom, akkor hibát jelez:
For i = 44 To 47
If Cells(9, 7) <> Cells(9, i) Then
Cells(9, i + 1) = Cells(9, 7)
Next
End IfKöszönöm előre is a segítséget!
-
Fferi50
őstag
válasz RAiN91 #41268 üzenetére
Szia!
Ha egy sorba írod a feltételt és a kívánt műveletet, akkor nem kell az End IfFor i = 44 To 47
If Cells(9, 7) <> Cells(9, i) Then Cells(9, i + 1) = Cells(9, 7)
Next
Ha mindenképpen ki szeretnéd írni, akkor az End If kerüljön a cikluson belülre:
For i = 44 To 47
If Cells(9, 7) <> Cells(9, i) Then
Cells(9, i + 1) = Cells(9, 7)
End If
Next
"csak akkor szeretném, ha i ugorjon egyet, ha a feltétel teljesül,"
Egyébként mit csináljon, ha a feltétel nem teljesül? Ácsorogjon és várja meg, hogy teljesüljön? - ami persze soha nem fog bekövetkezni.Üdv.
[ Szerkesztve ]
-
Fferi50
őstag
válasz RAiN91 #41270 üzenetére
Szia!
Amíg a makró fut, addig nemigen tud változni egy cella értéke szerintem, hacsak te nem változtatod.
Szerintem eseménykezeléshez kellene kötnöd a makrót, például a munkalap Change eseményéhez, amiben megnézed, hogy a Cella(9,7) értéke változott-e, ha igen akkor lefut a makród az első i-értékkel. Az i változódat publikusnak vagy static-nak kell deklarálnod, hogy megmaradjon az értéke a makró lefutása után is.
Persze lehet, hogy rossz felé gondolkodok, mert nem ismerem a problémád teljeskörűen.Üdv.
-
RAiN91
őstag
válasz Fferi50 #41271 üzenetére
Renden, köszönöm, kísérletezgetek.
Nagyon nem értem a témát, de korábban még te írtad ezt az eseménykezelést, ami akkor meg is oldotta az akkori problémát (makró elejére Application.EnableEvents=false, végére true), gondolom erre gondolsz. Ez az excel egy adatforrásra van csatlakoztatva és 200ms-ként változnak az adatok.
Próbálgatom, nem hiszem, hogy bonyolult lenne a megoldás.[ Szerkesztve ]
-
tixem
addikt
Előre is elnézést kérek, ha volt már. Valszeg triviális kérdés, de sajnos hülye vagyok excelhez, képet pedig nem tudok mellékelni adatvédelemi okok miatt, de megpróbálom leírni.
Szóval adott egy táblázat, amiben ügyfelek szerepelnek.
Egyszerűsített példa: tegyük fel van 10 sor, első három sorban Kiss Pista, következő 3 sorban Minta János, végül a maradék 4 sorban Pista Miska. Ez három ügyfél, de 10 sort foglalnak mert egy ügyfélhez több szám is tartozik.
Ezt képzeljük el 1000+ ügyféllel és mondjuk 5000+ számmal
A fenti példa alapján hogyan tudom úgy leszűrni a táblázatot névre, hogy egy név egyszer szerepeljen, hogy meg lehessen számolni hány ügyfél van? Magyarul az ismétlődéseket szeretném kiküszöbölni, hogy Minta János csak egyszer szerepeljen, meg a többi is. Így a sorok száma kiadná hányan vannak.
Remélem érthető voltam
Köszi
Galaxy S24 Ultra 1TB ||| ( •_•) ( •_•)>⌐■-■ (⌐■_■)
-
Fferi50
őstag
Szia!
1. Egy segédoszlopba - vagy új munkalapra - kimásolod a neveket tartalmazó oszlopot. Ezután adatok - ismétlődések eltávolítása. Megmaradnak az egyedi értékek.
2. Adatok - speciális szűrés - nézd meg a hozzá tartozó segítséget. Helyben is lehet úgy szűrni vele, hogy csak az egyedi adatok láthatók.
3. KimutatásÜdv.
-
RAiN91
őstag
válasz Fferi50 #41271 üzenetére
Sajnos nem találtam megoldást. Annyi a lényeg, ha egy cella értéke változik, akkor írja ki az új értéket, majd ha megint változik, akkor a tőle egyel jobbra lévő cellába írja ki, és így tovább, de mindig menjen vissza az elejére is írja felül.
Tehát pl. A1-be kiíratom, majd B1-be, majd C1-be, de a következőt megint A1-be, B1 stb.
Erre esetleg tudsz valami egyszerű megoldást?
Köszönöm! -
Fferi50
őstag
válasz RAiN91 #41276 üzenetére
Szia!
Az alábbi makrót másold a munkalap kódlapjára. (Jobb egérgomb a fülön, majd kód megjelenítése.)
Option Explicit
Public hol As Byte
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$F$1" Then
Application.EnableEvents = False
Range("A1").Offset(0, hol).Value = Target.Value
If hol < 2 Then hol = hol + 1 Else hol = 0
Application.EnableEvents = True
End If
DoEvents
End Sub
A makró az F1 cellában bekövetkező változásokat követi le, az általad leírt módon az A1-B1-C1 cellában. A $F$1 helyére írd azt a címet ilyen formában, ahol a változások végbemennek, az A1 helyére írd azt az első cellát, ahova a változásokat szeretnéd beírni. A hol változó 0 és 2 között változik, értékétől függően kerül az A1-B1-C1 cellába az érték az Offset tulajdonság alapján.
Más cellákban bekövetkezett változásokra nem reagál.
Azt nem tudom, hogy az általad jelzett gyakoriságú változások miatt a "villódzásokon" kívül fogsz-e látni bármit is.
A DoEvents utasítás azért került bele, hogy a Ctrl+Break billentyűkkel le tud állítani a makró futását.Üdv.
-
PowerBuldog
veterán
Sziasztok!
Eléggé megkopott az excel tudásom.
Tudnátok segíteni abban, hogy hogyan lehet egy cella tartalmát másolni egy függvénnyel, ha tartalmaz egy szót? Lehetőleg úgy, hogy egy cella tartományt néz meg.Tehát van 3 egymás melletti cella
A1: C1
. Ezek közül annak a tartalma kéne nekem egy cellába ami mondjuk tartalmazza, hogy "Póló".Eladó motyók: https://hardverapro.hu/aprok/hirdeto/powerbuldog/index.html
-
Delila_1
Topikgazda
válasz PowerBuldog #41279 üzenetére
Talán képletekkel is meg lehet oldani, de nekem egyszerűbbnek tűnik makróval.
Gondolom, az A1:C1 tartományon kívül a többi sorban is vannak adataid, ezért úgy írtam meg a modulba másolandó makrót, hogy menjen végig a sorokon, és a D oszlopba írja annak a cellának a szövegét, amelyikben először találja meg a "Póló" kifejezést. Ha pl. A5-ben és C5-ben is szerepel a szó, az A5 tartalma lesz a D5-ben.
Sub Hol_A_Polo()
Dim oszlop As Integer, sor As Long, usor As Long
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = 1 To usor
For oszlop = 1 To 3
If InStr(Cells(sor, oszlop), "Póló") > 0 Then
Cells(sor, 4) = Cells(sor, oszlop)
Exit For
End If
Next
Next
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
RAiN91
őstag
válasz Fferi50 #41277 üzenetére
Szia
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Range("A1"), Range(Target.Address)) Is Nothing Then
Range("B1").Offset(0, k).Value = Target.Value
If k < 2 Then k = k + 1 Else k = 0
End If
End SubÍgy már félig működik, csak az Offsetet nem lépteti valamiért. Mindig B1-be írja csak a változást, és azt írja felül.
-
Fferi50
őstag
válasz RAiN91 #41282 üzenetére
Szia!
Bocs, de miért is nem másolod le pontosan a makrót, amit küldtem?
Ne csodálkozz, hogy az Offsetet nem lépteti, mivel a k változódat nem definiáltad publikusnak, ezért valahányszor lefut az eseménykezelés, mindig 0 értéket fog tartalmazni.
Másrészt nem kapcsoltad ki az eseménykezelést, így aztán valahányszor beírja az eredményt újra és újra lefut feleslegesen (igaz, ezt nem látod, mert a cellavizsgálat alapján nem csinál semmit az eseménykezelés, csak kilép).
Továbbá, ha automatikusan íródik felül az A1 cella, akkor végtelen folyamat keletkezik, amit nem fogsz tudni leállítani. Ezért kell bele a DoEvents utasítás, mint írtam.Üdv.
-
Archius
újonc
Sziasztok,
Segítséget szeretnék kérni egy olyan excel diagram létrehozásához, ami időpontok napi eloszlását mutatja egy grafikonon. Reggel 7 és este 7 között számos másodperc pontosan rögzített időpontom van egy oszlopban. Egy másik oszlopban ugyan ezen időpontok dátumai. Szeretnék a két oszlop tartalmából egy olyan ábrát látni, ahol pontok formájában látszik a rögzített időpontok napi eloszlása. Ezt arra használnánk, hogy meghatározzuk melyek azok a napszakaszok amelyek jobban terheltek, és melyek azok ahová még lehet irányítani vagy esetleg átirányítani terhelést.
Segítségetek előre is köszönöm. -
RAiN91
őstag
válasz Fferi50 #41283 üzenetére
Nem működött, mert nem tudtam elindítani, mert feljött az ablak, hogy melyik makrót akarom elindítani. De már rájöttem, nem kell elindítani, alapból fut.
Annyi a probléma, hogy kézzel működik, ha beírok valamit és entert nyomok (bár ha ha ugyan azt az értéket írom be neki, akkor is ő beírja a következő cellába), viszont ha rákötöm az adatforrásra, és változnak a számok másodpercenként, nem ír be semmit.
Időzítő lenne a másik megoldás, amit írtál is korábban, de sokkal jobb lenne egy ilyen megoldás.
-
Fferi50
őstag
válasz RAiN91 #41285 üzenetére
Szia!
Írtam, hogy ez egy eseménykezelés, akkor indul el, ha a cella értéke megváltozik.
A kérdés az, hogy milyen módon van rákötve az adatforrásra, mert ha az gátolja az eseménykezelést, akkor természetes, hogy eseménykezelés formájában nem tud futni.
Tehát jó lenne látni azt a makrót, amelyik az adatforrásból veszi az adatokat a cellába.
Az időzítést nem egészen értem, miért lenne jó.
"ha ugyan azt az értéket írom be neki, akkor is ő beírja a következő cellába"
Az eseménykezelés sajnos nem érzékeli, hogy ugyanaz maradt-e az érték a cellában, azt külön meg kellene vizsgálni.
De gondolom, a legfontosabb most az adatforrás beapplikálása lenne.Üdv.
[ Szerkesztve ]
-
marec1122
senior tag
Sziasztok!
A kérdésem az lenne megvalósítható e, hogy egy kijelölt cellacsoportba legyenek jelölő négyzetek minden cella közepén, úgy hogy ne kelljen minden egyes cellára beszerkeszteni egy "külső objektumot"?
Válaszotokat előre is köszönöm
Csak megfontoltan :D "Öregember nem gyorsvonat!" John McClane
-
RAiN91
őstag
válasz Fferi50 #41286 üzenetére
Szia
Sajnos makrót nem tudok adni. BetAngel a program, amire rá van kötve, a programon belül kell kiválasztanom az excelemet, majd a programban rányomni, hogy connect.
Esetleg nem lehet átformázni valahogy, hogy úgy érzékelje a változást, mintha kézzel írnám be? Pl. egy másik cella értékét egyenlővé tenni azzal a cellával, ahol változnak az értékek, vagy nem tudom.
-
huan
őstag
Sziasztok!
Szeretnék segítséget kérni Tőletek az alábbi feladattal kapcsolatban. Elnézést kérek, ha kissé bonyolult, de nem tudtam ennél jobban egyszerűsíteni.
Van egy táblázatom, ahol cikkek, műveletek, össz, jó és selejt darabszámok vannak és olyan műveletek, ahol az előtte lévő művelet "munkát" ad a következőnek, vagy sem. Akiknek "munkája" van, azokat a műveleteket szeretném összegyűjteni. (A G-oszlopban szereplő műveleteket szeretném ha lehet függvénnyel megszerezni)
- A-oszlop: cikkek
- B-oszlop: műveletek
- C-oszlop: a cikkhez tartozó össz darabszám
- D-oszlop: A cikk és adott művelet jó darabszáma az össz darabon belül
- E-oszlop: A cikk és adott művelet selejt darabszáma
- F-oszlop: Ha D+E=C (jó+selejt=össz db) akkor KÉSZ
- F-oszlop: Ha a D+E<C (vagyis a jó és az addig keletkezett selejt), akkor X (itt fontos lenne, hogy csak az addig keletkezett selejtet(E-oszlop) vegye figyelembe)
[pl.: 21.sor=KÉSZ, mert a 20.sortól már 29 az össz darab]
- G-oszlop: F=KÉSZ -már nem érdekes. Csak azokat a műveleteket tartalmazza, ahol "munka" van, azaz D-cella értéke kevesebb, mint a felette lévő D+E -értéke (cikken belüli addigi E-oszlop-összeg)Pirossal jelölt cellák: Ahol "esemény" történik számomra.
A minta táblát elhelyeztem itt.
Köszönöm előre is!
[ Szerkesztve ]
-
Fferi50
őstag
Szia!
Az x-eket ki helyezi el a táblázatban? Ahol kész van, oda már nem kellene írni a G oszlopba?
Ahol még nem történt művelet, azaz 0 a jó+selejt, oda nem kell semmit írni? Hiszen ott még minden művelet hátravan. Vagy extrém esetben, ha minden db selejtté válik "útközben", akkor arra a műveletre már nem kerül sor.... ?Üdv.
[ Szerkesztve ]
-
huan
őstag
válasz Fferi50 #41292 üzenetére
Szia!
Az x-eket ki helyezi el a táblázatban?
Az x-eket, vagy az egész F-oszlopra nincs szükség, ha a G-oszlop tud "nélküle" működniAhol kész van, oda már nem kellene írni a G oszlopba?
Maradhat üresen is, valóban. Csak azért írtam minden cellába, hogy majd az FKERES "rátaláljon" majd az első cikk találat mellett.Ahol még nem történt művelet, azaz 0 a jó+selejt, oda nem kell semmit írni?
Jogos. Csak akkor ha ez az első művelet cikken belül. (pl.24.sor, 27.sor)Hiszen ott még minden művelet hátravan. Vagy extrém esetben, ha minden db selejtté válik "útközben", akkor arra a műveletre már nem kerül sor.... ?
Csak azok a műveletek kellenének, akiken éppen "van munka", nem az összes hátralévő.
Ha minden darab selejtté válik valahol, akkor nem lesz mit feldolgozni a következőnek, így ott vége a "munkának". (F-oszlop: Ha D+E=C (jó+selejt=össz db) akkor KÉSZ >> F=KÉSZ -már nem érdekes)[ Szerkesztve ]
-
Dr V
őstag
Sziasztok!
Egy 13 tételes, számokat tartalmazó adathalmazt szeretnék kiszűrni egy folyamatosan bővülő táblázatból. Konkrétabban kódokat olvasok be Excelbe és ha az érintett kódot (számsort) beolvasom, NOK-t írjon ki, amúgy meg OK-t. Milyen képlettel tudom megvalósítani?
-
Dr V
őstag
Sziasztok!
Idővonalat szeretnék létrehozni. Megvan a projekt neve, kezdési és befejezési dátum. Azt szeretném ebből kihozni, h láttható legyen egyes projektek időbeli átfedése. Hogyan oldhatom ezt meg?
Új hozzászólás Aktív témák
- World of Warcraft Shadowlands Collectors edition EU EN
- Eredeti Windows, telepítéssel! Digital Doctor Számítógép Szerviz
- Steam, Windows, Origin kulcsok, előfizetések közvetlenül a kiadótól, a LEGJOBB ÁRON!
- Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Game Pass Ultimate előfizetések 1 - 25 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN!
- Windows 7 32bites eredeti lemez és szoftver
- Eredeti Windows 10, Windows 11, Office Akció: Office 2021, Office 2019, Office 2016 csak Retail
- The Witcher 2: Assassins of Kings - nagydobozos, komplett, gépben sem volt
- World of Warcraft 15th Anniversary Collectors Edition - BONTATLAN - shipper barna kartonban - ÚJ
- PC játékok 2000Ft/db