-
IT café
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
-
BlackDevil
aktív tag
Sziasztok.
Segítség kellene.
az 1es oszlopban devizanemek vannak a 2-ban meg számok.A szűrést úgy kellene csinálnom, hogy a -5000 alattiakat mutassa, de csak azoknál ahol devizanem huf. Pl gbp lehet 10 is.
»OΛKΞN« √ ツ Toborzás: https://goo.gl/bO5GhH <--- Star Citizen ---> https://goo.gl/ptspnT ¤ Steam ---> shorturl.at/NSVW1 | Social Club ---> http://goo.gl/nPIu51 | Hackthat: http://goo.gl/kAJnpV
-
Fferi50
őstag
válasz BlackDevil #31551 üzenetére
Szia!
Bekapcsolod az autoszűrőt. 1-es oszlopon szűrsz a HUF-ra, 2-es oszlopon a -5000 alattiakra.
Üdv.
-
BlackDevil
aktív tag
válasz Fferi50 #31552 üzenetére
De így csak a huf értékeket írja ki. Úgy kellene hogy a többi devizanem összes értékét mutassa. A huf-nál meg csak a -5000 alattiakat.
»OΛKΞN« √ ツ Toborzás: https://goo.gl/bO5GhH <--- Star Citizen ---> https://goo.gl/ptspnT ¤ Steam ---> shorturl.at/NSVW1 | Social Club ---> http://goo.gl/nPIu51 | Hackthat: http://goo.gl/kAJnpV
-
d.bali
csendes tag
válasz Delila_1 #31120 üzenetére
Szia Delila_1!
1x már segítettél egy nagyot és van egy további probléma, amit valószínűleg az excel korlátja gátol.
Anno meg csináltam az általad használt névkezelőt:
"Felveszel a névkezelőben egy új nevet, a név legyen számolás, a hivatkozás pedig =KIÉRTÉKEL(Munka1!A1)."Ez azóta is szuperül üzemel mind addig, amíg az egyenlet karakter hossza nem lesz 256-nál több. Ez esetben ugyanis ez a beépített makró meghal!
Van esetleg valamilyen megoldás erre?
Ha nem, akkor marad a lokálisan felülírás úgyis csak elenyésző számban fordul elő!Köszi a választ!
-
perfag
aktív tag
válasz ktomee #31544 üzenetére
Az Excel 2007 óta nem használtam a Pivotot, szóval szakértő nem vagyok.
Letöltöttem a drive-ról a minta fájlodat, bekapcsoltam a (megváltozott nevű) Power Pivotot, látom rohadtul megváltozott benne minden, de kezelhetőnek tűnik .
Azt, hogy mit szeretnél kimutatni, no azt nem értem. Már ott kezdődik a problémám, hogy hangsúlyozottan (magyar Excel 2016) és ehhez képest sheet-ekről beszélsz.Jobb lenne privátban folytatni, de csak akkor, ha nem sürgős, ma este meccs, pénteken elutazom.
-
Fferi50
őstag
válasz BlackDevil #31553 üzenetére
Szia!
Akkor fel kell venned egy segédoszlopot, mivel az autoszűrőben nem érvényesíthetsz egyszerre két feltételt vagy kapcsolattal:
=VAGY(HIBÁS(SZÖVEG.KERES("HUF";A2));ÉS(NEM(HIBÁS(SZÖVEG.KERES("HUF";A2)));B2<-5000))
A SZÖVEG.KERES függvény azért van, ha lenne más karakter is a cellában. Ha biztos vagy benne, hogy nincs, akkor használhatod a következőt:
=VAGY(A2<>"HUF";ÉS(A2="HUF";B2<-5000))Ez a képlet akkor igaz, ha az A oszlopban nem HUF van, illetve A oszlopban HUF, B oszlopban -5000 -nél kisebb az érték.
Erre már használhatod az IGAZ autoszűrőt.Üdv.
-
Fferi50
őstag
válasz perfag #31555 üzenetére
Szia!
Ebben az esetben az Összesítés funkciót lehet használni kis trükközéssel.
A trükk:
Minden munkalapra beszúrsz egy új A oszlopot.
A2 cella képlete:=B2&";"&C2&";"&D2&";"&E2
Ezt végighúzod az egész oszlopon, minden munkalapon.Beszúrsz egy új munkalapot, ahová az összesítés jön.
Ezen a munkalapon adatok, összesítés. A párbeszédpanelen kiválasztod az összeg függvényt. A hivatkozás mezőben szép sorban kijelölöd a hónapok adatait tartalmazó munkalapot (megnyitott fájl területét), hozzáad.
Bejelölöd a feliratokat vegye a felső sorból, bal oszlopból.
Az egyes fájlokat külön-külön is hozzáadhatod az összesítési területhez.Az összesítő munkalapon kijelölöd az A oszlopot (ahol a pontosvesszővel elválasztott értékek vannak),
Adatok - szövegből oszlopok - tagolt - pontosvesszőt bejelölöd, következő lapon a $B$2 cellát jelölöd ki egérrel. A Befejezés gombra megkérdezi, hogy felülirja-e az adatterületet, a kérdésre igen a válasz. Ki lesz bontva az A oszlop szépen.Ezután az A oszlopot ki is törölheted.
A 3 hónapot 3 külön fájlba tettem ki, mivel azt írtad, hogy egy-egy fájl nagy, utána összesítettem - ezt láthatod az Adatok összesítés lapon.
Ha kérdésed lenne, szívesen válaszolok.
Üdv.
-
bteebi
veterán
Sziasztok!
Randomizálással kellene munkabeosztást készítenem. Egy héten két napra (keddre es csütörtökre) kellene 2-2 embert beosztani úgy, hogy legalább az év végéig mindenki ugyanannyiszor dolgozzon. Meg persze soha senki se legyen önmagával beosztva .
Írtam már hozzá egy egyszerűbb makrót:
Sub randomize()
Dim col As Integer, lastcol As Integer, rowind As Integer, firstindex As Integer, lastindex As Long
lastindex = Sheets("Beosztás").Cells(Sheets("Beosztás").Rows.Count, 1).End(xlUp).row
firstindex = Sheets("Beosztás").Cells(lastindex, 1).End(xlUp).row
lastcol = Sheets("Beosztás").UsedRange.Columns.Count
For col = 2 To lastcol
For rowind = 4 To 7
Cells(rowind, col) = Cells(Int((lastindex - firstindex + 1) * Rnd + firstindex), 1)
Next rowind
Next col
End SubEz egyelőre sajnos csak a munka egyszerű részét csinálja meg, vagyis teljesen véletlenszerűen osztja be az embereket. Így viszont persze nagyon nem egyenletes az elosztás, lásd a képen:
Próbáltam rákeresni más fórumokban is, hogy mit lehetne ezzel kezdeni, de egyelőre nem találtam rá megoldást. Tudnátok valahogy segíteni az elindulásban? Valami olyan elképzelésem van, hogy egy tömbbe kellene gyűjteni a már felhasznált neveket, aztán ha már minden név benne van a tárolóban, akkor újraírni azt. Az viszont egy nagyon jó kérdés, hogy ezt hogy lehetne megcsinálni...
[ Szerkesztve ]
Cancel all my meetings. Someone is wrong on the Internet.
-
lenkei83
tag
Sziasztok!
workbooks.open-nel probálnék filet nyitni és importálni, a gond viszont az, hogy az importálandó .xls file valami régi formátumú. Excelben simán meg tudom nyitni (olvasásra), viszont ha VBA-ban próbálom ugyanezt, akkor hibára fut: "A megnyitni kívánt fájltípust az Adatvédelmi központ fájlblokkolási beállításai blokkolják."
Az okát tudom, excelben kell kivenni a pipát a blokkolt file típusoknál. A kérdés az, hogy a VBA le tudja e kezelni valahogy úgy, hogy ehhez ne kelljen hozzányúlnom?Találkozott már valaki ilyenne?
köszi
P. -
Delila_1
Topikgazda
válasz bteebi #31560 üzenetére
Kicsit másképp rendeztem az adatokat. Az A oszlopban vannak a hetek 21–52-ig. A heti 2 dátum a B és C oszlopban látható. A neveket a K oszlopba tettem.
A makró a heti 2 nevet a D és E oszlopba írja be. Két ellenőrző oszlopot tettem be az F, ill. az L oszlopba, a képen látszik ezeknek a képlete.A makró
Sub Beosztas()
Const also = 1: Const felso = 17
Dim napok(1 To 17), db As Long, tele As Long
Dim sor As Integer, oszlop As Integer, dolg As Integer
For sor = 2 To 33
For oszlop = 4 To 5 'D:E
Veletlen:
Randomize
dolg = Round(Rnd() * (felso - also) + also, 0)
If napok(dolg) = "X" Then GoTo Veletlen
napok(dolg) = "X"
Cells(sor, oszlop) = Cells(dolg, 11) 'K oszlop, nevek
DoEvents
db = 0
For tele = 1 To 17
If napok(tele) = "X" Then
db = db + 1
End If
Next
If db = 17 Then
For tele = 1 To 17
napok(tele) = ""
Next
db = 0
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.
-
Delila_1
Topikgazda
-
Delila_1
Topikgazda
válasz bteebi #31560 üzenetére
Többszöri futtatásnál előfordult az ellenőrző F oszlopban IGAZ érték, ami azt jelzi, hogy saját magával került valaki egy műszakba. Ilyenkor kell egy új futtatás.
Az L oszlopban látszik, hogy egyenletesen oszlik meg a beosztások száma a dolgozók között.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Stevan87
tag
Sziasztok.
Olyan segítség kellne (mint én... hozzá nem értő) szájbarágósan elmondani,ha lehet ilyet csinálni excel-ben,hogy van pl dátum. 1990. december 20.
Ezt átírja szám formátummá. Tehát 1990.12.20.Ilyet lehet? Próbálgattam függvénynél,de semmi sikerrel.
-
föccer
nagyúr
válasz Stevan87 #31567 üzenetére
jobb klikk a cellán, cella formátum, dátum-nál válaszd ki a szükséges alakot, leokézod, és jó lesz. Ugyan az az adat, csak a cella formátuma más.
Az excel 1900.01.01-től eltelt napok számában méri a dátumot. Tehát ha egy cella értéke 10 és átálíítod dátum formátumra, akkor 1900.01.11. fog megjelenni.
üdv, föccer
Építésztechnikus. Építőmérnök.
-
bteebi
veterán
-
bteebi
veterán
válasz Stevan87 #31571 üzenetére
Sajnos ez így nem fog menni. Az Excel a dátumokat - ahogy azt már említették korábban - számként tárolja. Az általad bevitt információ viszont szöveg, hiába ugyanolyan látszólagosan a formátuma, mintha dátum lenne. Próbáld ki, hogy az általad begépelt "dátumot" (szöveget) irányított beillesztéssel egy másik cellába másolod értékként, illetve ugyanezt egy dátum formátumú cellával. Az első esetben az eredeti szöveget fogod visszakapni, a második esetben viszont egy számot (pl. 2016. május 19-e helyett 42509-et).
Azt viszont meg tudod tenni, hogy a hónapok neveit számokra cseréled (pl. december helyett 12), és úgy fog működni.Legrosszabb esetben hozz létre egy segédoszlopot, amibe az eredeti szöveg formátumú "dátumokat" bemásolod, majd lecseréled bennük a hónapokat számokra (12 lépés).
Cancel all my meetings. Someone is wrong on the Internet.
-
Delila_1
Topikgazda
válasz bteebi #31572 üzenetére
A dolg változóba beteszel egy véletlen számot – dolg = Round(Rnd() * (felso - also) + also, 0).
Megnézed, hogy a napok() tömb dolgadik eleme egyenlő-e "X"-el, vagyis használtad-e már ezt a dolg értéket? Ha igen, akkor visszazavarod a futást a véletlen szám generáláshoz. Ha üres ez az elem, akkor egyrészt a beírod a dolgadik nevet a megfelelő helyre – Cells(sor, oszlop) = Cells(dolg, 11) –, másrészt a tömbben foglalttá teszed egy "X"-szel – napok(dolg) = "X" .A következő ciklussal ellenőrzöd, hogy a tömbben kihasználtál-e minden értéket. A már foglalt tömbelemek értéke "X". Ezt számolod a ciklusban, a db változó segítségével. Ha a db értéke megegyezik a dolgozók számával (db=17), akkor kiüríted a tömb elemeit a következő kis ciklussal, és folytatódik a cellák feltöltése a nevekkel.
Felvetődhet a kérdés, miért éppen napok a tömb neve? A válasz: csak.
Programozó: 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
-
Polllen
nagyúr
Sziasztok!
Ismét némi segítség kellene.
Van egy nagy file, amibe bekerül egy filter és a leszűrt tartalom egyik oszlopát át kell másolni egy másik sheet-re.
Worksheets("BOM report").Columns(5).Copy Destination:=Worksheets("Outphasing platform list").Columns(2)
Ez a kód a filter-t is bekapcsolja az új sheet-n. Megoldható, hogy ez ne történjen meg?
"Odamentem egy párhoz...négyen voltak!"
-
Dr V
őstag
Sziasztok!
2013as excelben hol lehet beállíttani, hogy a hét száma amerikai vagy magyar szabvány szerint számolja? Nem képlettel szeretném megoldani, hanem van valahol egy ilyen beállítás a programban.
-
lenkei83
tag
Sziasztok!
Freefile kezelésnél meg lehet adni valahogyan, hogy melyik oszlopba kezdje a printelést?
A printre küldött adatom az eredeti (xlsx) fileban második oszlopban van, viszont a csv-ben az elsőbe kellene hogy rakja.
Van erre valami megoldás?köszi
P. -
Stevan87
tag
Köszi mindenkinek!
Biztos én vagyok ehhez nagyon béna,de nem sikerült sehogy
-
Fferi50
őstag
válasz lenkei83 #31585 üzenetére
Hali!
Ismerős néhány elnevezés a kódodban
A kívánt eredményhez a következőképpen juthatsz el:
If ujfka.Row > 4 Then
If Not IsEmpty(ujfka.Cells(2)) Then
set ujfka = Intersect(ujfka, ujfka.Offset(0, 1))
Print #xx, Replace(Join(Application.Transpose(Application.Transpose(ujfka.Value)), ";"), ",", ".")
End If
End IfA 001 exportálásban lemaradt a rows a usedrange mögül és én pont ezt a makrót kezdtem el nézni...
Szerintem nem kell 3 makró hozzá, elég egy, amit paraméterezetten hívsz meg.
Üdv.
-
rozsa89
újonc
Sziasztok!
Ez még nekem nagyon új. Most először regisztráltam fórumra. Remélem tudtok segíteni.
Olyan kérdésem lenne, hogy egy betűvel kombinált számsorból, hogyan lehet átalakítani egy másikra? Ehhez függvényt kell használnom (ha igen melyiket és hogyan), vagy egyedileg kell valamit beírnom.
Pl.: K-000234/20 és ebből szeretném, ha ez lenne: S2-234/1
K-000234/20 ebből a számból mondjuk van 8 db és az előző szám lenne folytatva a per jel utánRemélem érthetően fogalmaztam
Több ezer ilyen számot kellene átalakítani, de egyesével ez kivitelezhetetlen.Előre is köszönöm a segítségeteket!
Egy tudásra szomjazó... :)
-
lenkei83
tag
-
rozsa89
újonc
válasz bsasa1 #31590 üzenetére
Szia!
Addig oké, hogy "K-000"-ból kell nekem "S1-", aztán marad három szám ugyan úgy, majd a per jel után a szám helyett növekvő sorrendbe kellenek 1-től.
Végig nézegettem a függvényeket, próbálkoztam hülyeségekkel, de nem értem. Sajnos a tudásom édes kevés.
A képen látszik, hogy mit mire.
Örülök, hogy már valaki felfigyelt rá. Tűkön ülve várom, hogy hogyan lehetséges. És remélem, hogy lehetséges. Amúgy a számsor sokkal hosszabb.Üdv: rozsa
u.i: szerkesztve...miért nem látszik a képem?
[ Szerkesztve ]
Egy tudásra szomjazó... :)
-
bsasa1
csendes tag
válasz rozsa89 #31591 üzenetére
Pl. ha A1 cellától mennek lefelé a számok akkor az első kézzel kell megcsinálni a B1 cellába, de utána működik B2-től lefelé: ÖSSZEFŰZ("S1-";KÖZÉP(A2;6;3);"/";DARABTELI($A$1:A1;A2)+1).
Azt csinálja, hogy veszi az "S1-" kefejezést, a mellette lévő cellából hozzá teszi a számot (234), egy "/" jel, majd felfelé megszámolja, hogy hányadik ugyanolyan számsor, és a végéhez fűzi.
A közép függvény csak akkor jó, ha minden számsorból a 6. karaktertől kell egy háromjegyű szám, egyébként rá kell keresni, ami kicsit bonyolultabb.Csak azért fura, mert bár nem tudom, de ha van pl:
K-000234/20
K-000234/22
ezekből ugyanaz a számsor lesz. -
vigyori78
őstag
Sziasztok.
Kis segítségre lenne szükségem, hogy megoldható e és ha igen hogyan:Van egy táblázatom amit egyszerre több gépen használnak,töltenek folyamatosan, meg van osztva közös használatra, lapvédelem aktiválva van, hogy csak az adott cellákba tudjanak írni.
Szeretnék egy olyat, hogy egy adott géphez odamegyek ahol fut a táblázat, akkor mondjuk a C4 cellába menet közben bele tudjak írni de úgy, hogy az adott cella jelszót kérjen és csak úgy lehessen beleírni, tehát ne keljen a lapvédelmet feloldanom stb...
Előre is köszi.
-
vigyori78
őstag
válasz Delila_1 #31596 üzenetére
Köszönöm a segítséget, még annyi kérdésem lenne, az nem megoldható, hogy beleírtam a cellába és rámentek akkor megint jelszót kérjen?
Most ha rákattintok a cellára akkor kéri a jelszót beírom amit akarok rámentek de utána védelem nélkül marad az adott cella míg nincs bezárva addig bárki beleírhat a cellába.
-
lenkei83
tag
Sziasztok!
Az miért lehet, hogy látszólag kikapcsolom a képernyőfrissítést és mégsem veszi fel a false értéket?
Így néz ki a kód:
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Dim cell As Range
Dim cell2 As Range
Application.ScreenUpdating = False
Application.EnableEvents = False
Set ws = Munka8Ha a set ws-nél berakok egy breakpointot és megnézem az ?Application.ScreenUpdating értékét, akkor True-t dob ki.
Érti ezt valaki? Mert én nem.
Az esetleg lehet, hogy ha F8-al megyek végig a kódon, akkor nem lövi le?
Üdv
P.[ Szerkesztve ]
-
Vladek83
tag
Sziasztok!
Van egy táblázatom,tudna valaki súgni, milyen cellaformázást kell alkalmazni, hogy a következőt érjem el (vagy macro kell hozzá?):
="123alma" -> 123alma
üdv,