-
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
-
spe88
senior tag
válasz Delila_1 #41747 üzenetére
Semmi ilyet nem tudok hasznalni. Csak annyit kérnék a szoftvertől, hogy ha egynél tobb érték ismétlődik egy oszlopban akkor egy cellaba irjon be vmit. Ez egy automatizalt dolog lenne. Semmi felteteles formazas stb. Segedoszlopok, sajat fv-ek jöhetnek, de egyeb olyan dolog ahol a usernek kell csinalni vmit nem. Remelem.megint nem talaltam vmi olyan alap dolgot amit csak vmi brutal makrokkal lehet megoldani. Jo szokasom... 😀
Spóroljunk! Kerül, amibe kerül!
-
Fferi50
őstag
Szia!
A usernek nem kell semmit csinálnia, ha a feltételes formázást előre beállítod azokra a tartományokra, ahol az adatbevitel folyik. Az ismétlődést vörösre állítod. A usert pedig kitanítod, hogy a vörös azt jelenti, ilyen tétel már van.Makróban pedig tudod használni a darabtelit, a munkalap change_eseményébe ágyazva.
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.Darabteli( Range("A1:A10"),Target.Value)>0 Then
Msgbox "Már van ilyen érték: " & Target.Value
'vagy Msgbox helyett:
Target.Offset(0,1).Value="Ilyen érték már van!'"
'akár ki is törölheted:
Target.Value=""
End If
End Sub
Természetesen az A1:A10 helyére az adott területet írd.
Ha az adott cella oszlopában kell nézni, akkor
Columns(target.column) a Range('A1:A10") helyett. Ebben az esetben nem >0, hanem >1 a kritérium, hiszen az adott cella is benne van az oszlopban.Üdv.
[ Szerkesztve ]
-
-
Fferi50
őstag
válasz Delila_1 #41756 üzenetére
Szia!
Hát igen. Nem mindegy, hogy makrót írunk vagy képletet
Ha a vizsgált területben nincs benne a Target cella, akkor a >0 a jó, ha benne van, akkor a >1.
(Ugyanis, ha már egyszer írtuk, akkor nem lesz 0 az értéke.)Üdv.
PS. Nem tudnád elintézni valahogy azt, hogy válasz gomb után - ha be kell lépni - akkor ugyan nyissa már meg a válasz ablakot is. -
Mutt
aktív tag
Szia,
Melyik képlettel tudom azt megcsinálni, hogy egy adott oszlopban található értékek közül, ha talál ismétlődést, akkor dobjon egy "NOK" üzenetet, vagy bármi mást.
Az alábbi képlet IGAZ-at ad vissza ha nincs ismétlődés, HAMIS-t ha van.
=DARAB2(A1:A9)=SZORZATÖSSZEG(1/DARABTELI(A1:A9;A1:A9))
A képlet csak akkor működik ha nincs üres cella a vizsgált tartományban.
üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Attas
aktív tag
Sziasztok Mesterek!
Kis segedelemre lenne szükségem. Egy MACRO kellene ami az alábbi feladatot hajtja végre.
Egy excel munkalapot kellene a mentés gombra kattintva elmenteni úgy hogy elmentse az eredeti fájlt és még egyidőben úgy 6 elérési útra , de oda átkonvertálva PDF formátumba, felül írva az ott találhatókat. Naponta kell ezt csinálnom, ezért a felülírás. De ha csak okéznom kell az is jó
Megoldható?
Nagyon hálásan köszönöm előre is a segedelmeteket!Üdv
"Az élet olyan mint az ásás. Néha pár gyökér feltart, de annak jól odacsapsz és mehetsz tovább!"
-
Delila_1
Topikgazda
A lenti makrót másold be modulba. A Case utasításoknál írd be a rendes útvonalakat, ügyelve, hogy a végükön \ legyen. A csillagos sorba írd be a mentendő fájl nevét a "Fájlneve.pdf" helyére. A javítások után makróbarátként mentsd el a füzetet.
Sub Mentes()
Dim utvonal As String, x As Integer, FN As String
Application.DisplayAlerts = False
FN = "Fájlneve.pdf" '************
For x = 1 To 6
Select Case x
Case 1: utvonal = "F:\Eadat\Excel fórumok\"
Case 2: utvonal = "F:\Eadat\"
Case 3: utvonal = "..."
Case 4: utvonal = "..."
Case 5: utvonal = "..."
Case 6: utvonal = "..."
End Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=utvonal & FN, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
Next
Application.DisplayAlerts = True
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.
-
Delila_1
Topikgazda
válasz Fferi50 #41762 üzenetére
Tudsz válaszolni, ha nem vagy bejelentkezve? Én állandóan bent vagyok.
Nem próbálom ki, mert egyszer kijelentkeztem, és nagyon nehezen sikerült újra bekerülnöm.[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Fferi50
őstag
válasz Delila_1 #41763 üzenetére
Szia!
Hát persze - a válasz gombra lehet kattintani, utána hozza a bejelentkezési ablakot, de sajnos nem ugrik oda ahhoz a kérdéshez, amire válaszolni szeretnék. Korábban ez működött.Üdv.
(csak egy jó jelszó kell, amit megjegyzel. Én nem nagyon szeretek bejelentkezve maradni sokáig, sok helyen.... ) -
Attas
aktív tag
válasz Delila_1 #41761 üzenetére
Szia Delila!
Nagyon szépen köszönöm a segedelmet! Megint csak tökéletes!!
Még egy problémába ütköztem. Egy olyan makró kellene, ami a munka1 lap A -tól G oszlopból mindent kitöröl, formátum, cella tartalom és alakzatok.
Nem tudom megoldható. nyilván a formátum és a cella tartalom igen, de az alakzatokba beletörik a bicska.köszönöm előre is.
"Az élet olyan mint az ásás. Néha pár gyökér feltart, de annak jól odacsapsz és mehetsz tovább!"
-
Delila_1
Topikgazda
Az With – End With közötti rész az A:G oszlopban állít mindent alapra, az utolsó sor viszont csak a teljes lapra adható meg, és minden objektumot (szövegdoboz, rajz) töröl.
Sub Alapallas()
With Columns("A:G")
.Value = ""
.Interior.Color = xlNone
.Font.Size = 10
.Font.Bold = False
.Font.Underline = False
.Font.Name = "Tahoma"
.Font.Italic = False
End With
ActiveSheet.DrawingObjects.Delete
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.
-
szricsi_0917
tag
Sziasztok
[Ebben] a kérdésben tudnátok segíteni? -
spe88
senior tag
válasz Fferi50 #41753 üzenetére
Sajnos ez a kitanítom a usereket erről-arról nem fog menni. Úgy kell mindig megcsinálni, mint ha majmoknak csinálnám. Kb. mint amikor egy prezentációt csinál az ember. Mindig mondom, hogy de hát ennyire nem hülyék, érteni fogják. A főnököm válasza, hogy "menedzsereknek csinálod: annyira hülyék ehhez, amennyire csak el tudod képzelni". Szóval röviden: ez a betanítósdi nem jó. Még olyan alap sem, hogy piros változik, akkor nem jó. Amit a rendszer enged azt meg is csinálják.
Valami olyanra lenne szükségem, ami ismétlődés esetén feldob egy ablakot, hogy "módosíts az értékeken blabla" a szöveget majd én átírom a makróban...
Sajnos van üres cella is a tartományban. :/
Spóroljunk! Kerül, amibe kerül!
-
Fferi50
őstag
Szia!
Erre mutattam azt a makrót, ami a cella változásakor megvizsgálja, hogy van-e már ilyen érték a bevittek között.
Csak meg kellene próbálnod testre szabni:
Ezt másold be az adott munkalap kódlapjára:Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Or Target.Column = 3 Then 'ez az első és a harmadik oszlopot figyeli
'ha minden oszlopon figyelnéd, akkor hagyd el.
'ha egy tartományt figyelnél, akkor a vizsgálat:
'If Not Intersect(Target,Range("A1:X100") Is Nothing ThenApplication.EnableEvents = False
If Application.CountIf(Range(Cells(1, Target.Column), Cells(Target.Row - 1, Target.Column)), Target.Value) > 0 Then
MsgBox "Ilyen érték már van!"
Target.Value = ""
Target.Select
End If
Application.EnableEvents = True
End If
End Sub
Üdv.
-
dm1970
tag
Sziasztok!
Még egy utolsó(?) segítséget szeretnék kérni.
A csatolt képen a B1:E24 közötti adatok alapján szeretném sorszámozni a sorokat az A oszlopba. Amit kapni szeretnék, ha az A oszlopot emelkedő sorrendbe rendezem, az a kép jobb oldalán látható, de az eredeti táblázatban több fajta gyümölcs is szerepel. Tehát gyümölcsönként kellene sorszámozni 1-től, úgy hogy napok szerint növekedjen a sorszám, de a napokon belül, ha többen is szüretelnek abc sorrendet kellene nézni, s előfordulhat az is, hogy valaki egy nap kétszer is jön, ebben az esetben a korábbi kezdési időpont a kisebb sorszámú.
Remélem érthetően fogalmaztam.
Ha csak makrós megoldás van, akkor tárgytalan a dolog, ennyire nem akarok belefolyni.Köszi dm
-
Delila_1
Topikgazda
-
dm1970
tag
válasz Delila_1 #41778 üzenetére
Köszi!
Jól gondolom, hogy a rendezést (ezt a részt nem ismerem, nem használtam még), mindig el kell végezni? Mert akkor ez így sajnos nem jó.
Éreztem, hogy nem voltam egyértelmű.
Nem a sorba rendezésre van szükségem, hanem a számokra, amik alapján sorba rendezném.
Van egy nagy táblázatom, ami képlettel szedi össze az adatokat, hogy ki, mikor mit csinált. Ebben lehetnek üres, még kitöltetlen sorok is, amikbe, ha teljesülnek bizonyos feltételek, majd bekerülnek adatok. S azért szeretném az A oszlopba a megfelelő "sorszámokat", hogy majd egy másik munkalapon egy fkeres függvénnyel sorba kigyűjtsem azokat.
Talán így érthetőbb lett. -
Delila_1
Topikgazda
válasz dm1970 #41781 üzenetére
Feltöltöttem
Használati utasítás a fájlban.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
dm1970
tag
válasz Delila_1 #41782 üzenetére
Ismét Köszi!
Megnéztem, de valami miatt nem is megy (rt error 438, ha B-E közül valamibe beleírok, A hiányzik lesz), s mint írtam is makrózni amúgy sem szeretnék. Mivel nem értem, nem ismerem, ha bármibe bele kellene nyúlni, már csak Rátok szorítkozhatnék, ezért hanyagolnám, bár lehet bele kellene már tanulni.
Ha nem gond, valamelyik nap elküldeném privátban, az eredeti táblámat, s ha látod, meg fogod érteni, mit szeretnék, mert lehet a példa táblám sem volt tökéletes.Még egyszer köszi!
-
Fferi50
őstag
válasz dm1970 #41783 üzenetére
Szia!
Nem kell makrózni.
Az nem baj, ha a beíráskor az A oszlopban #Hiányzik hiba jelentkezik.
Amikor befejezted a beírásokat, akkor kell a B:E oszlopokat átmásolni az I2 cellába. Ezután a Menüszalagon az Adatok - Rendez gombra, majd az OK-ra kattintva kialakul a végeredmény.
(és eltűnnek a hibák )
Üdv. -
bexinho23
őstag
Szia!
Köszönöm a válaszod. Az első opciót tegnap írták a word topikban, mint lehetőséget. Sajnos az 18 dokumentumnál elég macerás, nem lehetne nem lenne túl gördülékeny és gyors a végrehajtása.
Viszont a második opció az az lesz, amit igazából kerestem. Nagyon szépen köszönöm! Ezzel sok időt tudok megspórolni.
-
Delila_1
Topikgazda
válasz bucihost #41787 üzenetére
Nem lehet.
Ne vond össze a cellákat! Az AAA és BBB tétel mellé is írd be a Csomag1 nevet, akkor a szűrés mindkettőt felhozza.
Többször volt már itt a fórumon szó arról, hogy bár megengedi az Excel a cellák összevonását, de többnyire nem tudja úgy kezelni, ahogy szeretnénk.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
spe88
senior tag
válasz bucihost #41787 üzenetére
Ebbe sajnos belefut mindenki.
Ha a csomag tartalmára nem akarsz szűrni soha, akkor egy cellába Alt-Enterrel megoldható a felsorolás.
Ha akarsz szűrni az előbbire, akkor meg csinálsz egy "fals" oszlopot, ahol nem vonod össze a cellákat és összehúzod kicsire, hogy csak a szűrőgomb látsszon. Ha más is használja a munkalapot erre, akkor ez nem nagyon opció.
Nyilván tisztában vagy ezekkel, csak mint lehetséges megoldásként írtam le, hátha nem jut épp eszedbe. Nem valami elegáns egyik sem, de ahogy írták sajnos ezt az Excel még nem tudja kezelni.
[ Szerkesztve ]
Spóroljunk! Kerül, amibe kerül!
-
bucihost
senior tag
Sziasztok!
Köszi az infókat. Reménykedtem benne, hogy van rá ha más nem valami makrós megoldás.
Más:
Használok egy ilyen függvényt:=HAHIBA(FKERES($A2;'I:\Kozos\excel\[bolt1.xlsx]Termékek 19.09.11'!$A:$N;5;0);"")
Ez kb 20-25 (boltra) oszlopra. Azt meg lehet valahogy oldani, hogy a különböző boltok fájljainak elérési útját ne kelljen egyesével átírni, hanem mondjuk a cellából vegye a fájl nevet??
pl: 'I:\Kozos\excel\["E1".xlsx]Termékek 19.09.11'
[ Szerkesztve ]
-
bucihost
senior tag
valamiért dupla lett
[ Szerkesztve ]
-
Fferi50
őstag
válasz bucihost #41790 üzenetére
Szia!
Az INDIREKT függvény jó lehet erre, de ebben az esetben az egész cím legyen a függvény paraméterében, ne csak a fájl neve. Külső hivatkozásnál a hivatkozott fájlnak/munkafüzetnek nyitva kell lennie - ezért nem kell az elérési út, elég a fájl neve.
Kb. így:
$C$1 értéke:''[bolt1.xlsx]Termékek 19.09.11'!$A:$N
=HAHIBA(FKERES($A2;INDIREKT($C$1);5;0);"")
Persze a C oszlopba írhatod tovább a fájlneveket, akkor a sor legyen relatív hivatkozás, hogy a képletet húzhasd lefelé.
Sajnos, amennyiben a hivatkozott fájlt bezárod, akkor a következő újraszámoláskor #HIV! hibaüzenet lesz az eredmény (újranyitva frissül a jóra).
A probléma csak makróval kerülhető meg, amelyik a megfelelő cellákba direktben beírja a hivatkozott fájl nevét - ami persze lehet egy cellában is.Range("A1").Formula="=IFERROR(VLOOKUP($A2," & Range("$C1").Value & ",1,0),"""")
Beírja a képletet - indirekt nélkül - az A1 cellába. Viszont a C1 cella átírása után futtatnod kell a makrót ismét.Más: Nagyon nem javaslom teljes oszlopok-sorok használatát a képletekben (ne feledd a legutolsó verzióban milliós nagyságrendű a sorok száma), mert az lelassítja, esetleg le is fagyasztja az Excelt, mert a sok üres cellát is "számbaveszi".
Helyette egy olyan konkrét tartományt célszerű beírni, ami nagy eséllyel elég lesz a jövőben keletkező adatok számára is.Üdv.
[ Szerkesztve ]
-
bucihost
senior tag
válasz Fferi50 #41792 üzenetére
Köszi a segítséget.
Igen, a baj egyébként nem kicsi, viszont egyenlőre nem látok rá más megoldást....
A gond az, hogy van egy nagyker valamint egy kisker program (persze nem képesek együttműködni.... miért is lennének képesek...)Szóval ha kíváncsi vagyok rá, hogy adott termékekből mennyi van készleten a nagykerben valamint a boltokban is egyaránt, akkor az így néz ki:
1. lekérem a nagyker aktuális készletet az adott termékekre
2. lekérem pár boltnak aktuális készletét külön külön (itt nem tudok egyszerre több termékre lekérni, vagy 1 termék vagy teljes raktárkészlet.... miért is tudnék...)
3. a fenti függvénnyel össze fésülöm az adatokat.Probléma:
1. Így van 20db, egyenként 1-4 MB-os 24.xxx soros excel file, amikből a függvénnyel ki kell nyernem az adatokat.
2. ha ne adj isten nem pár terméket, hanem a a teljes nagyker raktárkészletet kell össze hasonlítani a boltokkal, akkor van pluszba egy 21.excel ami kb 50.xxxx sor, és 15-20 MB.(Egyszer sikerült az összefésüléssel csinálni egy 200+ MB-os végterméket.....)
Ezek margójára már kértem egy paks3-as gépet, hogy ne legyen gond de még így is macera...
Hosszú távon megoldásnak egy makrót gondolnék, valami ilyesmi elven:
1. Egy adott "végtermék" excelben megvan milyen termékekre vagyok kiváncsi.
2. Nyissa meg egyesével egy adott mappában lévő exceleket, és szűrjön rá a "végtermék" xls-ben található termékekre.
3. A "végtermék" excelben hozzon létre egy új fület boltnév szerint (ahonnan kiszedi az adatokat a 2-es pontban) és másolja át csak azokat az adatokat amikre szükség van.
4. Innentől már a függvény is egyszerűbb, esetleg azt is megoldhatná a makró.Vagy valami ilyesmi, de egyenlőre a makró tudásom nincs ilyen volumenű....
Esetleg ha valakinek van egyszerűbb / jobb ötlete / tanácsa, szívesen fogadom azt is..
[ Szerkesztve ]
-
Fferi50
őstag
válasz bucihost #41793 üzenetére
Szia!
Azt hiszem, erre már szinte kivétel nélkül mindenki azt mondaná, hogy nem Excelt, hanem adatbáziskezelőt kell használni. De mivel tudom, hogy a 2 programot nem lehet lecserélni (?)
ezért mást kellene kitalálni.
Ha az office-on belül lenne Access programod, akkor a legegyszerűbben be lehetne olvasni az Excel fájlokat az Accessbe és utána minden gond nélkül lehet belőle riportokat lehúzni.
Valószínűleg kellene az Accessben is némi tervezési munka és pár makró rögzítése a frissítésekhez.
Ha ez nincs, akkor marad az Excel. Itt nem függvényeket javasolnék alapból, hanem lekérdezéseket az Excel fájlokból, amelyek utána könnyebben és dinamikusabban frissíthetőek, makró nélkül is.
Szerintem nézd meg és próbáld ki az Adatok - Új lekérdezések - Fájlból - Munkafüzetből menüpontban elérhető Lekérdezés szerkesztőt.
Ha bármilyen gondod akad vele, légy szíves keress priviben.Üdv.
-
modflow
veterán
Excelben meg lehet azt oldani, hogy ha a cellában lévő betűjel pl. "A" akkor a cella hátterét színezze zöldre???
Lenne különböző értékeim, különböző színeken és ezt szeretném automatán színezni.
A = zöld
B = Kék stb.[ Szerkesztve ]
-
anonymus89
addikt
Sziasztok!
Segítséget szeretnék kérni abban, hogy adott 2 oszlop. A oszlop gyógyszer elnevezése, B oszlop pedig a gyógyszer típusa azaz: injekció, tabletta stb... 13.000 sorról van szó
A lényeg C. oszlopban szeretném azt megvizsgálni, hogy B oszlop elemei megtalálhatóak-e A oszlop azaz a gyógyszer elnevezésében. Ha igen akkor adjon vissza igaz, hamis/0,1 értékeket amit majd összegzek.
Szóval pl:
A oszlop: Abilify 15 mg tabletta
B oszlop: tabletta
C oszlop: igaz v. 1 érték mert a tabletta név megtalálható a gyógyszer elnevezésében
Próbáltam már azonos fv-nyel de sajnos az nem jó mert úgy látom, hogy az csak szavak mennyiségét is vizsgálja.Organikus, természetes összetevőjű, 100% tisztaságú bőrápoló termékek //marcsiszappan.hu//
-
anonymus89
addikt
válasz anonymus89 #41799 üzenetére
No egyet már találtam a szoveg.keres fv. de sajnos ha B oszlopban a gyógyszer formája pl. koncentrátum infúzióhoz
A oszlop meg: 5-Fluorouracil Sandoz 50 mg/ml koncentrátum oldatos infúzióhoz
akkor sajnos nem egyezést fog kimutatni azaz mivel beékelődött egy harmadik szó: oldatos ezért hamis értékkel fog elszállni.
Erre esetleg van megoldás?Organikus, természetes összetevőjű, 100% tisztaságú bőrápoló termékek //marcsiszappan.hu//
Új hozzászólás Aktív témák
- Házimozi haladó szinten
- Yettel topik
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Hálózati / IP kamera
- Milyen notebookot vegyek?
- Samsung Galaxy S21 FE 5G - utóirat
- Távcső topik
- Aliexpress tapasztalatok
- Xbox tulajok OFF topicja
- Rövid előzetesen a S.T.A.L.K.E.R. 2: Heart of Chornobyl
- További aktív témák...
- Játékkulcsok olcsón: Steam, Uplay, GoG, Origin, Xbox, PS stb.
- Steames kulcsok jó áron eladóak!
- Microsoft licencek a KIVÉTELES ÁRAK - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! LEGOLCSÓBB! Automatikus 0-24
- Windows 10/11 Home/Pro , Office OEM/Retail kulcsok