-
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
-
KBaj
kezdő
válasz Fferi50 #44625 üzenetére
Kedves Fferi50!
Köszönettel olvastam a leveledet. A képletekről írottak nehezen mennek bele a fejembe. De ha így is van, megoldja a programozó, vagyis oldja meg, figyeljen oda. Jó következtetésre jutottam? Különben azóta beépítettem egy külön elindítható leglassabb számolással számoló rutint, ami jelez ha a megfelelő helyen nem ugyanolyan számot talál, nem csak 4 tizedest vizsgálva hanem amennyit lehet.
Az alt billentyű gyorsító hatását nem direkt kerestem és használtam, hanem véletlenül fedeztem fel. Szerintem azért lehet érdekes másoknak is, mert futás közben véletlenül is meg lehet nyomni (gondolok itt az elvetemült felhasználóra), és ha olyan a program, hibás eredményt hozhat.
A minta feltevése nem olyan egyszerű. Több nehezebben megoldható problémával is szembe kell néznem. Az előbbiekben említett programrész egy nagy fájlnak a része. Kísérletezek és sok minden van a fájlban. Néhány jellemzője: Totál Commander szerint 23,8 MB hosszú, van benne 31 db munkalap (nem üresek) , 13 db modul több oltalas VBA-val. Igaz találkoztam már nagyobbal is. Nem egyszerű ezt úgy megtisztítani, hogy publikus legyen, de ha sikerül megküldöm.
Köszönettel:
ui: Most vettem észre, hogy Delila is írt és hiányolja a válaszomat.
Sűrű elnézést kell kérnem Tőle, nem tudom jól használni a weboldalt: azt hittem, hogy amit Ferinek írok azt látja Ő is. Ezért a legutolsó komplett bejegyzésemet és ezt a bejegyzést is megküldöm Neki.
Üdvözlettel. -
KBaj
kezdő
-
Delila_1
Topikgazda
válasz Fferi50 #44634 üzenetére
A módosítás időpontja is lekérdezhető. Ímé pár adat lekérdezése:
Sub info()
Dim fn, size, crdat, uhf, um, fs, lapn
fn = ThisWorkbook.FullName
lapn = ActiveSheet.Name
Set fs = CreateObject("Scripting.FileSystemObject")
Set fn = fs.GetFILE(fn)
size = Format(fn.size, "# ##0")
crdat = fn.DateCreated
uhf = fn.DateLastAccessed
um = fn.DateLastModified
With Sheets(lapn)
.Cells(1, 1) = "Útvonal, név: " & fn
.Cells(2, 1) = "Méret: " & size / 1024 & " KB (" & size & " bájt)"
.Cells(3, 1) = "Létrehozva: " & crdat
.Cells(4, 1) = "Utolsó hozzáférés: " & uhf
.Cells(5, 1) = "Utolsó módosítás: " & um
End With
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.
-
zsolti_20
senior tag
válasz Fferi50 #44634 üzenetére
Szia! Sajnos a filenak maradnia kell a mappában, mert bárki más lekérdezheti a későbbiekben automatizálás nélkül is.
Egy FTP szervert indítottam a PC-n és egy mappát adtam meg FTP mappának. Erről a PC-ről tudja majd mindenki lekérdezni a file tartalmát amikor akarja.
Arra gondoltam, hogy lenne mondjuk TEST1 és TEST2 file. A TEST1 file a 10 percenként beérkező file a TEST2 pedig a beérkezés után 2 perccel automatikus létrehozott másolat.
A TEST2 fileból kérdezni le mindenki, mert lehet másolás közben nem esik szét a file annyira mint amikor a letöltéskor jön létre.
Vagy van egy másik ötletem, az egész file formátumát átalakítom .csv-re ami szinte már csak TEXT file és lehet ott nem lesz semmi probléma. -
Soulfly842
addikt
válasz Fferi50 #44654 üzenetére
Köszi, megnézem!
'Rá' nem gondoltam.
A cellák tartalma viszont nem szám, hanem szöveg, és hogy melyik szöveg hányszor szerepel (külsős adatbázisból legyűjtött karakter pontosan azonos tartalmak) elsősorban arra kell a kimutatás. Nem tudom, hogy ez kezeli-e, de valamikor délután átnézem!
Köszi a tippet!
[ Szerkesztve ]
-
Peterhappy
őstag
-
Peterhappy
őstag
válasz Fferi50 #44682 üzenetére
Basssssszus én voltam a hülye
Szinte biztos voltam benne, de mégis átnéztem minden eshetőséget - vagyis ezek szerint mégsem. Egy rejtett oszlopban csúszott el a képletezés.
Elnézést kérek... szégyellem magam, hú de hülye voltam/vagyok...
Még egyszer nagyon szépen köszönöm a villámgyors segítő szándékot!
-
Louro
őstag
válasz Fferi50 #44689 üzenetére
Köszönöm, akkor marad a ciklus.
Első körben pont egy mini tesztet akartam, hogy melyik a gyorsabb.
1. ha beírom, mintha az Excel-be írnám be a képletet, majd Paste As Values.
2. ha egyből beírom az eredményt a tartományba
3. ha ciklussal végigiterálva beírom az eredményt cellánként.Persze így se lassú a makró, de gondoltam kísérleteznék, afféle személyes fejlődés gyanánt.
Köszönöm!!!!
Mess with the best / Die like the rest
-
-
Louro
őstag
válasz Fferi50 #44689 üzenetére
Amúgy nagyon brutál különbség jött ki a két megoldás között.
40000 sorral:
A For Each ciklussal 10 másodperc alatt iterált végig.
Ha a tartományba "beíratom" a képletet, majd felülírom az értékével a cella tartalmát, akkor 0,1-0,2 másodperc.Pedig azt hittem, hogy ha képletet írok be, akkor a vége felé belassul a sok képlet miatt. Tudom, kikapcsolhattam volna az automata kalkulációt és a végén vissza. Vagy cellánként beiratom. Bár úgy látom, hogy ha a tartományba íratom be a képletet, akkor egyszerre írja be a program.
Mess with the best / Die like the rest
-
jackal79
aktív tag
válasz Fferi50 #44704 üzenetére
Szia!
Van-e makró a munkafüzetben? - NINCS
Milyen módon csináltad meg a legördülő listás választást? Adatérvényesítéssel?
1. kijelöltem az oszlopot
2. Adateszközök/ÉrvényesítésAzt szeretném elérni, hogy azokban az oszlopokban, ahol legördülő lista van csak azok az adatok kerüljenek be, amiket meghatározok. kimutatásoknál (szűrés) lenne fontos, mert ugyanazt az adatot többféleképpen is be lehet írni, így a kimutatás nem lesz pontos. Ha viszont a legördülő listát használjuk az előbb említett problémát ki tudom küszöbölni.
Több személy is használja a file-t.
Köszi! -
dssport
tag
válasz Fferi50 #44712 üzenetére
Megnéztem újra a problémát és összedobtam egy gyors mintát is.... Most úgy látom, hogy nem is a rögzítés a problémám...
Ha a sorrendet fel akarom cserélni "alap" és "adat" lapon egyaránt A, oszlopban található számok szerint csökkenőre, akkor a számítás hibás lesz, mert pl az alapF2 értékét továbbra is adatF10-ről veszi.....
-
dssport
tag
válasz Fferi50 #44714 üzenetére
Az egész táblázat ki van jelölve mindkét lapon
A2<>'adat-rossz'!A10,('alap-rossz'!C10+'alap-rossz'!D10)<>'adat-rossz'!E10) <<<< csak az A2 frissült, mert nincs előtte 'munkalap neve'!
itt ennek kellene lennie az újrarendezés után, hogy jól működjön a táblám:
A2<>'adat-rossz'!A2,('alap-rossz'!C2+'alap-rossz'!D2)<>'adat-rossz'!E2) <<<< csak az A2 frissült, mert nincs előtte 'munkalap neve'[ Szerkesztve ]
-
dssport
tag
válasz Fferi50 #44716 üzenetére
ÁÁÁÁ értem a félreértés okát. visszafelé persze működik. Amikor ,,visszajavítod".
de itt a kiindulási alap nem a -rossz végződésű lapokon van. Azok csak példák a hibára.Próbáld a sima ,,alap" és ,,adat" lapokon megfordítani a sorrendet A oszlop szerint csökkenőre, tehát úgy, hogy a narancs legyen az első a listán. Egyből nem lesz jó.
[ Szerkesztve ]
-
jackal79
aktív tag
válasz Fferi50 #44707 üzenetére
Szia!
"Meg van osztva a fájl és úgy használják, akár egyidőben is vagy külön-külön, egyszerre csak egy személy." - egyszerre csak egy személy tudja szerkeszteni
"Van-e lapvédelem a munkalapon?" - nincs
"Talán szerencsésebb lenne a listát tartalmazó tartományt elnevezni és a névvel megadni az érvényesítésnél." - sorry, de ezt nem értem pontosan. Jelenleg úgy néz ki, hogy egy külön fülön van oszloponként meghatározva a lista.
Legördülő listát már több táblázatban is alkalmaztam és ezt leszámítva eddig működött. Nem értem, hogy mi lehet a gond!
Köszi!
Üdv -
dssport
tag
válasz Fferi50 #44718 üzenetére
Értem. Jó ötlet! A csavar annyi a sztoriban, hogy az eredeti táblázatban az ellenőrzést végző/másik lapra hivatkozó cella a táblázat közepén van mondjuk ,,D" oszlopban...
A;B;C;E;F stb... körülötte mind rendezendő úgy, hogy a feltétel ami szerint rendezek pedig a táblázat legvégén van mondjuk ,,W" oszlopban. Lehet az lenne a legegyszerűbb, ha átrendezném a táblát, ,,D" oszlop tartalmát átraknám mondjuk ,,Y" oszlopba, előtte ,,X" oszlop üres, ott megszakad a táblázat és nem rendezi.Úgy rögzíteném a paneleket, hogy ,,D" oszlop helyére oda tudjam vízszintesen ,,görgetni" az ,,Y" oszlopot, így bár kényelmetlen de azért használható marad és az adatokat is látom 1szerre, 1 képernyőm.
-
dssport
tag
válasz Fferi50 #44722 üzenetére
A feltöltött minta az sajnos vagy szerencsére nagyon messze áll a tényleges táblázattól. Ott csak 1 ellenőrző oszlop van, egy sokkal összetettebb képlettel, ami több értéket is ellenőriz/figyelembe vesz. Az irány jó lesz, így már meg tudom csinálni! Köszönöm szépen a segítséget!
-
KBaj
kezdő
válasz Fferi50 #44726 üzenetére
Szia!
Köszönöm a gyors választ.
Is merem a felhozott javítási módokat, meg is akartam próbálni, de amikor behívtam úgy láttam működik. No akkor -mondom TESZT-. Elkezdtem próbálgatni a korábban felépített funkciókat, de belebukott, mert az Excel összekavarodott és azt mondta: újraindulok. Na elég -mondom- elég. Folytatom egy korábbi, még működő példány újbóli felépítését - nem lesz egyszerű.
Üdvözlet. -
Telda
addikt
válasz Fferi50 #44738 üzenetére
Az a baj, hogy csomó tranzakcióhoz nincs hozzáférésem. Vagy nincs megvéve a modul.
Dolgozz benne, de az infó rejtegetve van...
Igy csak ilyen scriptekkel tudok operálni.
Ezeket a cellákat kellene feltöltenem.
Ez pedig lenne az excel, amiből feltölti.
Valami olyasmi lenne az elképzelésem, hogy az A oszlopot figyelve, amig nem változik az érték, jelen esetben a 4192805 addig nem menti el a BOM-t. Hanem lépked lefelé és feltölti a cellákat. Amint megváltozik, pl.4192806 akkor elmenti és újra kezdi az egészet.
Találtam valami hasnonló elképzelést a sap blogon.
[link] -
DeFranco
nagyúr
válasz Fferi50 #44755 üzenetére
köszönöm
néha elgondolkodom hogy mit össze tudna optimalizálni egy hozzáértő a "kódjaimon" (főleg hogy pl. én nem is deklarálom rendesen a változókat csak úgy odahányok mindent ahogy esik)
szerencsére legalább rendesen futnak és nem annyira bonyolultak hogy komolyabb időt igénybe venne a futásuk, de igyekszem tanulni és fejleszteni magam.
[ Szerkesztve ]
-
ReSeTer
senior tag
válasz Fferi50 #44788 üzenetére
=HIPERHIVATKOZÁS("pdfelérésiútja\pdfneve-0098.pdf";"PDF")
Jelenleg itt tartok. Ezt a sor függvényt nem értem. A sorok sorszáma nem egyezik meg a pdf-ek nevében szereplő számmal.
Tehát mondjuk a lista a 344. sorban kezdődik, és ott van a pdfneve-0098.pdf link.
A 345. sorban már pdfneve-0099.pdf kellene ugyanabban az oszlopban. -
DeFranco
nagyúr
válasz Fferi50 #44800 üzenetére
akkor már ránézhetek a sorfejlécre is, az is bekékül, akkor van gond, ha szűrök valamire, elvégzem rajta a műveletet, csak elfelejtem hogy másik két dologra is szűrtem már tehát eleve részhalmazon dolgozom.
nem életbevágó a kérdés, csak pont most húztam fel magam rajta újra
-
hushshs
kezdő
válasz Fferi50 #44822 üzenetére
Hú. Pár kérdés:
1. A makronál ha beírom azt az Immediate ablakba alul, akkor ha Entert ütök akkor csak ott lesz sortörés.
2. a makro mit csinál amúgy? ez csinálja azt, mintha beleklikkelnék a cellába és ettől frissül?
3. Ha megcsinálom amit írtál így =JOBB(A1;1), akkor asszem az lesz a vége, hogy kiszedi a cellából azon üres sorokat is, amik nem a végén vannak. -
zsolti_20
senior tag
-
-
Csanaky
csendes tag
válasz Fferi50 #44858 üzenetére
Annyi bizonyíték van csak rá, hogy amennyiben azt szeretnék, hogy normálisan tudjanak benne dolgozni, akkor úgy kell megnyitniuk, amíg meg nem javul.
Rengeteg képlet van benne, mivel a havi riportot és annak a ppt-jét is ebből szolgáljuk ki. A nevek definiálását nem tudom, hogy tudom megnézni. A képletekben egész sorok és oszlopok vannak, főleg szumhatöbb, fkeres, vkeres.
Sajnos nem tudok mutatni belle semmit.
Köszönöm! -
napoleon2323
tag
válasz Fferi50 #44845 üzenetére
Szia!
Egyelőre a Te módszeredet próbálom, de valamiért az utolsó (G3-as cellába) #ÉRTÉK hibát dob. Próbálom ki kutatni mi lehet. De különben tökéletesen működik, köszönöm!
#44848 DeFranco: Kész táblát kell feldolgoznom, de jelezni fogom az adatokat begyűjtő Kollégának, hogy használják a lenyílós menü ötleted. Én is ettől tartok, hogy úgysem formátum alapján fogják tölteni a Kollégák...With every conflict I grow stronger!
-
napoleon2323
tag
válasz Fferi50 #44864 üzenetére
Szia!
Köszönöm az ismételt segítséged!
=VÁLASZT(HOSSZ($A3)-HOSSZ(HELYETTE($A3;KARAKTER(10);""))+1;"";"";IDŐÉRTÉK(JOBB(BAL(C3;SZÖVEG.KERES("-ig";C3;20)-1);HOSSZ(BAL(C3;SZÖVEG.KERES("-ig";C3;20)-1))-SZÖVEG.KERES(" ";C3;12))))
Ő lenne az, remélem így kivehető.With every conflict I grow stronger!
-
scha_vagyok
friss újonc
válasz Fferi50 #44870 üzenetére
Jaj, nagyon hálás vagyok a segítségért! Inkább a helyzetet írom le, hátha akkor célirányosabban tudtok segíteni.
Egy 147 soros excelről van szó, bizonyos sorokban szerepel egy "X" (abban a sorban, amelyik a helyes válasz).
Az oszlopokba bemásolásra kerül a delikvensek által adott válasz (sok ilyen oszlop lesz).
Feltételes formázással csak az a sor lesz piros az oszlopban, ahol rossz helyre tette az "X"-et.
Meg kellene számolni, hogy hány piros cella van az oszlopban (majd utána kivonni a helyes válaszok számából).
Fenti modult nem én írtam, gondolom, látszik, hogy egyáltalán nem tudok programozni.
Nagyon köszi minden javaslatot, segítséget! -
Delila_1
Topikgazda
-
erahurka
félisten
válasz Fferi50 #44883 üzenetére
Nem jó sajnos, teljesen szétveri a táblázatot.
Az a baj ezzel az egész dátum konvertálással, hogy utána nem tudom ugyanazt az adatot kinyerni a cella típusának módosításával, hanem generál egy új számot a dátumból. Érthetetlen, hogy ezzel miért nem csináltak még valamit, amikor csv meg mindenféle adathalmaz kezelésére alkalmas a szoftver.
Oké, megvan a megoldás: WPS Office
[ Szerkesztve ]
Új hozzászólás Aktív témák
- Azonnali processzoros kérdések órája
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- Kerékpárosok, bringások ide!
- Aliexpress tapasztalatok
- Nintendo Switch
- Háztartási gépek
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- További aktív témák...
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Ozeki Kft.
Város: Debrecen