Az „Excel” fórum célja, hogy keretet adjon az Excel felhasználók széles táborának tapasztalataik megosztására, és lehetőséget a segítséget kérőknek. Az alábbi összefoglaló azért készült, hogy segítse a helyes kérdésfeltevést.
– Írd le szabatosan a problémát. Úgy fogalmazz, hogy ne csak te magad, de a szakértő is megértse, mire szeretnél választ kapni.
– Írd le, hogy milyen verziójú Excellel dolgozol. (Vagy ha nem – ill. nem csak – Excel, akkor micsoda?)
– Írd le, hogy milyen úton indultál el, és hol akadtál el rajta.
– A kérdés megértése szempontjából sokat segíthet, ha feltölteszt egy képet, amin látszik, hogy mit szeretnél, vagy illusztrálja azt.
– Még jobb, ha feltöltesz egy minta munkafüzetet valahová (pl. data.hu). Feltöltés előtt távolítsd el belőle a nem publikus adatokat.
– Ha a feladat jellege olyan, célszerű az "előtte" és "utána" állapotokat bemutatni. (Miből kellene csinálni mit?)
– Ha VBA kódon kell javítani, másold be a releváns kódrészt. Rövid kód mehet hozzászólásba, hosszú kód inkább ide: http://pastebin.com/
– Ha valami nem úgy működik, ahogy kellene, add meg a rendellenes viselkedés jellemzőit, a hibaüzenetet, és a hibát okozó programsort.
Azt meg lehet-e oldani (2003-as), hogy egy táblán a cella kitöltése, majd az Enter lenyomása után meghatározott cellára ugorjon a kijelölés. Tehát, hogy a meghatározott sorrendben kitöltendő cellák egymás után jöjjenek. Részben egymás alatt, részben egymás mellette vannak.
Az XP a NEVEKre alapból relatívként hivatkozott, amit viszonylag könnyen lehetett módosítani. A 2007-es alapból abszolutként hivatkozik rájuk, amit csak elég körülményesen tudok megváltoztatni a Névkezelőben egyenként, ami kifejezetten idegesítő, ha sok NÉV hivatkozását kell megváltoztani. Nincs erre valami egyszerűbb módszer? De már az is előrelépés volna, ha a cellában lehetne a hivatkozás átírását megoldani.
Sub login() Dim ieApp As Object Dim objBox As Object Dim objBox1 As Object
Set ieApp = CreateObject("InternetExplorer.Application") ieApp.Visible = True ieApp.navigate ("https://website/logon.jsp") Do While ieApp.busy DoEvents Loop On Error Resume Next Do While objBox Is Nothing Set objBox = ieApp.document.getelementbyid("user_ID") DoEvents Loop objBox.Value = Range("A" & CStr(ActiveCell.Row)).Value Set objBox1 = ieApp.document.getelementbyid("password") objBox1.Value = Range("B" & CStr(ActiveCell.Row)).Value ieApp.navigate ("javascript:validate()")
segítséget szeretnék kérni a következőkkel kapcsolatosan:
egy excel táblába szertenék külső adatforrásból adatokat beolvasni. a weblap - forrás - felhasználó nevet és jelszót is kér: olyan megoldást keresek, amivel nem kell minden egyes alkalommal végigzongorázni a "külső adatforrásból beolvasás - weblapról - belépés a megadott jelszóval - majd pedig az importálandó adatok (tábla) kijelölése", csupán az adatok frissitét kellene aktiválnom.
Azt hogyan lehetne megoldani, hogy van egy oszlopom amiben értékek vannak és ez a termeléstől függően változik naponta. De havonta le kell adnom a könyvelésnek. De pl ma már nem tudom leadni a július 1. állapotot. Ezért szeretném valahogy azt rögzíteni egy oszlopba statikusan, mert van, hogy csak 2 hét múlva kérik a júli. 1.ét.
Van egy tábla, amiben az első 3 sor el van rejtve. Ezt láthatóvá szeretném tenni, de nem megy. Hiába jelölöm ki a 4. sort, és húzom felfelé az egeret (a nem látható első 3 sor irányába), a kijelölés megtörténik, de a felfedésre kattintva nem jelenik meg az első 3 sor.
Már van kerekítve is! Megnéztem csak az adott munkafüzetet számolja a látható alapján! Tehát ha újat nyitok akkor alap beállítűson van és a háttérbe számol nem a megjelenítettel! Köszönöm mindenkinek a tanácsokat és a segítséget! Neked is ZYLO !! Ha még sem lesz jó akkor írok! :D
Nem néztem tüzetesen végig a programodat, de valószínűleg az a probléma, hogy a hibakezelés nem törli magát a hibát, így egy második hiba előfordulása már ténylegesen hibát okoz. Nekem is volt hasonló problémám. A hiba törlése nekem megoldotta a problémát. Az összes hibakezelési részbe a programfolytatás elé írd be: If Err <> 0 Then Err.Clear
Tele van illetlenségekkel, mert sosem tanultam programozni. Úgy írok makrót, hogy nagyjából felveszem, amit meg kell csinálni és azt csiszolgatom a feladathoz.
Közben kiderült, csak akkor hal bele a második txt-be, ha az elsőt hibával zárja be (vagyis nem talál megfelelő sztringet.) Tehát tényleg itt van a kutya elásva.
Nem erre gondoltam, de ha később sem akarsz pontosan számolni, akkor ez is jó megoldásnak látszik. A KEREKÍTÉS úgyszintén, bár azt is be kell írni minden kritikus képletbe.
Szerintem, ezt ne állítsd át, mert máskor fogsz rossz eredményeket kapni.
Helyette javaslom a KEREKÍTÉS (régi nevén KEREK) függvény használatát, melynek második paramétere, hogy hány tizedesjegyre kerekítsen (sőt ha negatív számot adsz itt meg, -1->10, -2 ->100, -3->1000 stb. -re fog kerekíteni)
Tegyük fel, a c3-as cellában van az érték, ami több tizedesjegyű, de csak két tizedesjegy kell. Írd be a d3-ba, hogy INT(C3*100)/100, és a továbbiakban számolj ezzel.
Közben megtaláltam a megoldást az hiszem! Az excel a tárolt értékekkel számolt és nem a megjelenítettel! De ha van valakinek még valamilyen ötlete akkor szívesen várom!
Egy biztosítónál dolgozok és van egy excel táblázat ami megkönnyítené a munkámat, de végeredménybe mindig mást hoz ki kis eltéréssel mint amit én számológéppel számolok. 2 tizedesig van kerekítve, de olvastam valahol, hogy más amit mutat és más amivel számol. Szeretném, hogy úgy működjön nekem ez a táblázat, mint ha számológéppel apránként kiszámolnám a dolgot! Tehát megbízható legyen. Egy % számítást kell levezetnem és kifizetésre javasolni adott összeget, ha most más %-al számol mint amit én ott látok akkor elég nagy összegekkel tévedhetek és nem akarom excellel is és sima számolással is kiszámolni. Tehát azt szeretném a táblázat rublikáiba látni amivel ő ténylegesen számol. Vgay úgy mintha én számolnám számológéppel.
Légyszíves segítsetek ha tudtok fontos lenne nekem! Elküldeném a táblázatot is hogy egyszerűbben meg lehessen oldani.