Keresés

Részletes keresés

Angie041 Creative Commons License 2013.05.03 0 0 21209

A kép lemaradt, Office 2007-ben szeretném megoldani a problémát.

Angie041 Creative Commons License 2013.05.03 0 0 21208

Sziasztok! A kérdésem a követlező lenne: szeretnék készíteni egy olyan oszlopdiagramot, mint a mellékelt képen, hogyan tudnám megoldani azt, hogy itt például tantárgyi csoportonként mindig a legnagyobb értékű oszlop kerüljön előre (ami tegyük fel minden tárgy esetében másik hónap) és az csökkenő tendenciát mutasson a csoporton belül, tehát az informatikánál a balról jobbra haladva a lila, piros, zöld, kék sorrend, de ha egy másik tárgy esetén a piros oszlop a legmagasabb, akkor az kerüljön előre, és így látszódjanak az értékek? (Az egyszerű szűrővel rendezés azért nem jó esetemben, mert nem minden tantárgy esetében ugyanaz a tendencia a hónapokon végighaladva.) Köszönöm előre is a segítséget!

wartburg1963 Creative Commons License 2013.05.02 0 0 21207

Kipróbáltam: teljesen korrekt.

Köszönöm a gyors választ.

:-))

 

Előzmény: tbando (21205)
tbando Creative Commons License 2013.05.02 0 0 21206

De a legegyszerübb megoldás, hogy a C oszlopban végigsorszámozod a rekordokat 1-től végig. Aztán csinálsz egy sorbarendezést az AI minősítő oszlopra. És Kész. El vannak választva. Ha vissza akarod kapni az eredeti sorrendet akkor újra egy sorbarendezés, most a C oszlopra. :)))  

Előzmény: tbando (21205)
tbando Creative Commons License 2013.05.02 0 0 21205

Miután megírtam a szűréses választ, beugrott hogy az excel nem hajlandó az írányitott szűrést másik lapra tenni. Ez egy kicsit megbonyolitaná a makróírást, ezért inkább javasonék egy egyszerűbb FKERES-es megoldást.  Ehhez kéne egy kiegészító oszlop a táblázat elött. Tételezzük fel, hogy a C oszlopod üres. Ekkor a C4-be ez jön:

 

=AI4 & darabteli($AI$4:AI4;AI4), és ezt végigmásolod. 

 

Ezután a következő lapokat A4-től sorszámozod 1-től akármeddig, az A1 cellába meg beírod a kritériumot: Pl. Megtartandó.

 

Ezután B4-től jöhet az FKeres. Én ezt javaslom:

 

=hahiba(Fkeres($A$1 & A4;alap!$C$4:AI2000;oszlopNo,0);"").

 

Ezután gombnyomás se kell, a munkalapokon up to date szét vannak választva a beszállítóid. A Hahibás  üresstring miatt, ahol az Fkeres még nem talált adatot, ott az üresnek látszik. (Ezért én általában nem is "" -t használok hanem "."-t, hogy lássam meddig van képletekkel kitöltve az oldal.

 

Az oszlopNo-kat vagy manuálisan adod meg, vagy egy előre besorszámozott sorból származik, vagy akár az aktuális oszlop-1 képlettel határozod meg. Természetesen az A oszlopbeli sorszámok is kiválthatók a sor-3 kifejezéssel.

 

 

 

 

Előzmény: wartburg1963 (21201)
tbando Creative Commons License 2013.05.02 0 0 21204

Még annyit, hogy a makrósítás esetén az alaptáblázat méretét jóval több sorra méretezném, mint az aktuális rekordok száma, hogy az új beszállítók esetén ne kelljen az adattábla méretezésével veszkődni. Vagy a másik megoldás: a makróban átírni a sorok számát jó nagyra.

Előzmény: tbando (21203)
tbando Creative Commons License 2013.05.02 0 0 21203

Én három külön lapra történő írányitott szűrést csinálnék egymás utan.  A megfelelt, az ideiglenes, és a megtartandó kritériumokra. És már szét is van osztva a táblázat. Ha ezt egy gombnyomásra akarnám elvégezni, akkor az első alkalommal bekapcsolnám a makrórögzítőt. Amit bekapcsolva hagynék a táblázatok kicsicsásítása közben is (esetleges fejlécek odamásolása, lapfülek megírása stb).

Előzmény: wartburg1963 (21201)
wartburg1963 Creative Commons License 2013.05.02 0 0 21202

Elnézést, a kép lemaradt...

 

Előzmény: wartburg1963 (21201)
wartburg1963 Creative Commons License 2013.05.02 0 0 21201

Kedves Szakértő Topictársak,

 

az alábbi kérdésem lenne Hozzátok:

 

Adott egy elég terjedelmes táblázat, ahol a cég különböző beszállítói vannak felsorolva; sorokban az egyes beszállítók és oszlopokban a hozzájuk tartozó adatok (cégnév, cím, kapcsolattartó...., minősítés).

A feladat az lenne, hogy a beszállítókat minősítésük (Megfelelt, Ideiglenes, Megtartandó) alapján három, másik fülön lévő, "Megfelelt", "Ideiglenes" illetve "Megtartandó" táblázatba másolja át (a teljes sorokat).

Először síma Fkeres függvénnyel indultam neki, de rájöttem, hogy ez nem túl jó, hiszen így az egyes cél táblázatokban üresen maradnak azok a sorok, amikor az illető beszállító (minősítése alapján) éppen nem az adott táblázatba kerülne. Működik tehát, de a hézagos táblázatokat utólag "reszelni" kell, ráadásul ha a kiindulás táblázatba utólag beszúrok sorokat (új beszállókat), akkor a képletezést is folyamatosan másolni kell.

 

Megoldható lenne-e a probléma egy parancsgombbal, amelynek megnyomására egy VB modul (makró?) elvégezné a kívánt szétválogatást?

Mellékeltem egy képet az egyszerűstett táblázatról.

2003-as ("régi") Excelről van szó.

 

Köszönöm a hozzászólásokat,

 

wartburg

 

tbando Creative Commons License 2013.05.02 0 0 21200

A 21199 poszt neked ment. Csak a motor elzabrálta a nevedet.

Előzmény: pimre (21191)
tbando Creative Commons License 2013.05.02 0 0 21199

Az Fkeres numerikus adatokkal úgyanúgy működik mint a stringekkel.

 

A HAMIS módban (tehát amikor megtaláláshoz teljes egyezést igényel) a numerikus adatoknál ha nem találja meg amit szerinted meg kéne, gyakran az a hiba hogy a 16-ik tizedesben különböznek. Ezért ha a numerikus adataid számítottak, célszerű őket Kerekites (round) függvénnyel azonos tizedesszámra beállítani. 

A stringeknél a stringvégi láthatatlan szóköz okozza leggyakrabban, hogy nem találja meg a keresettet. Ezt a trim függvénnyel küszöbölheted ki. Vagy a Helyette-vel (substitute).

 

Az ismétlődésekkel az a helyzet, hogy mindig az első megtaláltat adja vissza. Ha többször keresel rá, mindig ugyanazt az elsőt adja vissza, hiába szerepel a táblázatban esetleg többször.  Tehát fontos, hogy a keresett táblázatban egy azonosítóhoz csak egy rekord tartozzon, (vagy a keresett tulajdonságra ugyanazt az adatot tartalmazza).  Nálam gyakran előfordult, hogy egy kereső azonosítóhoz több keresett is tartozott, ezért csináltam anno egy makrót, amelyik az Fkeres lefuttatása után átnézi ilyen szempontból a listát, és az ismétlődéseket is kibányássza a táblázat aljára.  Ha érdekel, előbányászom.  

 

A kifejezetten téves találatok tipikus IGAZ módú FKERES hibák.  (Míg a HAMIS módra a HIányzik hiba a jellemző). Ezért nem is értem, hogy nálad IGAZ módban hogy lehetett sok HIÁNYZIk hiba. Az IGAZ módú keresés ugyanis gyakorlatilag mindig teljesül, csak mint írtam az előző posztomban, könnyen hibás eredményt adhat.

 

Az Fkeres tanulmányozásához meg sok sikert. Érdemes megtanulni, mert nagyon hasznos.

 

 

Slient Creative Commons License 2013.05.02 0 0 21198

ld0786@selyeuni.sk

Ezzel már működnie kellene:)

Előzmény: Delila10 (21197)
Delila10 Creative Commons License 2013.05.02 0 0 21197

Küldj egy másik címet, ahonnan küldted, már kétszer visszadobta a postás.

Előzmény: Slient (21194)
Slient Creative Commons License 2013.05.02 0 0 21196

Válaszoltam a mailban. Lenne még egy kis probléma a dologgal:) Makro nélkül nem lehet megoldani? Tiltva vannak a makrok a számítogépeken biztonsági okokból és nem tehetek semmit ez ellen:)

Előzmény: Delila10 (21195)
Delila10 Creative Commons License 2013.05.02 0 0 21195

Visszaküldtem megoldva... szívesen.

Előzmény: Slient (21194)
Slient Creative Commons License 2013.05.02 0 0 21194

Elküldtem...köszönöm!

Előzmény: Delila10 (21193)
Delila10 Creative Commons License 2013.05.02 0 0 21193

Nosza!

A nickemre kattintva küldhetsz levelet.

Előzmény: Slient (21192)
Slient Creative Commons License 2013.05.02 0 0 21192

Szia! Köszönöm a választ, de nem jól magyaráztam el. Elküldhetem az excel fájlt, abban érthetően látszik,h mit szeretnék. Nem nehéz szerintem a dolog, csak én sehogy se tudok rájönni, hogyan tudnám megoldani. Adsz egy mail cimet légyszives?

Előzmény: Delila10 (21190)
pimre Creative Commons License 2013.05.02 0 0 21191

Köszönöm a válaszokat neked és rhcpgergőnek is. Sajnos (vagy talán szerencsére?) nem jött össze sem így, sem úgy, sem amúgy. Talán azért, mert az FKERES inkább numerikus adatokra működik? Vagy a stringek több kérdést vetnek fel? Pl. az ismétlődés kezelését? Nem tudom. Mindnesetre kontrollálhatatlan eredményeket kaptam. Sajnos esetenként kifejezetten téves találatok is jöttek, azaz olyan névhez tartozó adatott mutatott, amelyik nem egyezett meg a párjával.

Ezért végül nekiálltam, és irtam rá egy kis keresőprogramot. Ezt talált is hibákat, ahol valóban nem stimmeltek a nevek, mert az egyik táblázatban némelyik másképp volt írva, mint a másikban. Meg voltak ténylegesen hiányzók is, ahogy jelezted nekem. De ezzel legalább össze tudtam hozni az összetartozókat. Igaz, elment vele néhány óra, de sürgős volt, hogy mára készen legyek vele.

Később azért majd tanulmányozni fogom az FKERES működését. Most legalább vannak megbízható adataim, aminek tudom az eredményét, nincsenek hibái, így tudok vele tesztelni.

Előzmény: tbando (21184)
Delila10 Creative Commons License 2013.05.02 0 0 21190

=E2/FKERES(D2;A:B;2;0)

 

Előzmény: Slient (21189)
Slient Creative Commons License 2013.05.02 0 0 21189

Sziasztok. A segitségetekre lenne szükségem.

Az A1-tol B6-ig terjedő táblázatnak az A oszlopában nevek szerepelnek, a B oszlopban pedig a nevekhez tartozó értékek. A D1-től E6-ig terjedő táblázat egy üres táblázat, aminek ha a D oszlopába beirom az első táblázatban szereplő nevek egyikét a D1-től D6-ig terjedő mezők egyikébe és a tőle jobbra levő cellába az osztandó értéket, akkor a következő cellába irja ki eredményül a két érték elosztott értékét. Egyszerübben:

1. táblázat:                                           2. táblázat

 

Név      Osztó                                                     Név          Osztandó érték              Eredmény
Ádám     4                                    Pl. beirom,h    Dávid                12                                 ?
Béla       6                                     vagy              Zoli                    18                                 ?
Dávid     8
Sanyi    10
Zoli       12
Peti      14

 

Remélem érthetően magyaráztam el. Nagyon szépen köszönöm a segítséget!!!

tbando Creative Commons License 2013.05.01 0 0 21185

Csak a rend kedvéért: Rájöttem, hogy az Fkeres IGAZ paraméteres módjának a kritérium relációját tévesen adtam meg. Az ugyanis nem >=, hanem csak >. Nem gondoltam át eléggé.

Előzmény: tbando (21184)
tbando Creative Commons License 2013.05.01 0 0 21184

Az Fkeres az IGAZ feltétellel (vagy az azzal egyenértékű elhagyásával) csak akkor ad jó eredményt, ha az adataid szigorúan növekvő sorrendben vannak. Mivel ekkor a keresési kritérium nem =, hanem a >=. Amikor aztán a kritériumot kielégítő  első cellát megtalálta, akkor nem erre a cellára, hanem az elötte levőre mutat. Stringek közt keresve nem igen van értelme e módnak, de számok esetén már gyakran. Például ha a legdrágább, de még 1000 ft-ból kifizethető pizzát akarod kiválasztatni az excellel, akkor az Fkerest-t IGAZ feltétellel érdemes használni, mert így akkor is eredményt fog adni, ha nincs pontosan 1000 ft-os pizza. Ami azonban csak akkor lesz garantáltan releváns, ha pizzák növekvő ársorrendben vannak.

 

Érdekes, hogy a fordítottját, tehát a "legkisebb, de még jó" feltételt (tehát <=) az Fkeresnél nem lehet beállítani, szemben mondjuk a HOL.VAN-nal.

 

Tehát, ahogy rhcpgergő írta, esetedben az Fkerest HAMIS feltétellel (vagy az azzal egyenértékű nullával) érdemes használni.

 

És még valam. A fentiek miatt úgy vélem, hogy amikor "a mintegy 100 név egy részében megtalálja a megfelelőt, sok esetben azt adja eredményül, hogy #HIÁNYZIK.", akkor azok zömmel valódi hiányzók. Ugyanis az IGAZ mód csak akkor ad HIÁNYZIK eredményt, ha a listának már az első eleme nagyobb mint a keresettt. Az összes többi esetben ugyanis talál eredményt, csak nem biztos hogy jót. És itt lehet a bibi szerintem akkor is, amikor az ismétlődő nevek közül az egyiket megtalálja, a másikat meg nem. Azaz hogy az ismétlődő nevek nem pontosan úgyanúgy ismétlödnek. Érdemes lenne leellenőrízned. 

 

 

Előzmény: pimre (21182)
Törölt nick Creative Commons License 2013.05.01 0 0 21183

IGAZ helyett HAMIS a képletben helyrehozza?

Előzmény: pimre (21182)
pimre Creative Commons License 2013.05.01 0 0 21182

Nekem is az FKERES használatával van gondom. Nem használtam eddig.

 

Most a következőt szeretném megoldani:

 

Van egy munkafüzetem, benne diákok adatai:

 

          A        B  C   D       E      F                G             H                I       J             K    L

1                                            Név             tantárgy    évfolyam              osztály          szülhely

2                                            Gipsz Jakab                                                                 

 

A szülhely mezőt szeretném kitölteni a másik munkafüzetben lévő Születési hely felhasználásával:

 

                        A             B                                   C          D       E       F       G

1                     Név       Osztály                                                                  Születési hely

2                                                                                                                     

…                                                                                                                    

20                   Gipsz Jakab                                                                               Budapest

 

Az első munkafüzetben a nevek ismétlődhetnek, a másodikban nem.

 

(Sajnos a táblázatokat nem tudtam rendesen beilleszteni a szövegbe, de remélem így is érthető)

 

Ezért az első munkafüzet L oszlopába beírtam a következő képletet:

 

=FKERES(F3;másik!$A$3:$I$120;7;IGAZ)

 

 

És az a gondom, hogy mintegy 100 név egy részében megtalálja a megfelelőt, sok esetben azt adja eredményül, hogy #HIÁNYZIK.

 

Előfordul, hogy az ismétlődő nevek egyik sorában megtalálja hozzá a várost, a másikban a #HIÁNYZIK eredményt hozza.

 

Próbálkoztam az FKERES utolsó paraméterének elhagyásával, próbálkoztam helyette más adatot adni, de csak nem volt jó.

 

Mit rontok el?

 

 

 

Előzmény: tbando (21148)
tbando Creative Commons License 2013.05.01 0 0 21181

Amíg nem jövünk rá, hogy az excelt miképpen lehetne rábírni a dátumigényedhez igazodjon, addig talán hasznos lesz az alábbi makró. A currentregió exceldatumait írja át a kedvedre.  A jelenlegi feltételbeállítással a 01.máj formátumot máj.01-re, amin persze könnyedén változtathatsz, ha szükséges.

 

Sub SKdatum()

Dim a$, cell As Range

ActiveCell.CurrentRegion.Select

For Each cell In Selection

a = cell.NumberFormat

a = Left(a, 1)

If a = "d" Then cell.NumberFormat = "mmm/dd"

Next cell

End Sub

 

 

 

Előzmény: Sánta Kutya (SK) (21163)
tbando Creative Commons License 2013.04.30 0 0 21180

C1:  =ha(b1>b2;a1;a2)

C2: =ha(b1>b2;b1-b2;b2-b1)

Előzmény: Szilvia67 (21179)
Szilvia67 Creative Commons License 2013.04.30 0 0 21179

Segítséget szeretnék kérni egy Excel 97-2003 munkafüzethez

Ha A1 cella "beosztó" - B1 cella "8"

A2 cella "pazarló" - B2  cella "2".

Azt szeretném, hogy a C1-es cellába: Mindig a nagyobb öszeg előtt álló szöveget írja

és a C2-es cellába:Mindig a nagyobb összegből vonja ki a kissebbet.

Tehát ezt szeretném: "beosztó"  - "6".

Előre is köszönöm a segítséget

tbando Creative Commons License 2013.04.30 0 0 21178

Csnálj rá egy makrót. És akkor egy ctrl+Betu átformázza.

Előzmény: Sánta Kutya (SK) (21169)
Delila10 Creative Commons License 2013.04.30 0 0 21177

Csinál az, ha dátumot tartalmazó cellán alkalmazod.

 

A beírt 4.1-et 10.ápr.13-ra formázza. Fütyül az oprendszer beállítására, ami nálam természetesen a magyar dátumforma.  

Előzmény: Sánta Kutya (SK) (21171)
Törölt nick Creative Commons License 2013.04.30 0 0 21176

Bocsánat, afelett elsiklottam.

Előzmény: Sánta Kutya (SK) (21175)
Sánta Kutya (SK) Creative Commons License 2013.04.30 0 0 21175

Köszi, de azt írtam, hogy ott okés.

Előzmény: Törölt nick (21173)
James 42 Creative Commons License 2013.04.30 0 0 21174

Azt is. Én már csak ilyen udvarias, halk szavú fiatalember vagyok. Legalábbis annak idején ezt mondta rólam valaki.  :-)

Előzmény: Delila10 (21165)
Törölt nick Creative Commons License 2013.04.30 0 0 21173

Ha jól tudom, az excel az oprendszerből veszi az alapértelmezett dátumformátumot. A vezérlőpultban a regionális és nyelvi beállításoknál lehet vele szórakozni. Persze lehet, hogy nincs igazam, de egy próbát megér.

Előzmény: Sánta Kutya (SK) (21171)
Törölt nick Creative Commons License 2013.04.30 0 0 21172

2010 alatt elvileg hosszu datum formara rakja rogton a cellat.

Előzmény: Sánta Kutya (SK) (21171)
Sánta Kutya (SK) Creative Commons License 2013.04.30 0 0 21171

Nem, mert mindig másik táblázatban van. :-) Elég gyakran használok dátumot, és idegesít, hogy automatikusan ezt az ortopéd formátumot veszi fel, mintha a középkorban lennénk. Ctrl+Shift+3 nekem nem csinál semmit.

Na mindegy.

 

Előzmény: Törölt nick (21170)
Törölt nick Creative Commons License 2013.04.30 0 0 21170

De feltetelezem ugyanabba a sorba v oszlopba (vagy sorokba es oszlopokba) irod. Nem eleg egyszer megformazni?

 

Probald ki a Ctrl+Shift+3-at a cellan, hatha eleg az neked (gyorsabb mint Ctrl+1-es cellaformazasban turkalni).

Előzmény: Sánta Kutya (SK) (21169)
Sánta Kutya (SK) Creative Commons License 2013.04.30 0 0 21169

Köszönöm, az se normális, akkor marad a cellaformázás minden alkalommal.

Azt hittem, ez egy viszonylag kézenfekvő beállítás lenne. :-(

Előzmény: Törölt nick (21168)
Törölt nick Creative Commons License 2013.04.30 0 0 21168

Aztis csak kezzel tudnad atallitani szerintem.

Vagy ird ki teljesen h 30/04/2013 es akkor ugy marad.

Előzmény: Sánta Kutya (SK) (21167)
Sánta Kutya (SK) Creative Commons License 2013.04.30 0 0 21167

Nem szövegként akarom látni, hanem normális és emberi dátumformátumban.

Előzmény: Törölt nick (21166)
Törölt nick Creative Commons License 2013.04.30 0 0 21166

Sehogy. Vagy irsz ele egy = ha az 1 keplet, vagy egy '-t ha szovegkent akarod latni.

Előzmény: Sánta Kutya (SK) (21163)
Delila10 Creative Commons License 2013.04.30 0 0 21165

A fogalmam sincs választ köszönöd? Szívesen. :D

Előzmény: James 42 (21164)
James 42 Creative Commons License 2013.04.30 0 0 21164

Vagy talán a nick törlésé, bár nyilván az is végleges tiltással jár. De kitiltani nick törlés nélkül is lehet, ha jól tudom.

Amúgy Delilának köszönöm, hogy válaszolt!

Előzmény: Sánta Kutya (SK) (21161)
Sánta Kutya (SK) Creative Commons License 2013.04.30 0 0 21163

Hogy kell rávenni az Excel 2007-et, hogy ja csak begépelem, hogy 4/30, akkor ne alapértelmezetten 30.ápr formában jelenítse meg, amitől hányingerem van? A vezérlőpult beállításai jók.

Delila10 Creative Commons License 2013.04.30 0 0 21162

Djmorphy megvan, robbantomestert nem találom.

Előzmény: Törölt nick (21159)
Sánta Kutya (SK) Creative Commons License 2013.04.29 0 0 21161

Az ilyesmi a teljes fórumról való végleges kitiltás mellékhatása szokott lenni, azt hiszem.

Előzmény: Törölt nick (21159)
Törölt nick Creative Commons License 2013.04.29 0 0 21159

Azt hiszem, djmorphy volt az...

Vajon mivel haragította magára az isteneket?

Előzmény: Delila10 (21158)
Delila10 Creative Commons License 2013.04.29 0 0 21158

Valakinek elveszett a neve, pl. a 21098-as hsz-nél.

Delila10 Creative Commons License 2013.04.29 0 0 21157

Fogggalmam sincs, miért teszi ezt. :(

Előzmény: James 42 (21156)
James 42 Creative Commons License 2013.04.29 0 0 21156

A legújabb fejlemények:

Kipróbáltam azt a scriptet, amit küldtél. Elég érdekes volt az eredmény, legalábbis számomra. Igazából még mielőtt Alt-F11-et nyomtam volna, megnéztem, mi a helyzet egy üres táblázat esetén, és ekkor megvolt a jobb egér menüben a Hiperhivatkozás menüpont. Abban a táblázatban viszont, amit a júzernek használnia kéne, nincs meg, akár lefuttatom a scriptet, akár nem. Fogalmam sincs, hogy miféle trükk lehet egy táblázatban, ami eltünteti, de ezek szerint nem a program hibás, és nem is a felhasználó beállításai, hanem a táblázatban lehet a bibi valahol (kipróbáltuk egy másik lapon is, és ott is ugyanez volt a helyzet). Ha esetleg erre volna ötlet, azt is megköszönném. A júzer azt mondta, megpróbálja átmásolni az adatokat egy másik táblázatba, de ennek az eredményét nem vártam meg. Igazából nem is annyira fontos, mert így is tudja használni, most már kétféle módon is, de a probléma azért még érdekel minket.

Előzmény: Delila10 (21009)
tbando Creative Commons License 2013.04.29 0 0 21155

Levél ment.

Előzmény: Amilo7808 (21152)
Törölt nick Creative Commons License 2013.04.29 0 0 21154

Pont akkora mint hogy masoknak meg magyarul vannak a fuggvenynevek :D

Előzmény: Retro Image (21153)
Retro Image Creative Commons License 2013.04.29 0 0 21153

Ejj, hogy pont az írásjelek nem működnek a billentyűzeteden! Fura hiba, az hétszentség. :o)

Előzmény: Amilo7808 (21152)
Amilo7808 Creative Commons License 2013.04.29 0 0 21152

Kicsit kezdő vagyok ebbe még nem csináltam kérlek a vasco3@freemail.hu címemre vezesd le nekem ha nem zavarlak naggyából értem de mikor és mit másoljak és hogy az nem tiszta

Előzmény: tbando (21151)
tbando Creative Commons License 2013.04.28 0 0 21151

Pont igy. Csak a 10.000-es lesz a nagy és az 5000-es a kicsi. És természetesen az Fkeres b5000-ig keres.

Előzmény: Amilo7808 (21150)
Amilo7808 Creative Commons License 2013.04.28 0 0 21150

Rendben Megcsináltam köszönöm, de hogyan kerül át a nagy 10000 cikkszámos táblázatba

köszi

Előzmény: tbando (21148)
Amilo7808 Creative Commons License 2013.04.28 0 0 21149

Rendben megcsináltam köszi de hogyan kerül át a 10000 cikkszámos listába,

Előzmény: tbando (21148)
tbando Creative Commons License 2013.04.28 0 0 21148

Ha mondjuk az A oszlopban vannak a cikkszámok és a B oszlopban az árak akkor nagy! munkalap (az 5000 cikkszámos) C-oszlopában:

 

=Hahiba(Fkeres(a1;kicsi!$a$1:$b$1000;2;0);b1) és ezt végigmásolod.

 

Az 5000 cikkszámos B oszlopát csak azután töröld, ha elötte a Coszlopot fixáltad.

Előzmény: Amilo7808 (21147)
Amilo7808 Creative Commons License 2013.04.28 0 0 21147

Segitséget kérek!

 

Adott két db excel tábla!

Mindekettőbe megtalálhatók azonos cikkszámok de az egyikbe mondjuk 10000 cikkszám a másikba 5000 cikkszám van és ehez kacsolodnak árak is! Hogyan tudom átmásolni a kisebbik exceltáblát a másikba, hogy lecserélje az azonos cikkszámot és a mellete lévő oszlopba melléirja az árakat?

Köszönöm előre is!

tbando Creative Commons License 2013.04.28 0 0 21146

Nem. Szakértelem. És annak elérhetősége.  

Előzmény: Törölt nick (21143)
pimre Creative Commons License 2013.04.28 0 0 21145

Akadt egy új problémám, segítséget kérek: Egy listboxban szeretném programból beállítani a kezdőértéket.

Erre a ListIndex tulajdonságot használom. Csak az a gond, hogy valamiért nem érvényesíti, hanem továbbra is az első elemre ugrik. Ha viszont valahogy megállítom a programot. Pl. egy Break beállításával, vagy a ListIndex utáni sorba egy msgbox "valami" paranccsal, akkor már érvényre jut.

Mi a megoldás, hogy érvényre jusson a  default érték?

 

 

pimre Creative Commons License 2013.04.28 0 0 21144

Köszönöm. Úgy sejtem, értem, és ki fogom próbálni. Bár biztos lesznek azért még gondjaim a gyakorlati megvalósítással. Majd jelentkezem velük.

 

 

Előzmény: Törölt nick (21120)
Törölt nick Creative Commons License 2013.04.28 0 0 21143

Tárhelyprobléma?

Előzmény: tbando (21142)
tbando Creative Commons License 2013.04.28 0 0 21142

Valóban az lenne a legcélszerűbb. Csakhogy az én adottságaim mellett ez elég körülményes, így elég nehezen szánom el magam rá.

Előzmény: Törölt nick (21141)
Törölt nick Creative Commons License 2013.04.27 0 0 21141

Ha lehetek őszinte, már többször megfogalmazódott bennem, hogy a Te exceled sorozatosan olyan problémákat produkál, amit senki másé.

Szerintem az egész gépet újra kéne húzni, onnantól kezdve, hogy "backup fontos adat", aztán "format C".

Előzmény: tbando (21140)
tbando Creative Commons License 2013.04.27 0 0 21140

Ez az. Gubanc van sajnos. A Personal végig ott volt az általad javasolt mappában (is).  De ami az igazi fejtörést okozza, hogy tegnap még minden külön hókusz-pókusz nélkül behivódott. És nem emlékszem semmi rendkivülire, ami előidézhette ezt a gubancot. Azon töprengek, hogy nem kellene-e újra istallálni az excelt.

Előzmény: Delila10 (21139)
Delila10 Creative Commons License 2013.04.27 0 0 21139

Nem kell átírni. Az indító a personalra nem vonatkozik, azt az előbb írt könyvtárból veszi hivatalból. Ha nem, akkor gubanc van.

 

Indítónak azt írd, ahol az Exceles füzeteidet tárolod.

Előzmény: tbando (21138)
tbando Creative Commons License 2013.04.27 0 0 21138

Kösz. Sajnos hiába jelöltem ki indítókönyvtárnak. Semmi.  Kipróbáltam az Office11\Library-t is. Abból elindult. Ahogy a c:\aaa-ból is. Szemben a két indításra rendszeresített xlstart-tal. Jó lenne tudni az okát.    

Előzmény: Delila10 (21137)
Delila10 Creative Commons License 2013.04.27 0 0 21137

A personal.xls útvonala XP-n

C:\Documents and Settings\Felhasználó\Application Data\Microsoft\Excel\XLSTART

Előzmény: tbando (21136)
tbando Creative Commons License 2013.04.27 0 0 21136

Egy elég furcsa problémába futattam bele. Mi lehet az oka?

 

Az XP gépemen futó excel2003 egyik napról másikra  nem hvta be indításakor a Personal.xls makrófüzetet. Megnéztem a Beállításoknál az indító könyvtár megnevezését: üres volt.  Valahogy kitörlődhetett, gondoltam. Ezért Beírtam: C:Program FilesMicrosoft OfficeOffice11xlstart. |gy se hívta be, noha az indítókönyvtár megnevezést most nem radírozta ki. Erre Personal.xls-t átraktam egy C:aaa nevű mappába, és ezt neveztem meg indítókönyvtárként. Innen normalisan indult.  Mi történhetett az xlstart könyvtárral? Javítható-e?   

Delila10 Creative Commons License 2013.04.26 0 0 21135

Köszönöm, ez csodás. Megtaláltam az idézetet.

Előzmény: Törölt nick (21134)
Törölt nick Creative Commons License 2013.04.26 0 0 21134
Előzmény: Delila10 (21131)
Delila10 Creative Commons License 2013.04.26 0 0 21133

:-)

Előzmény: Sánta Kutya (SK) (21132)
Sánta Kutya (SK) Creative Commons License 2013.04.26 0 0 21132

Cseresznyéért? De. Sapka, sál!

Előzmény: Delila10 (21131)
Delila10 Creative Commons License 2013.04.26 0 0 21131

Télen nem lehet fára mászni?

Előzmény: Törölt nick (21129)
Sánta Kutya (SK) Creative Commons License 2013.04.26 0 0 21130

Hogy ne kelljen a makróimat minden alkalommal engedélyzeni a megnyitáskor.

Előzmény: Törölt nick (21128)
Törölt nick Creative Commons License 2013.04.26 0 0 21129

Tavasz van :)

(Mikor már a fákra is lehet mászkálni, meg ilyesmi.)

Előzmény: Delila10 (21127)
Törölt nick Creative Commons License 2013.04.26 0 0 21128

A cikk szerint sehogy. Szerintem is sehogy :)

 

Amugy milyen gyakorlati helyzetben lehet ez hasznos?

Neked mire kell?

Előzmény: Sánta Kutya (SK) (21122)
Delila10 Creative Commons License 2013.04.26 0 0 21127

Igazad van, ész nélkül írtam.

 

SK: szívesen.

Előzmény: Törölt nick (21124)
Sánta Kutya (SK) Creative Commons License 2013.04.26 0 0 21126

Köszönöm mindenkinek!

Előzmény: Törölt nick (21125)
Törölt nick Creative Commons License 2013.04.26 0 0 21125

Range("A1").NumberFormat = "general"  'általános formátum

Range("A1").NumberFormat = "0"            'egészre kerekítés

 

 

Előzmény: Delila10 (21123)
Törölt nick Creative Commons License 2013.04.26 0 0 21124

Ha RGB függvénnyel számolod a színt, akkor ColorIndex helyett Color javasolt.

 

Range("A1").Interior.Color = RGB(0, 0, 255)

Előzmény: Delila10 (21123)
Delila10 Creative Commons License 2013.04.26 0 0 21123

Range("A1").Font.Bold = True   'bold

Range("A1").Font.Size = 14     'méret

Range("A1").Font.Color = RGB(255, 0, 0) 'piros font

Range("A1").Interior.ColorIndex = RGB(0, 0, 255)   'kék háttér

Range("A1").Interior.ColorIndex = 0   'automatikus háttér szín

Range("A1").NumberFormat = ("yyyy.mm.dd") 'dátum formátum

Range("A1").NumberFormat = "0"  'általános formátum

Előzmény: Sánta Kutya (SK) (21121)
Sánta Kutya (SK) Creative Commons License 2013.04.26 0 0 21122
Sánta Kutya (SK) Creative Commons License 2013.04.26 0 0 21121

Hali! A következő formázások kódjára lenne szükségem VBA-ban:

Adott cella/tartomány legyen

  • bold / nem bold
  • 14 pontos / alapértelmezett
  • adott RGB háttérszínű / alapértelmezett
  • éééé. hhhh. nn. / hhhh. nn. / általános számformátumú

Hol lehet ezeknek egyben utánanézni egyébként?

Törölt nick Creative Commons License 2013.04.25 0 0 21120

Akkor pontosítok. A másodikkal kezdem.

 

2. A belső modul alatt az űrlap saját kódmodulját értettem, mivel ez az, amit űrlap, mint komplett objektum, tartalmaz. Külső modul pedig az, ami az űrlapon kívül van, tehát gyakorlatilag minden más.

 

1. Nem kell nagy dolgokra gondolni, ugyanaz a lényeg, mint a függvényeknél. Tulajdonképpen a form felfogható úgy is, mint egy függvény. Bemenet az, amit beadsz neki, pl. kiindulási értékek, a form pedig valamilyen algoritmus alapján előállítja a hasznos értéket, amit aztán kiveszel belőle és használod. Ez utóbbi a kimenet.

 

Például (egy klasszikus adatbázis feladat):

Van egy elsődleges (adatbeviteli) űrlapom, amelyen a felhasználónak ki kell töltenie a mezőket. E mezők közül több olyan, hogy nem tetszőleges érték megy bele, hanem listából választható, de nem feltétlen ugyanabból a listából. Például az üzleti partnert az üzleti partnerek listájából, a feladat felelősét a dolgozók listájából, az alkatrészt az alkatrészek listájából, stb. Erre a célra tervezek egy másodlagos űrlapot, ami az összes ilyen listából választósdit kezelni tudja.

 

Ebben az esetben a függvény (avagy másodlagos űrlap) bemenete az az SQL lekérdezés lesz, amivel a választható értékek listáját elő tudom állítani az adatbázisból. A kimenet pedig az az érték, amit a felhasználó kiválaszt a listából.

 

Az űrlap belső modulján (lásd 2. pont) megírom az összes kódot, ami a bemenetet lekezeli. Nagy vonalakban:

- lekérdezem az adatbázisból az SQL alapján választható rekordok halmazát

- a rekordhalmazból megállapítom, hogy hány darab oszlop (mező) van

- létrehozok egy listboxot a másodlagos űrlapon, amely a választható értékeket tartalmazza, annyi oszloppal, ahány az adathalmaz megjelenítéséhez kell

- betöltöm az adathalmazt a listbox-ba

- megírom az összes kódot, ami a felhasználó kattintgatásaira reagál, köztük sorbarendezési, szűrési lehetőségeket

- megírom az összes hibakezelő és a felhasználó lecseszéséért felelős programrészt

- megírom azt a kódot, ami az OK gomb megnyomására a felhasználó által kiválasztott értéket előállítja, és visszaadja az elsődleges űrlapnak.

 

Ebben az a jó, hogy akármelyik projektemben fel tudom használni, ahol ilyen listából választósdi játék van. Csak annyit kell tudnom, hogy mit kell beadnom az űrlapnak, tehát mi a bemenet, és hogy a kimenetet hogyan, milyen formában kapom vissza. Az űrlap belső működését akár el is felejthetem (ha sikerült egyszer jól megírni).

 

Egyébként az összes beépített objektum és függvény, amivel találkozol, így működik. A súgóban le van írva, hogy milyen bemenő paraméterek kellene hozzá, és hogy a kimenetet milyen formában kapod meg.

 

A felbontásról.

Ez elég fogós kérdés. Amikor egy ablak különböző felbontásokon is működik, ott többnyire csak arról van szó, hogy felnagyítják/lekicsinyítik a méreteket. Pl. egy kép simán skálázható, vagy egy szövegdoboz is, legfeljebb több/kevesebb szöveg fér bele. Ha viszont egy 1280x1024-as űrlapot zsúfolásig megtömsz vezérlőkkel, bajosan tudom elképzelni, hogy azok el fognak férni 1280x800-on. Ha szellősebben vannak a vezérlők, esetleg egy átrendezés segíthet, de nekem nincs olyan algoritmusom, ami ezt elvégzi.

Igazából két lehetőséget látok. Az egyik, hogy csökkented a form méretét más elrendezéssel, vagy multipage használatával. A másik, hogy csinálsz egy tök ugyanolyan formot más felbontásokra optimálva, és mindig azt használod, ami éppen kell. Ez elég macerás, mert ha az egyiken módosítasz, azt át kell vezetni az összes többire is.

pimre Creative Commons License 2013.04.25 0 0 21119

A kekeckedés nem zavar. Sőt, örülök, mert olyan dolgok végiggondolására késztet, amelyek magamtól nem jutottak volna eszembe.

 

Azért sajnos itt nekem alapfogalmaim hiányoznak.

 

1. Függvényeknél természetesen tudom, de formoknál fogalmam sincs mi a ki- és bemenet. És nem találtam utalást rá hosszas keresgéléssel sem.

2. A külső/belső modul fogalmával sem biztos, hogy tisztában vagyok. Én azt hittem, hogy azzal, hogy ha ugyanabban a munkafüzetben hozom létre a formokat és az általuk meghívott függvényeket tartalmazó modult, akkor az belső modul. És ha átviszem másik gépre a munkalapot, akkor az ott is van. Ki is próbáltam, és minden további nélkül működik a program.

 

Viszont a kipróbáláskor beleütköztem egy új problémába. A képernyőm felbontása 1280x1024. A másik gépé, amin kipróbáltam, 1280x800, mert ott a harver ennyit enged. Programozáskor a formot a teljes képernyő méretére állítottam, és a kilépés gombot az aljához közel helyeztem el.  Viszont a másik gépen futás közben nem látszik ez a gomb. Próbáltam keresgélni megoldást, de nem találtam. 

 

Az világos, hogy 1024 pontot nem lehet elhelyezni 800 ponton. De feltételezem, hogy van valamilyen megoldás erre, hiszen sok program működik különböző felbontások mellett. De fogalmam sincs merre induljak el a megoldás keresésében.

Előzmény: Törölt nick (21117)
Törölt nick Creative Commons License 2013.04.25 0 0 21118

kész van az excel táblám, most pedig szeretném ellátni lapvédelemmel, da van benne egy makrós legördülő menü, és ha levédem akkor nem lehet változtatni rajta. de ha jobb klikk vezérlő formázása védelem nincs kipipálva de mégsem lehet lapvédelem alatt módosítani

Törölt nick Creative Commons License 2013.04.24 0 0 21117

Örülök, hogy sikerélményed van :)

 

Picit kekeckednék azért, mert jobb ma egy véreb, mint holnap kettő.

A form kódjának áttekinthetősége egy dolog, más dolog a hordozhatósága. Van úgy, hogy az ember csinál egy formot egy adott feladatra, aztán pár hónappal később jön egy másik feladat, ahol hajszálra ugyanaz a form jó lenne, vagy csak minimális változtatásokkal. Ha az első feladatnál hordozhatóra írtad meg, akkor könnyű átvinni. Ha nem, akkor nem annyira.

 

A hordozhatóságnak (vagy más szóval újrafelhasználhatóságnak) ebben a kontextusban ilyen kritériumai vannak:

1) A form jól definiált bemenetekkel és kimenetekkel rendelkezik.

2) A form tartalmazza az összes kódot, ami ahhoz kell, hogy a felhasználóval kommunikáljon, illetve a bemenetekből a kimeneteket előálltsa.

 

Ha a formról olyan függvényeket hívsz meg, amelyek külső modulon vannak, a 2. feltétel nem teljesül. Ez nem feltétlenül probléma, csak fel kell jegyezni valahová (célszerűen a form kódlapjának tetejére commentben), hogy a form csak az ilyen-olyan külső modullal együtt használható. Aztán ha kell, akkor együtt vinni mindkettőt a következő alkalmazásba.

 

De különben, ha csak egy adott form használ egy adott függvényt, akkor azt a form saját kódlapján is el lehet helyezni, Private megjelöléssel. Akkor kívül esik az eseménykezelő rutinokon, és nem zavarja az áttekinthetőségüket, de mégis a form része marad.

Előzmény: pimre (21116)
pimre Creative Commons License 2013.04.24 0 0 21116

Még annyit a függvények önálló modulba gyűjtéséről, hogy nagyon nagy segítség. Kiválóan áttekinthetővé tudom ezzel tenni a formok eseményeinek programozását. Mert nem csak azokat feladatokat teszem ki, amelyeket több form is használ, hanem áttekinthetőbbé tudom tenni az egyes események vezérlését. Érthetőbbé tudom tenni az események vezérlését és csökkenteni tudom a kódjaik méretét. Nagyon jó!!!

Előzmény: Törölt nick (21111)
Törölt nick Creative Commons License 2013.04.23 0 0 21115

időközben rájöttem, hogy lehet beállítni hogy több oszlopot is figyeljen

Előzmény: Törölt nick (21114)
Törölt nick Creative Commons License 2013.04.23 0 0 21114

Több FKERES függvény együttes használata megoldás lehet? Mondjuk az egyik kikeresi a pénznemet, a másik a szorzót, stb.

Előzmény: Törölt nick (21109)
pimre Creative Commons License 2013.04.23 0 0 21113

A függvény modulba írva tökéletesen működik. Köszönöm. Valahogy nem gondoltam erre a lehetőségre.

Előzmény: pimre (21112)
pimre Creative Commons License 2013.04.23 0 0 21112

Köszönöm. Egyelőre csak meg akarom érteni. Mert egyelőre látva, hogy mennyire bonyolult, feladtam ezt az elképzelést, és inkább létrehozok egy "átmeneti" munkalapot. Ide írom a módosult adatokat az eredeti munkalappal azonos szerkezetben, és mentéskor csak bemásolom ezt a sort az eredeti munkalapra. Egyébként adatnyilvántartásról van szó, tételenként mintegy 50 adattal. És a felhasználókat meg szeretném kímélni attól, hogy az Excel táblázatban bogarászva kelljen azt kitölteniük.

 

A függvényre vonatkozóakat rövidesen kipróbálom.

Előzmény: Törölt nick (21111)
Törölt nick Creative Commons License 2013.04.23 0 0 21111

Adatok átadása:

Itt van legalább 2lehetőség. Címszavakban:

1) Userform2-n deklarálni publikus változókat, és azoknak értéket adni

2) Property-k használata.

 

Most nem írnám le részletesen őket, inkább mondd el, mi a célja, mire akarod használni.

 

Függvények:

Alapvetően azt kel sztem bekódolni egy Userform-ba, ami logikailag oda tartozik. Ha van egy függvényed, amit több form-ból is szeretnél elérni, az nem tartozik logikailag egyikbe sem. Az ilyen függvényeket én kiiraknám egy normál modulba, publikusan. Akkoraztán akárhonnan meghívhatóak.

Előzmény: pimre (21110)
pimre Creative Commons License 2013.04.23 0 0 21110

Köszönöm. Szép kifejtés volt. Az túlzás, hogy értem, mindenesetre kipróbáltam és működik. És most próbálom értelmezni.

 

A mintapélda rról szól, hogy a meghívott Userform át tud adni adatokat a meghívónak. Azt viszont nem tudom kibogozni, hogy ez működik-e úgy is, hogy ez oda-vissza megtörténjen? Mert olyasmiben gondolkozom, mint a klasszikus funkcióknál. Hogy a hívó átad egy paramétert a meghívottnak, az pedig módosítja az értéket és azt visszaadja. Ehhez a mintában nem találtam meg a kulcsot.

 

A másik - tegnap késő esti - kérdésem azt hiszem, megoldódott a leírásod alapján.  "...az adatok átadását a Form-ok között ... eseményekhez kötjük." Ebből az következik számomra, hogy a Formok között a függvények nem átjárhatók, tehát nem oldható meg, hogy egy adott függvényt csak az egyik form kódjában szerepeltessek, és azt a másik form kódjából is meg tudjam hívni. Jól értem?

 

 

Előzmény: Törölt nick (21108)
Törölt nick Creative Commons License 2013.04.23 0 0 21109

sziasztok, teljesen tanácstalan vagyok,  kellene csinálnom egy excelt, amiben legordülö menük vannak.

es van hozzá egy táblázatom, amiben benne vannak az adatok, a cel az lenne hogy a végén ha a legördulö menuben mindent kivalasztottam akkor egy eredmény kijöjjön.

 

pl kiválasztom, egy oszlopban melyik ország akkor azt szeretném ha odaírná mellé a pénznemét, de az országnak van egy szorzó száma is,  meg egy kódja is es azt is odaírná. fkeressel próbáltam, de az egy cállát ir csak mellé.

Törölt nick Creative Commons License 2013.04.23 0 0 21108

Ajánlom mindazok figyelmébe, akik a "Class Module = megfejthetetlen talány" című műsorban érdekeltek.

Alapvetően a Userform a Class Module-hoz hasonlóan egy objektumosztályt jelent.
Amikor azt mondjuk, hogy
Userform1.Show
akkor valójában az Excel létrehozza a Userform1 nevű objektumosztály egy példányát, amit alapértelmezés szerint ugyanúgy ("Userform1") hívnak, és azt jeleníti meg. Tehát a konkrét műveletet sosem az objektumosztállyal, hanem annak egy példányával végezzük. Legalábbis ezt gondolom, mert leírva nem találtam sehol. Mindenesetre egy Userform1 típusú form megjelenítésének szabályos módja az alábbi lenne:

Dim UF As Userform1
Set UF = New Userform1
UF.Show

Ez azért lényeges, mert ugyanabból az objektumosztályból tetszőleges számú példányt létrehozhatunk, és ez igaz a "Userform1" nevű objektumosztályra is:

Dim UF1 As Userform1, UF2 As Userform1
Set UF1 = New Userform1
Set UF2 = New Userform1
UF1.Show
UF2.Show

 

(Mindkettő egyszerre csak akkor jeleníthető meg, ha a Userform1 osztály ShowModal tulajdonsága False.)

Na most.
Az objektumorientált programozásban az egyes ineraktív objektumok történéseit, felhasználói beavatkozásra adott reakcióit az objektum eseményein keresztül lehet kezelni. Ilyet már mindenki látott, pl. a Munkalap típusú objentum Worksheet_Change eseménye személyében.

Kézenfekvő, és szerintem elegáns és konzisztens megoldás az, ha az adatok átadását a Form-ok között ilyen eseményekhez kötjük.

Ehhez szükséges, hogy az adatot átadni szándékozó Userform-on definiáljunk egy publikus eseményt. Ez nem olyan esemény lesz, ami a felhasználó kattintgatásaira reagál. Ezt az eseményt programból váltjuk ki, de a formon belül. Ugyanakkor a formot meghívó külső egység fogja érzékelni, hogy itt esemény történt, és kezelni azt.

A gyakorlatban hogy néz ez ki.


Van 2-féle Form tervező üzemmódban összerakva: Userform1 és Userform2.
Userform1 az elsődleges űrlap, ez hívja meg majdana másodlagos űrlapot.
Userform1-en legyen
- egy gomb, amelynek neve Btn1
- egy textbox, aminek neve TextBox1

Userform2 a másdolagos űrlap, ebbe kell a felhasználónak adatokat beírni, és ez adja majd vissza az adatokat az elsődleges űrlapnak. Ezen az űrlapon legyen
- 4 db Textbox, amelyeknek neve: Txt1, Txt2, Txt3, Txt4
- egy gomb, amelynek neve btnReturn

Userform2 kódlapján, lehetőleg a lap tetején definiáljuk a "Visszatérés" nevű eseményünket:


Public Event Visszatérés(Érték1 As String, Érték2 As String, Érték3 As String, Érték4 As String)
Lényeges, hogy Public legyen, mert csak ekkor látszik kifelé, a létrehozó felé.
A Userform2 összes többi, gyárilag definiált eseménye Private, ezért nem is látszik kintről.

Szintén Userform2 kódlapján definiáljuk, hogy a btnReturn gomb megnyomása kiváltsa ezt a bizonyos űrlapeseményt:
Private Sub btnReturn_Click()
    RaiseEvent Visszatérés(Me.Txt1, Me.Txt2, Me.Txt3, Me.Txt4)
End Sub

Userform1 kódlapján (legfelül) először is deklarálunk egy Userform2 típusú változót.


Private WithEvents UF As UserForm2

 

A WithEvents kapcsoló kötelező, ellenkező esetben nem tudjuk Userform1-ről kezelni az UF objektum eseményeit.

Aztán Btn1-hetz rendeljük az űrlap megjelenítését:
Private Sub btn1_Click()
    Set UF = New UserForm2
    UF.Show
End Sub

Amint a Private WithEvents UF As UserForm2 deklarációt beírjuk, a kód-ablak fölötti, bal oldali lenyílóban megjelenik az UF objektum, amit ha kiválasztunk, a jobb oldali lenyílóból ki lehet választani az UF valamely eseményét. Mivel UF-nek csak egy eseménye van definiálva, jelenleg nincs sok választási lehetőség, de amúgy lehetne.

Leprogramozzuk az eseményt:
Private Sub UF_Visszatérés(Érték1 As String, Érték2 As String, Érték3 As String, Érték4 As String)
    Me.TextBox1 = Érték1 & "-" & Érték2 & "-" & Érték3 & "-" & Érték4
    Unload UF
End Sub

Használat közben akkor mi is történik?
Usefrom1 létrehoz és megnyit egy Userform2 típusú objektumot, mely utóbbi neve UF.
A felhasználó az UF-en beírja az adatokat a 4 szövegdobozba, aztán megnyomja a gombot.
A gombnyomás (mert így programoztuk le a gomb eseményét) kiváltja az UF űrlap Visszatérés nevű eseményét, amely magában foglalja 4 paraméter átadását.
A Userform1 érzékeli, hogy az UF-en publikus esemény történt, és mivel van hozzá eseménykezelő rutin írva (Private Sub UF_Visszatérés), azt végrehajtja, és ennek keretében beírja a TextBox1-be a UF által visszaadott 4 sztringet kötőjellel elválastzva.
Aztán bezárja az UF űrlapot. (De akár nyitva is hagyhatja, ha éppen arra van szükség.)

Az adatok visszadása bármilyen lehet. Sok adat esetében érdemes tömböket összeállítani, és/vagy egyéni típusokat használni, és akkor egy-két változóban többszáz vagy többezer adat átadható a másik űrlapnak.

Remélem, érthető volt.

Előzmény: pimre (21106)
Sánta Kutya (SK) Creative Commons License 2013.04.23 0 0 21107

Ha simán megosztok egy táblázatot, akkor ugye bárki más is le tudja venni a megosztást, nem csak az eredeti megosztó személyiség?

 

Valamint ha van egy megosztott táblázatban egy szürke pipa a megosztásnál, és senki nem tudja levenni, annak mi lehet az oka, és hogy lehet gyógyítani?

pimre Creative Commons License 2013.04.22 0 0 21106

Előre is köszönöm. És ha nem vagyok nagyon telhetetlen, akkor ugyanez függvények vonatkozásában is érdekelne, hogy ne kelljen több helyre bemásolnom az ismétlődő függvényeket. Nem mintha nagy munka lenne, de hát az igényes, struktúrált programozás kritériumainak nem igazán felel meg.

Előzmény: Törölt nick (21105)
Törölt nick Creative Commons License 2013.04.22 0 0 21105

Van rá megoldás, holnap elmesélem.

Előzmény: pimre (21104)
pimre Creative Commons License 2013.04.22 0 0 21104

Nagy gondban vagyok. Hogyan lehetséges a különböző UserFormok között változókat továbbadni. Reménytelenül keresgélea google-ban. Olyan tanácsokat látok, amire magam is gondoltam, csak éppen nem működnek.

- Próbáltam az első használt UserFormnál (ahonnan a többieket hívom) Public-nak deklarálni, de nem segített.

- A másik tanács az volt, hogy a General Deklarációknál kellene Public-ba tenni, de nekem az sem működött.

- Volt olyan tanács is, hogy az egyes vezérlőelemek tag-jébe kell írni. De ez sem jött be, mert a vezérlőelemet nem tudom elérni egy olyan UserFormban, amelyikben nem szerepel.

 

Végső soron megoldás lesz, hogy egy átmeneti munkalapon tárolom a kb. 50 változómat, de valahogy nehézkesnek érzem, és semmiképpen sem elegánsnak.

 

Mellesleg a végleges helyükre azért nem akarom kiírni, mert erre csak akkor kerítenék sort, mikor az operátor kéri a mentést. Minél kevesebb esélyt szeretnék adni félbemaradt mentésre.

 

Tud valamelyikőtök ennél jobb megoldást?

 

tbando Creative Commons License 2013.04.20 0 0 21103

A tegnap lementett fájlom ma azzal az üzenettel örvendeztett meg, hogy a beolvasáskor az Excel olvashatatlan tartalmat talált a benne és akarom-e hogy kijavítsa. Akartam. Kijavította. A problémám csak az, hogy a hibajelentésből nem derűlt ki, hogy melyik rekordot törölte (látszólag semelyiket).

 

Tudna valaki segíteni a hibaüzenet értelmezésében?

 

 

 

 

 

 

 

tbando Creative Commons License 2013.04.20 0 0 21102

 tartok tőle hogy valami fontos változtatás az egyik excel-be a másik fontos változtatás az üzközésesben hajtom végre..

 

Ennek elkerülésének a legkézenfekvőbb módja, ha az egyik filet (szerintem az ütközésest) törlöd, illetve félrerakod egy elkülönített mappába. 

Előzmény: djmorphy (21099)
tbando Creative Commons License 2013.04.19 0 0 21101

Szóval az a probléma, hogy másnap reggel 2 filet is találsz a mappában? Egy készlet.xlsx-t és egy készlet(ütközés).xlsx-t?  Még ilyennel nem találkoztam.

Lövésem sincs mi lehet a háttérben.  Egy ötlet: Végig gondolnám a 29 munkafüzet kereszthivatkozásait. Hátha azok okozzák az ütközést.

Előzmény: djmorphy (21099)
Törölt nick Creative Commons License 2013.04.19 0 0 21100

Szerintem hanyagolni kellene a total commandert. Ez nem excel viselkedés, kétlem, hogy ott lesz a megoldás.

Előzmény: djmorphy (21099)
djmorphy Creative Commons License 2013.04.19 0 0 21099

Eddig még semmilyen kérdésbe nem futottam bele. Egyszer csak (többnyire másnap reggel) látom, hogy készlet.xlsx és készlet[ütközés].xlsx. Természetesen jó dolog, hogy nem irogat random mód felül dolgokat! :) De jelenleg 29 MF-ből áll és tartok tőle hogy valami fontos változtatás az egyik excel-be a másik fontos változtatás az üzközésesben hajtom végre... Ezért szeretném valahogy megoldani hogy rákérd mielőtt létrehozza. Vagy legalább abban a pillanatban figyelmeztet és nem egy egész napi munkát kell összehasonlítani, hogy mi is az eltérés.

Előzmény: tbando (21082)
Törölt nick Creative Commons License 2013.04.19 0 0 21098
Előzmény: Törölt nick (21097)
Törölt nick Creative Commons License 2013.04.19 0 0 21097

Van pl. CTREEVIEW nevű és egyéb kulcsszavakat (tree, hierarch, stb) tartalmazó vezérlő, de az ördög tudja hogy kell és mire ezeket használni :(

Előzmény: Retro Image (21095)
Törölt nick Creative Commons License 2013.04.19 0 0 21096

nem kerestem vezérlőelemet erre - egyébként kétlem, hogy lenne. Ha van is, akkor is xml alapú.

Egyébként most már biztos vagyok benne, hogy xml sémákkal kell ilyet készíteni, ami aztán excelben használható.

 

<iframe frameborder="0" scrolling="no" style="border:0px" src="http://books.google.hu/books?id=xYEyK_7TWP8C&lpg=PA292&ots=Pr4BHdo4oJ&dq=import%20xml%20tree%20to%20excel&pg=PA286&output=embed" width=500 height=500></iframe>

 

http://books.google.hu/books?id=xYEyK_7TWP8C&lpg=PA292&ots=Pr4BHdo4oJ&dq=import%20xml%20tree%20to%20excel&pg=PA286#v=onepage&q=import%20xml%20tree%20to%20excel&f=false

 

 

 

Előzmény: Retro Image (21095)
Retro Image Creative Commons License 2013.04.19 0 0 21095

Én inkább úgy gondolkodnék, hogy létezik-e olyan vezérlőelem, amivel ez a feladat megoldható. Ha van, akkor azt Excelből is lehet használni. Rengeteg custom vezérlő van. Ezek úgy készülnek, hogy valaki leül és megírja pl. C++ vagy Delphi nyelven, aztán közzéteszi. Nem biztos, hogy a MicroSoftra kell várni ez ügyben. Aztán persze lehet, hogy meg kell venni, de ez van.

 

Ha meg nincs olyan, ami kell, még mindig meg lehet írni SK. Príma lehetőség a Class Modulok felhasználására :)

Előzmény: Törölt nick (21093)
Törölt nick Creative Commons License 2013.04.19 0 0 21094

Az xml lesz a barátom. Csak tudnám mi az. Újabb feladat/tanulnivaló, szeretjük.

Van valakinek tapasztalata itt?

Vagy tudtok jó leírásokat esetleg, fórumokat?

Előzmény: Törölt nick (21093)
Törölt nick Creative Commons License 2013.04.19 0 0 21093

Hát, a pivot jó is meg nem is. Próbálkozom vele még mindig. Nem igazán erre találták ki. Egy nagy faszerkezet karbantartása/módosítása nehézkes.

Microsoft Treeview Control-nak utánanézek.

Kell hogy legyen valami, szerintem alap. Excelben nincs ilyen funkció, nem is erre való egy táblázatkezelő, de valamilyen más környezettel együtt kell hogy legyen valami. (Pl. MS Visio, vagy valamilyen xml-es lehetőség excelen belül akár)

Előzmény: Törölt nick (21092)
Törölt nick Creative Commons License 2013.04.19 0 0 21092

Nem állítom, hogy értem a kérdést, de pivot tábla nem jó erre?

 

Van még egy tippem: a Microsoft Treeview Control. Userform esetén a Tools/Additional Controls menüpont alatt érhető el.

Nem emlékszem, hogy használtam volna bármire, de az biztos, hogy ez a fastruktúra egyfajta reprezentációja, és mint ilyen talán jó lesz valamire.

Előzmény: Törölt nick (21079)
pimre Creative Commons License 2013.04.19 0 0 21091

A szerdán megtalált honlap mellé időközben találtam egy másikat: http://www.globaliconnect.com/excel/index.php?option=com_content&view=article&id=125:userforms-in-excel-vba-userform-basics-add-controls-dynamically-at-run-time-using-the-add-method-userform-controls-a-snapshot&catid=79&Itemid=475

 

Szintén kötelességemnek tartom közkinccsé tenni, mert ez is nagyon jól használható a UserForm vezérlőelemek megismerésében. És ez azokat is elmagyarázza, amelyek a korábban belinkelt ozgrid féle anyagban (http://www.ozgrid.com/Excel/free-training/ExcelVBA2/excel-vba2-index.htm) nincsenek részletezve.

 

Előzmény: pimre (21058)
Delila10 Creative Commons License 2013.04.18 0 0 21090

Az AfterUpdate akkor indul, mikor bevitted az adatot, és a következő objektumra lépsz. Ha nincs a formon következő objektum, nem indul az eseménykezelő makró. Valószínűleg ez történt.

 

ControlSource feladatát jól értelmezed. Egy ComboBoxnak legegyszerűbben így adhatod meg a listát a RowSource tulajdonságnál, amiből majd választhat a júzer.


A lentebb említett VL, VT, FL és FT Visible tulajdonságait eleve False-ra állítottam.

Előzmény: pimre (21087)
Sánta Kutya (SK) Creative Commons License 2013.04.18 0 0 21089

A wiki egy általános fogalom, kb. mint a táblázatkezelő. Én a konkrét wikiszoftverek közül a MediaWikire esküszöm, amelyik a Wikipédiát is hajtja. Szabad szoftver, kell alá PHP meg MySQL, ha egyébként nincs a gépeden, akkor egy pár perces XAMPP-telepítés segít. Nagy a támogatottsága és az ismertsége. Szerepel azon a listán, amit linkeltél.

Előzmény: pimre (21072)
pimre Creative Commons License 2013.04.18 0 0 21088

Az imént azt írtam, hogy "Ez meg csak kiírta, de nem jegyezte meg." Időközben rájöttem, hogy én értettem félre valamit. Hiszen a TextBox, mint objektum, nem "jegyez meg" semmilyen adatot. Hanem a ControlSource gondoskodik arról, hogy a munkafüzetbe kiírt adat megjelenjen kedőértékként az objektum használatakor.

 

Ugye, jól értelmezem?

Előzmény: pimre (21087)
pimre Creative Commons License 2013.04.18 0 0 21087

Elnézést a pontatlan fogalmazásért. Sajnos még csak ismerkedem ezekkel a UserFormhoz kapcsolódó fogalmakkal.

 

Azért kipróbáltam a kódodat. Érdekes, jó tudni, hogy ilyen is van. (Eredetileg hosszasan keresgltem, hogy lehetne mozgatni a UserForm-on a ScrollBart, mire kiderült, hogy ilyen lehetőség nincs. De jó, hogy legalább tesztelni lehet, hogy mit kocogtatok az egérrel.

 

Ami a megoldást illeti, magam is hasonlóra leltem pár perce. Beírtam a ControlSource-hoz, hogy "munka1!a1", és máris kiírta és megjegyezte. Megpróbáltam az általad javasolt after_update-el, ami meglepetésemre nem csinált semmit. Aztán vettem helyette Change eseményt. Ez meg csak kiírta, de nem jegyezte meg. Kezd egy kicsit konfúzus lenni a dolog.

 

Amúgy nem baj, mert az érdemi munkát amúgy is úgy tervezem, hogy rekordonként (soronként) változókba mentem az adatokat, és csak az új tételre való áttérésnél mentem a munkalapra az összes adatot egyszerre. Nehogy bármilyen okból félig mentett adatsor keletkezhessen. Például kávézás, vagy trécselés közben történő áramszünet, vagy ottfelejtett gép kikapcsolás stb.

 

Előzmény: Delila10 (21086)
Delila10 Creative Commons License 2013.04.18 0 0 21086

Ebből kiderült, hogy nem egyről beszélünk. Te scrollbar(oka)t tettél a formra, én meg a formnak a scrollbars tulajdonságát állítottam 3-ra, ami a form alján és jobb oldalán jelenít meg két gördítősávot. Ezek nem gördíthetőek, a scroll esemény azt érzékeli, melyikre kattintottam. Ezt írtam hozzá (jobb ötlet híján):

 

Private Sub UserForm_Scroll(ByVal ActionX As MSForms.fmScrollAction, ByVal ActionY As MSForms.fmScrollAction, ByVal RequestDx As Single, ByVal RequestDy As Single, ByVal ActualDx As MSForms.ReturnSingle, ByVal ActualDy As MSForms.ReturnSingle)

    If ActionX Then

        VL.Visible = True: VT.Visible = True

        FL.Visible = False: FT.Visible = False

        VT.SetFocus

    Else

        FL.Visible = True: FT.Visible = True

        VL.Visible = False: VT.Visible = False

        FT.SetFocus

    End If

End Sub

 

A VL egy label, a Caption tulajdonsága "Vízszintes érték", a VT ennek a textboxa.

Az FL és FT a fentieka függőleges párja.

 

A TextBox1 AfterUpdate eseményébe beírhatod: Sheets("Adatok").Range("A1")=TextBox1, ezzel rögzítheted a scrollbarjaid értékét a füzetedben. Az adat rögzítését egy gomb click eseményéhez is rendelheted.

Előzmény: pimre (21085)
pimre Creative Commons License 2013.04.18 0 0 21085

Egyelőre csak tanulásra használom. Úgy döntöttem, hogy amíg nem ismerem a Controls Toolbox valamennyi elemét (most csak az alaphelyzetben elérhető 16-ra gondolok), addig nincs értelme nekiállni egy adatfelvivő program megírásának. Már két napja ezt csinálom, és még két fontos (Frame és TabStrip) hátravan.

 

Viszont ezt az ActionX-et nem értem. Amivel sikerült Jimmy javaslata nyomán a TextBoxban megjeleníteni a Scrollbox görgetősávja használatakor az értékeket, az a következő volt:

 

Private Sub ScrollBar1_Scroll() 

TextBox1.Value = ScrollBar1.Value * ScrollBar1.LargeChange      ' vagy .SmallChange is lehet

End Sub

 

Még mindig van egy bökkenő, ugyanis a fenti értékadás csak a képernyőn adja át, és jeleníti meg az értéket, a userform bezárásakor megmarad a textbox eredeti értéke.

 

Miközben ugyanazon a Userformon belül egy másik Textboxnál egy másik ScrollBar-al (ahol a dátum módosítást teszteltem) megmarad az érték a bezárás után:

 

Private Sub ScrollBar2_Change()

TextBox2.Value = Format(Date + ScrollBar2.Value, "yyyy mmm d dddd")

End Sub

 

Feltétezem, hogy valamelyik tulajdonságot állíthattam el, de a fene se ismeri ki magát ezeken:-)))

Előzmény: Delila10 (21084)
Delila10 Creative Commons License 2013.04.18 0 0 21084

Mire használod? Most csak ennyi jutott eszembe a szegényes fantáziámmal:

 

    If ActionX Then

        TextBox1 = "vízszintes"

    Else

        TextBox1 = "függőleges"

    End If

Előzmény: pimre (21083)
pimre Creative Commons License 2013.04.18 0 0 21083

Igen, köszönöm. Ezt kérdeztem, csak elfelejtettem megírni, hogy egy UserFormban van a gondom. Végül nyomravezettél. Ugyan a MouseMove eseményben nem találtam meg a megoldást, de a ScrollBar_Scroll eseményben korrigálva a TextBox értékét, sikerült megtalálnom a megoldást.  

Előzmény: Törölt nick (21078)
tbando Creative Commons License 2013.04.18 0 0 21082

A leírásodból nekem úgy tűnik, hogy nem az excel hozza létre az ütköző fájlokat, hanem te, az újbóli megnyitással. Ilyenkor az excel a lehető legokosabbat teszi: rákérdez hogy melyik filet akarod a továbbiakban használni. Legalábbis a 2007-ben  ez történik. A 2010-ben már nem?

Előzmény: djmorphy (21071)
tbando Creative Commons License 2013.04.18 0 0 21081

Az osztály modul értelmezése nekem is sok fejtörést okozott. Kösz a príma leírásodért. Így már kezdem kapisgálni.

Előzmény: Törölt nick (21077)
tbando Creative Commons License 2013.04.18 0 0 21080

Szóval a feladatkezelővel lehet letesztelni? Ezt nem tudtam.  Kösz.

Előzmény: Törölt nick (21070)
Törölt nick Creative Commons License 2013.04.18 0 0 21079

Köszönöm szépen a kimerítő leírást, le is mentettem favoritok közé. A leírtak alapján valóban hasonlít az sql-ben használható view-k gyakorlati hasznára, így értem. Egy következő munkámhoz megpróbálom használni majd, igazából akkor fogom műszakilag is megérteni.

 

Más, és kicsit off:

 

Tudsz arról valamit, hogy az office valamely programja képes lehet (acces, excel, visio)  fastruktúrát kezelni/használni. A cél, hogy fastruktúrát képes legyek használni excelben vagy accesben. A cél, hogy főkönyviszámok  ft értékeit egy fastruktúra szerint tudjak részösszegezni.

 

Előzmény: Törölt nick (21077)
Törölt nick Creative Commons License 2013.04.18 0 0 21078

Nem vagyok benne biztos, hogy ezt kérdezed, de szerintem a UserForm MouseMove eseménye körül kellene keresni a megoldást.

Előzmény: pimre (21076)
Törölt nick Creative Commons License 2013.04.18 0 0 21077

"A "Class Module" funkció szerint olyasmi lehet, mint mssql-ben a tárolt eljárások (stored procedure), vagy a view-k"

 

Ezt nem tudom.

Viszont RHCPgergo jól mondta, saját objektumokat lehet létrehozni velük. Pontosabban objektum osztályokat, vagy nevezhetjük őket típusoknak, ez nyelvfüggő. Azért lehet kicsit nehéz megérteni, mert általában ezeknek az objektumoknak nincs vizuális megjelenésük. De az excel vizuálisan megjelenő objektumain jól le lehet vezetni az analógiát.

 

Pl. a Range az egy típus, konkrétan a Range("A1") pedig egy Range típusú objektum.

A Range típusnak vannak tulajdonságai (Property), vannak hozzá kapcsolódó eljárások (Method). Eseményei (Event) ugyan nincsenek, de éppenséggel lehetnének. A típus definíciója tartalmazza mindazt, ami a típusból generált egyéni objektumra jellemző.

 

Amikor azt mondod, hogy Range('A1").Value, akkor a .Value property használatát a Range típus definíciójából vesz elő a rendszer, és vonatkoztatja azt konkrétan az A1 cellára. Az A2 cella esetében ugynez: a .Value property használatát a Range típus definíciójából vesz elő a rendszer, és vonatkoztatja azt konkrétan az A2 cellára.

 

Így tehát a Range típus .Value tulajdonságának leprogramozását egyszer kell megcsinálni, és az utána minden Range típusú objektumra érvényes lesz.

 

Ennek analógiájára kell elképzelni a Class Module-okat. A Class Module arra való, hogy azon 1 azaz egy darab objektumtípust definiálj. Meg kell adni a típus nevét, ez a fenti példában "Range", én mondjuk elnevezem az objektumtípusomat "Hűtőszekrény"-nek.

Innentől kezdve bármelyik (normál) makróban létre tudok hozni Hűtőszekrény típusú változókat.

Pl.

Sub Macro1

    Dim hsz1 As Hűtőszekrény, hsz2 As Hűtőszekrény

 

    Set hsz1 = New Hűtőszekrény

    Set hsz2 = New Hűtőszekrény

    'kód

    'még több kód

End Sub

 

És akkor van két Hűtőszekrényem, amelyek kezelése, viselkedése egyforma, de mégis egymástól független objektumok.

Az egyiket kinyithatom, a másikat zárva tarthatom.

Az egyikből átrakhatok húst a másikba.

 

A Hűtőszekrény nevű típus összes tulajdonságát, eseményét, eljárásait a hozzá tartozó Class Module-on kell megírni, a szokásos VBA kóddal.

 

Én pl. egyszer írtam egy olyan objektumtípust, amivel ADODB kapcsolaton keresztül adatbázist kérdeztem le.

Olyan tulajdonságai voltak, hogy

- DBPath (adatbázis elérési útvonala)

- SQL

- Visszaadott rekordok 3 különböző módon (lista, tömb, RecordSet)

Olyan metódusai voltak, hogy

- Connect (kapcsolódik az elérési útvonalon megadott adatbázishoz)

- Execute (végrehajtja az SQL propertyben beadott SQL utasítást)

- Retrieve (lekérdezi az SQL propertyben beadott SQL lekérdezést)

 

Amikor használni akartam, csak annyi kellett, hogy:

Sub Macro1

    Dim myQuery As clsQuery

 

    Set myQuery = New clsQuery

    With myQuery

        .DBPath = "D:\mappa\DB.xls"

        .Connect

        .SQL = "SELECT FirstName, LastName FROM Employee"

        .Retrieve

        'és itt még kivenni belőle a visszaadott rekordokat

    End With

End Sub

 

Párhuzamosan több clsQuery objektumom volt, egymástól függetlenek, mindegyikkel azt csináltam, amit akartam, de ha javítani kellett a kódon, vagy új funkcióval bővíteni a típust,  akkor azt csak egy helyen kellett megtennem: a típust definiáló Class Module-on.

 

Remélem ez segít.

Előzmény: Törölt nick (21075)
pimre Creative Commons License 2013.04.18 0 0 21076

Egy kérdés: Hogyan tudom elérni, hogy a ScrolBar mutató  húzásakor is látszódjon a hozzátartozó TextBoxban is a változás. Pillanatnyilag csak azt tudom elérni, hogy amikor elengedtem a mutatót, akkor mutatja csak az eredményt. 

 

Remélem, érthetően fogalmaztam meg a kérdést.

 

Törölt nick Creative Commons License 2013.04.18 0 0 21075

A "Class Module" funkció szerint olyasmi lehet, mint mssql-ben a tárolt eljárások (stored procedure), vagy a view-k

(?)

hm...

Előzmény: Törölt nick (21064)
Törölt nick Creative Commons License 2013.04.18 0 0 21074

Köszi szépen, hogy visszabogarásztad a hsz-eket.

Emlékeztem, hogy volt Tőled ezzel kapcsolatban hsz. (Sőt, már magam is feltettem itt ezt a kérdést.)

A 15462-ben az előzményeket trölték, a 13636-nál szintén vannak már lyukak az előzményben.

A 9698 egy jó példa, kipróbáltam. Még tanulmányozom ezt is + amit találni külföldi fórumokon.

 

Sajnos még mindig nem értem a gyakorlati jelentőségét - pedig tuti hogy sok mindenre jó lenne. Viszont amíg nem értem, nem fog eszembe jutni, hogy ezt kell használnom :(

Sokszor érzem úgy, hogy egy-egy "fejlesztői projektet :)" lehetne jobban is csinálni, jó lenne továbblépni. Ezt a class modult meg csak évek óta nézem, hogy "ott van". Elég volt.

Előzmény: Törölt nick (21064)
pimre Creative Commons License 2013.04.18 0 0 21073

Köszönöm a figyelmeztetést. Így elállok attól, hogy használjam is, mert amin dolgozom, azt valóban más gép(ek)en fogják használni.

Előzmény: Törölt nick (21068)
pimre Creative Commons License 2013.04.18 0 0 21072

Van linked hozzá? Én ilyesmit találtam, de nem tudom ez lenne-e az: http://www.opensource-it.com/open_source_wiki_software

 

Előzmény: Sánta Kutya (SK) (21067)
djmorphy Creative Commons License 2013.04.18 0 0 21071

Sziasztok!

 

Segítségeteket kérném abban, hogy van-e valami megoldás arra, hogy az Excel 2010 ne hozzon létre ütközéses file-okat.

Szerintem azért hozza létre mert megnyitom egyszer majd nem figyelek és nyomok egy entert a TotalCommanderben a fileon de akkor nem a megnyitott excel-t hozza előtérbe hanem megnyitja újból. De ez csak feltételezés. Mindig csak azt veszem észre Total Comannderben, hogy van ütközéses file.


Esetleg mi más okból hozhat létre ütközéses file-okat? 

Törölt nick Creative Commons License 2013.04.18 0 0 21070

Tudni nem tudom, találgatok.

Szerintem akkora különbség nem lehet, ami a manapság használatos RAM mennyiségek mellett szignifikáns lehetne.

 

Gyorszteszt:

Üres munkafüzettel a TaskManager-ben Excel foglal 14.5 megabájt memóriát,

egy 43000 soros táblázattal megnyitva foglal 34 megabájtot.

 

Nekem úgy tűnik, ez erőforrás szempontból tökmindegy.

Előzmény: tbando (21066)
Törölt nick Creative Commons License 2013.04.18 0 0 21069

"[...] jó lenne egy olyan hely [...] ahol összegyűjthetnénk a leghasznosabb hasonló tananyagokat. Esetleg létezik már ilyen?"

 

Az ötlet már felmerült pár ezer hsz-szel ezelőtt, de nem volt önkéntes, aki a tudásbázis koordinálását elvállata volna.

 

 

 

Előzmény: pimre (21058)
Törölt nick Creative Commons License 2013.04.18 0 0 21068

"Viszont megtaláltam azt, ami nincs az eredetiben - a Calendar Control 11.0 vezérlőt - és ez jónak tűnik."

 

A Calendar Control vezérlővel vigyázni kell. A 11.0-ás naptár alapértelmezésben a 2003-as Office tartozéka, ami ráadásul az Office  "szokásos" telepítéskor fel sem kerül a gépre. Tehát nem magától értetődő, hogy ha a kis programodat átviszed egy másik PC-re, akkor az ott működni is fog, még akkor sem, ha 2003-as Excel van rajta. Ha meg más verzió (bármelyik másik verzió), akkor szinte biztosan nem.

 

Megoldható persze, hogy a letöltöd az mscal.ocx 11.0-s verzióját, és telepíted mindegyik célgépre, csak macerás. Egyébként itt egy letöltési lehetőség és telepítési segédlet:

http://www.fontstuff.com/mailbag/qvba01.htm

 

Tudomásom szerint univerzálisabban használható a Microsoft Date and Time Picker Control, bár kétségkívül nem néz ki olyan jól, mint a Calendar.

Előzmény: pimre (21065)
Sánta Kutya (SK) Creative Commons License 2013.04.18 0 0 21067

Wiki alatt kisbetűvel nem a Wikipédiát értem, amit nem is lehet ilyen célokra használni, hanem a wikiszoftvert. Az van benne, amit beleírsz. :-) Meg lehet csinálni korlátozott írhatóságúra is. Lehet kategorizálni, módosításokat visszakövetni és visszavonni, crosslinkelni stb. Word dokumentumot egyébként is nehéz publikussá tenni.

Előzmény: pimre (21065)
tbando Creative Commons License 2013.04.18 0 0 21066

Egy pár ezer rekordos táblázatban memóriafoglalás szempontjából van-e különbség ha egy bonyolult összetett függvényt, egyben, több cellára elosztva vagy udf-ként használok? 

pimre Creative Commons License 2013.04.17 0 0 21065

Köszönöm. Meg fogom nézni.

 

A google témában igazad van, magam is mindig a google-vel keresek, és van, amikor elsőre jó találatot ad, de néha csak 2-3 óra után találok valamit, vagy legkésőbb addigra feladom. Most például egész délután gyűjtöm azoknak a Userform Toolbox vezérlőelemeknek a használatára vonatkozó ismereteket, amelyek sem a Kovalcsik könyvben nincsenek részletezve, sem az általam belinkelt - egyébként kiváló - tananyagban. Viszont megtaláltam azt, ami nincs az eredetiben - a Calendar Control 11.0 vezérlőt - és ez jónak tűnik.

 

SK-nak: Nem tudom, hogy gyűjtésre valóban a wiki-e a legalkalmasabb. Nem használtam még írásra, de úgy tudom, nem igazán megbízható. Állítólag könnyen belekerülhetnek téves információk. Akkor inkább maradok a saját megoldásomnál. Egy Word dokumentumban gyűjtögetem a linkeket, illetve ami letölthető, azt egy Excel Visual Basic nevű könyvtárba rakom.

Előzmény: Törölt nick (21060)
Törölt nick Creative Commons License 2013.04.17 0 0 21064

Küldtem be már néhány posztot a témában.

9698

13636

15462 (itt külön figyelmedbe ajánlom az utolsó sort :-))

Előzmény: Törölt nick (21061)
Törölt nick Creative Commons License 2013.04.17 0 0 21063

hi,

még sosem használtam, de ha minden igaz arra jó, hogy saját objektumokat hozz létre. Ezeknek te adhatod meg, hogy milyen tulajdonságaik meg metódusaik legyenek és használhatod őket a makróidban. Szerintem magasabb szintű/komplexebb makróknál, VBA alapú alkalmazások fejlesztésénél lehet igazán hasznos.

Előzmény: Törölt nick (21061)
Sánta Kutya (SK) Creative Commons License 2013.04.17 0 0 21062

Gyűjtésre szerintem a wiki a legalkalmasabb.

Előzmény: pimre (21058)
Törölt nick Creative Commons License 2013.04.17 0 0 21061

sziasztok,

használta már valaki vire az osztálymodulokat? Mire lehetnek jók ezek? Azt olvasom hogy nem használnak pl. memóriát. De nem találok anyagot a gyakorlati használatára.

Törölt nick Creative Commons License 2013.04.17 0 0 21060

Néhány link a második posztban, lehet szemezgetni:

http://www.excelforum.com/excel-programming-vba-macros/823709-new-to-excel-programming-and-looking-for-learning-materials.html

 

kódrészletek

http://vba-programmer.com/

 

Amúgy a google általában dob ki jó találatokat egy-egy konkrét problémára, szinte mindig megkérdezte már ugyanazt valaki korábban.

Előzmény: pimre (21058)
pimre Creative Commons License 2013.04.17 0 0 21059

Off: Jaj de nem szeretem a saját helyesírási hibáimat. Természetesen az 'eligazítot' helyesen 'eligazított'.

Előzmény: pimre (21058)
pimre Creative Commons License 2013.04.17 0 0 21058

Tegnap arról panaszkodtam, hogy mennyire nehéz összeszedni az Excel makróprogramozással kapcsolatos témakörökhöz a válaszokat.

Azután a keresgélés során olyat találtam, ami ugyan szintén nem ad választ az összes részletkérdésre, de olyan alapos, és közérthető (még a középszintű angolom ellenére is), hogy például a UserForm - ezen belül a MultiPage használatával kapcsolatos kérdésekben tökéletesen eligazítot. De ahogy elnézem a tartalomjegyzékét, a kezdő szinttől kezdve nagyon alapos, jól használható anyag. Ezért úgy gondolom, jótékony cselekedet, ha közzéteszem: http://www.ozgrid.com/Excel/free-training/ExcelVBA2/excel-vba2-index.htm

 

Viszont erről jut eszembe, hogy jó lenne egy olyan hely (és nem vagyok biztos benne, hogy ez egy fórum lehetne, mert abban elég hamar mélyre kerülnek az egyes hozzászólások), ahol összegyűjthetnénk a leghasznosabb hasonló tananyagokat. Esetleg létezik már ilyen?

 

 

 

Előzmény: pimre (21040)
ND7000 Creative Commons License 2013.04.17 0 0 21057

Pedig komolyan mondom, hogy ezt a variációt én is beállítottam.

Ezek szerint valamit elcseszhettem mert most működik !

 

Köszönöm !!!

Előzmény: Törölt nick (21056)
Törölt nick Creative Commons License 2013.04.17 0 0 21056

Előzmény: ND7000 (21055)
ND7000 Creative Commons License 2013.04.17 0 0 21055

Sziasztok

Azt szeretném megkérdezni, hogy az excel beépített feltételes formázás funkcióját (amikor nyilakat , zászlókat, pipát stb lehet választani) lehet e ezt konfigurálni. Nekem az istenért sem sikerül.

Pl van egy számsor -3, 0, 10, -10, 13, 78 Azt szeretném elérni, hogy a 0 feletti értékeknél egy zöld nyil felfelé a 0 alattinál egy piros nyíl lefelé legyen, a 0-s érték pedig sárga nyil jobbra. Ha ráengedem a formázást akkor az lesz az eredmény, hogy a 78 as értéknél egy felfele zöld nyíl a többi piros le !

Így csak a számsor elemeihez tartozó számsor intervallumát vizsgálja a formázás , de ennek gyakorlatban kevésbé van értelme, (statisztikát általában viszonyszámokhoz mérünk és csak ritkán egymáshoz) tényleg ilyen bénán van megcsinálva, vagy én vagyok rosszul összerakva és valamit elbénázok ? :)

(Azt tudom, hogy sima szinezéssel meg lehet csinálni, de most ezek a nyilak kellenének)

 

Előre is köszi !

 

Tagore1972 Creative Commons License 2013.04.16 0 0 21054

Sziasztok!

 

Végre! Sikerült a 65ezer soros fájlt 1 millió sorosra konvertálnom.

Excel 2007-ben az xls fájlban készítettem egy nem konvertálható formázást

(feltételes formázás - színskálák, de lehet, hogy elég lett volna egy nem alapszínnel formáznom egy cellát).

Mentéskor feljött Kompatibilitás-ellenőrző ablak, kikapcsoltam ezen

ablak alján a "Kompatibilitás ellenőrzése a munkafüzet mentésekor" checkbox-ot.

Elmentettem xlsm-ként, kiléptem az Excelből, majd vissza és máris 1millió soros Excelt láttam :-)

 

----------------------------------------

Szeretnék kérni egy kis segítséget konvertálási problémában

forrásfájl ilyen most

   97-2003 típusú (.xls), 65 ezer soros, makrós

célfájl ilyen legyen

   makróbarát (.xlsm), 1 millió soros, makrós

Sajnos maradt a 65 ezer sor, ami már kevés.

-----------------------------------------

 

Kösz a tippeket.

 

üdv Józsi

Előzmény: Tagore1972 (21010)
Sánta Kutya (SK) Creative Commons License 2013.04.16 0 0 21053

Na ez az!

Előzmény: Törölt nick (21052)
Törölt nick Creative Commons License 2013.04.16 0 0 21052

Lehet, hogy nem erre gondoltál, de VBA-ban az amúgy simán excelből is elérhető függvények az Application.Worksheetfunction objektumon belül vannak. :D

 

Én eddig abban a hitben éltem, hogy minden excel függvény elérhető VBA-ból ily módon, de most ez megcáfolódott. (Mondjuk van megfelelője, ami egyszerűbb is, de akkor is.)

Előzmény: Sánta Kutya (SK) (21051)
Sánta Kutya (SK) Creative Commons License 2013.04.16 0 0 21051

Gondoltam, hátha van valami egyszerű összefoglaló vagy ránézésre ismérv...

Előzmény: tbando (21050)
tbando Creative Commons License 2013.04.16 0 0 21050

Hogy honnan? Én a sugóból szoktam.

Előzmény: Sánta Kutya (SK) (21047)
Sánta Kutya (SK) Creative Commons License 2013.04.16 0 0 21049

Azt én sejtem, hogy alapvető szövegkezelő függvényeknek a Basicben is kell lenniük, de nem tudtam, hogy ezek felülírják az Excel függvényeit, illetve azt olvastam lentebb itt a topicban, hogy érdemes mindig az Excel-függvényeket választani, mert gyorsabbak.

Viszont nem vagyok rejtvényfejtő állapotban. :-)

Előzmény: Delila10 (21048)
Delila10 Creative Commons License 2013.04.16 0 0 21048

Hát ez az, hogy honnan?  :)

Előzmény: Sánta Kutya (SK) (21047)
Sánta Kutya (SK) Creative Commons License 2013.04.16 0 0 21047

Köszönöm, működik, de akkor nem értem! Mi a különbség a munkalapfüggvény meg a mezei függvény között, és honnan tudhatom, hogy melyik melyik?

Előzmény: Delila10 (21046)
Delila10 Creative Commons License 2013.04.16 0 0 21046

A zárójelek Nálad vannak jó helyen. A right nem (csak) munkalap függvény, nem kell elé az Application.WorksheetFunction.

Előzmény: Sánta Kutya (SK) (21042)
pimre Creative Commons License 2013.04.16 0 0 21045

Ez tényleg egyszerű, és nagyon jó. A MultiPage-nek pedig rövidesen utánanézek.

Előzmény: Delila10 (21043)
Delila10 Creative Commons License 2013.04.16 0 0 21044

if right(worksheets(lapok(j).cells(k,3),4))="szla" then

 

Remélem, jól írtam.

Előzmény: Sánta Kutya (SK) (21042)
Delila10 Creative Commons License 2013.04.16 0 0 21043

"1 órás találgatással be fogom tudni állítani"

 

Állítsd az Excelt teljes képernyőre. Az Immediate ablakban kérdezd le a méreteit, amiket az előbbi ablakban megadtam, és ezeket az értékeket add a formnak.

Előzmény: pimre (21040)
Sánta Kutya (SK) Creative Commons License 2013.04.16 0 0 21042

Van egy oszlop. ahol a lehetséges értékek:

  • "szla"
  • "ilyen szla"
  • "olyan szla"
  • bármi más
  • üres

Ebből kéne kimazsoláznom a számlás sorokat.

Az If Worksheets(lapok(j)).Cells(k, 3).Value = "szla" Then feltétel helyesen találja meg a sima "szla" stringet (és itt gebedjen meg a zindex, hogy nincs állandó szélességű fontja), ellenben az

Application.WorksheetFunction.Right(Worksheets(lapok(j)).Cells(k, 3).Value, 4) = "szla"

a várakozásommal ellentétben nem a szla végű cellákat találja meg, hanem folyton igazat ad. És az is furcsa volt, hogy az Application.WorksheetFunction. után a listában nem jött fel a Right függvény, de hibajelzést sem kaptam. Nem így kell Jobb(valami,4) függvényt csinálni?

Delila10 Creative Commons License 2013.04.16 0 0 21041

Mi van, ha nem a form lesz óriás, hanem az Excel bújik meg mögötte?

 

Sub meret()

    With Application

        .Left = 100

        .Top = 100

        .Width = 300

        .Height = 300

    End With

End Sub

 

Én is javaslom a MultiPage bevezetését, azzal szortírozhatod az adatokat.

Előzmény: pimre (21040)
pimre Creative Commons License 2013.04.16 0 0 21040

Igen, ezt próbálgattam már. Most még egyszer megnéztem. Pl. 3-ra állítva megjelenik a vízszintes és a függőleges görgetősáv, de futtatáskor csak a függőlegest látom, és a mozgatási lehetőség (ennek a kék csíknak nem is tudom a hivatalos nevét, amivel görgetni tudok) nem jelenik meg, így a vízszintes görgetősávot nem is látom.

 

Ráadásul nem bánnám, ha futás közben teljes képernyős lenne a userform, hogy a felhasználó ne lássa alatta az excel táblát, mert minek. De nem találok utalást erre, csak a with tulajdonságnál látok egy számot: 718.5. De, hogy ez mi a fene, és hányra kell állítanom, hogy full screen legyen, arról semmi sem szól. Próbáltam 1024-et, ami a képernyő felbontásom, de az sok. Majd 1 órás találgatással be fogom tudni állítani. 

 

De ahelyett, hogy most titeket kérdezgetlek tulajdonságonként, nincs ez valahol egyértelműen leírva? Furcsa ez az excel nyelv. Iszonyúan sokat tud, de dokumentációt nem, vagy alig találok a részletekről. Úgy kell összeszedegetni kérdezgetéssel, guglizással és próbálgatással:-(((

Előzmény: Retro Image (21038)
Retro Image Creative Commons License 2013.04.16 0 0 21039

Ma gyors vagyok, mint az olajozott villám :o)

Előzmény: Delila10 (21035)
Retro Image Creative Commons License 2013.04.16 0 0 21038

Igen, a userform tulajdonságai között van egy ScrollBars nevű. Annak értékével lehet szabályozni, hogy melyik scrollbar jelenik meg.

Előzmény: pimre (21037)
pimre Creative Commons License 2013.04.16 0 0 21037

Kösz, de ezt helyre tudom tenni:-)))

 

Viszont a userform scrollozására van lehetőség?

Előzmény: Delila10 (21036)
Delila10 Creative Commons License 2013.04.16 0 0 21036

Jó viccet csináltam. A textbox kiürítését nem a then ágba tettem, így ha jó, ha nem a bevitt érték, törlődik. :(

Előzmény: Delila10 (21034)
Delila10 Creative Commons License 2013.04.16 0 0 21035

Megelőztél. :)

Előzmény: Retro Image (21032)
Delila10 Creative Commons License 2013.04.16 0 0 21034

A formon jobb klikkre előjön egy gyorsmenü. Innen a Tab Ordert választva könnyen be tudod állítani a formon lévő objektumok bejárási sorrendjét.

 

Az egyes mezőkhöz rendelhetsz AfterUpdate eseményt. Például ha számot vársz:

 

Private Sub TextBox1_AfterUpdate()

    If Not IsNumeric(TextBox1) Then MsgBox "Számot kérek"

    TextBox1 = ""

End Sub

Előzmény: pimre (21029)
pimre Creative Commons License 2013.04.16 0 0 21033

Köszi, délután kipróbálom a MultiPage controlt. Egyébként eltöltöttem egy fél órát azza, hogy próbálgattam a userform scroll tulajdonságait, de képtelen voltam elérni, hogy futás közben működjön a scrollozás lehetősége. Sőt képes voltam beírni olyan olyan textboxot a képernyő aljára, amit aztán scrollozás híján nem sikerült futás közben látni. 

Előzmény: Retro Image (21032)
Retro Image Creative Commons License 2013.04.16 0 0 21032

A userform-on a vezérlők sorrendjét "Tab Order" néven ismerik. Ez határozza meg, hogy TAB billentyű megnyomására hová ugrik a fókusz. Ugyanez vonatkozik az Enter gombra is, bár nem minden vezérlőtípus esetén.

Szóval kattints jobb gombbal a form-ra, és válaszd a Tab Ordert. Ott pedig rendezd megfelelő sorrendbe a vezérlőidet, hogy oda ugorjon Enterre, ahová kell.

Esetleg lehet játszani az EnterKeyBehavior Property-vel, bár az kissé mást csinál.

 

A vezérlő objektmok eseménykezelői hasznosak lesznek a projektedben, érdemes őket tanulmányozni.

Ha nem fér ki 50 vezérlő a form-ra, érdemes megfontolni a MultiPage control használatát.

 

Amúgy szerintem jöhet ide minden kérdés, úgyis pangás volt az utóbbi időben :o)

Előzmény: pimre (21029)
Sánta Kutya (SK) Creative Commons License 2013.04.16 0 0 21031

Ugye tudod, hogy a kurzorvezérlőknek kétbyte-os kódjuk van? Egy vezető 0, és utána a tényleges kód.

Előzmény: pimre (21028)
tbando Creative Commons License 2013.04.16 0 0 21030

Próbáltad már újra megnyitni? Ha még nem, próbáld meg.

Előzmény: Tagore1972 (21014)
pimre Creative Commons License 2013.04.16 0 0 21029

Adatfelvitelre. Egy 50 oszlopt tartalmazó Excel táblában szeretném az adatfelvivőknek a dolgát megkönnyíteni, és programból vezérelni az adatbeírást/módosítást. A billentyűkezelés célja, hogy ahol csak numerikus adatot várok, ott ne lehessen más karaktert beírni, ahol csak kétféle válasz lehet (igen/nem vagy férfi/nő), ott az első betű helyes leütésére kerüljön be a teljes szó, ahol majd névsorból lehet választani, ott segítsem a sok közül kiválasztandó név megtalálását. Az utóbbira még nem is tudom, hogy a legördülő menün kívül milyen technikák vannak az Excelben. Régen alkalmaztam olyan megoldásokat, hogy a program néhány karakter leütése után megtalálta a keresett nevet. (Az ilyen jellegű gyakorlatomat sok éve Clipperben szereztem, de ez egész más)

 

VBA adatfeldolgozást már csináltam többfélét is, de az adatfelvitelt illetően teljesen kezdő vagyok. Azért is vállaltam el a feladatot szívességből, hogy legalább megtanuljam ezt is.

Még abban sem vagyok biztos, hogy jó irányban indultam el azzal, hogy userformmal gondolom megvalósítani a feladatot. Itt eddig az első néhány adat textboxokban történő felvitelének a megoldásával kezdtem a tesztelést, és rögtön beleütköztem abba, hogy az első textbox kitöltésénél Down lenyomására a második textboxra ugrik, viszont az Enter lenyomására kettőt lépve a harmadikra, amit nem akarok. Bizonyára nem a 13-as enter kód cseréje a helyes megoldás, de egyelőre nem tudok jobbat erre sem.

 

Bizonyára lesz még rengeteg kérdésem a következő napokban/hetekben. Az egyik például az, hogy jó megoldást választottam-e egyáltalán a userformmal? Ha jól látom, ennek korlátja lesz majd a képernyő, tehát az 50 oszlopot nem fogom tudni egyetlen fel/le gördülő képernyőn kezelni.

 

Ha valaki tud tippeket egy ilyen munka általános nehézségeivel kapcsolatban, vagy internetes referenciákat (Sajnos a Kovalcsik Géza féle könyv csak főbb vonalakban ismerteti az interaktivás kérdéskörét), azt megköszönném. És, hogy ne terheljük vele a közösséget, akár privátban is szívesen fogadok tanácsokat.

 

Előzmény: Retro Image (21026)
pimre Creative Commons License 2013.04.16 0 0 21028

Időközben megtaláltam, ha nem is volt könnyű: A KeyDown/KeyUp eseményekkel tudom kiolvasni, a Sendkeys metódussal tudok beírni, már csak az eredetinek a törlése hiányzik, hogy le tudjam cserélni a kiolvasott kódot az újra.

Előzmény: pimre (21025)
Sánta Kutya (SK) Creative Commons License 2013.04.16 0 0 21027

Köszi, és tbandónak is!

Ezek már jók, már csak a programomban kell megkeresni a hibát. :-)

Előzmény: Törölt nick (21016)
Retro Image Creative Commons License 2013.04.16 0 0 21026

Milyen célra kellene?

Előzmény: pimre (21025)
pimre Creative Commons License 2013.04.16 0 0 21025

Egy kérdés: Hogyan lehet VBA kóddal kiolvasni az utoljára lenyomott billentyű kódját, és szükség esetén átcserélni másra? Például Enter helyett Cursor down.

Delila10 Creative Commons License 2013.04.16 0 0 21024

Elkerülte a figyelmedet RHPCgergo 21017-es válasza. Kipróbáltam, nagyszerűen működik.

Előzmény: Tagore1972 (21022)
pimre Creative Commons License 2013.04.16 0 0 21023

Még egy utolsó próbálkozás (ha kompatibilis módban dolgoznál): http://office.microsoft.com/hu-hu/word-help/a-word-elozo-verzioiban-keszitett-fajlok-megnyitasa-a-word-2007-programban-HA010044475.aspx

Ha ez sem jön be, akkor feladom, és csak remélni tudom, hogy valaki hozzáértőbb tud neked segíteni.

Előzmény: Tagore1972 (21022)
Tagore1972 Creative Commons License 2013.04.16 0 0 21022

Szia!

 

Köszi, de pont ezt szerettem volna elkerülni.

A fület egészben nem engedi másolni, a tartomány másolását javasolja.

Kb. 20 fülem van, tele egymásra hivatkozó képletekkel,

nagyon neccesnek érzem ezt átmásolgatni és a hibákat keresni.

 

üdv Józsi

Előzmény: tbando (21020)
tbando Creative Commons License 2013.04.15 0 0 21021

A 2. kérdésre:

 

Cells(x, y).NumberFormat = "#,##0 $"

Előzmény: Sánta Kutya (SK) (21011)
tbando Creative Commons License 2013.04.15 0 0 21020

Az xls lapot xlsx füzetbe másolva/átmozgatva xlsx formátumu lesz

Előzmény: Tagore1972 (21010)
Törölt nick Creative Commons License 2013.04.15 0 0 21019

Nem fontos.

Előzmény: Sánta Kutya (SK) (21018)
Sánta Kutya (SK) Creative Commons License 2013.04.15 0 0 21018

Csak holnap tudom kipróbálni, de a Max+6 köré nem kell zárójel?

Előzmény: Törölt nick (21016)
Törölt nick Creative Commons License 2013.04.15 0 0 21017
Előzmény: Tagore1972 (21014)
Törölt nick Creative Commons License 2013.04.15 0 0 21016

Első kérdés:

Range("A7:D" & Max + 6).ClearContents ' formázást nem töröl

Range("A7:D" & Max + 6).Clear 'formázást is töröl

 

Második kérdés(ebben nem vagyok biztos):

 

Cells(x, y).NumberFormat = "#,##0.000 $"

Előzmény: Sánta Kutya (SK) (21011)
Törölt nick Creative Commons License 2013.04.15 0 0 21015

Columns("B:B").EntireColumn.AutoFit

Előzmény: Sánta Kutya (SK) (21013)
Tagore1972 Creative Commons License 2013.04.15 0 0 21014

Szia!

 

Ja, nem írtam, de Excel 2007 alatt kezelem a fájlt,

abban módosítom, mentem, menteném xlsm-re,

de mit sem ér (csak 65 ezer sor látszik)

 

üdv Józsi

Előzmény: pimre (21012)
Sánta Kutya (SK) Creative Commons License 2013.04.15 0 0 21013

Ja és még egy: mit kell mondani a makrónak, hogy a B oszlopot pont olyan szélesre állítsa, ahogy kifér? Mintha kétszer kattintanék a vonalra.

Előzmény: Sánta Kutya (SK) (21011)
pimre Creative Commons License 2013.04.15 0 0 21012

Egy hülye kérdés, de hátha: Próbáltad konverzió nélkül, Excel 2007 alól megnyitni magát az eredeti xls fájlt?

Előzmény: Tagore1972 (21010)
Sánta Kutya (SK) Creative Commons License 2013.04.15 0 0 21011

Két kérdés, hátha fejből gyorsabban megy valakinek, mint nekem gugliból:

  1. Ha max a sorok száma, akkor az A7:D(max+6) tartomány tartalmát hogy lehet a legegyszerűbben, leghatékonyabban törölni? For ciklussal egyenként nekem is menne.
  2. Hogyan lehet a cells(x,y) formátumát forint, hármas tagolás, nulla tizedesre állítani?
Tagore1972 Creative Commons License 2013.04.15 0 0 21010

Sziasztok!

 

Szeretnék kérni egy kis segítséget konvertálási problémában

forrásfájl ilyen most

   97-2003 típusú (.xls), 65 ezer soros, makrós

célfájl ilyen legyen

   makróbarát (.xlsm), 1 millió soros, makrós

 

Sajnos maradt a 65 ezer sor, ami már kevés.

 

Amikkel próbálkoztam:

1)

forrásfájl mentés másként makróbarátként nem jött be,

mert maradt 65 ezer sor (Excel ki-belépés után is)

2)

forrásfájl mentés másként alap Excelként (xlsx), majd

azt mentettem makróbarátként, nem jött be (maradt a 65 ezer sor)

itt persze már elvesztettem volna a makrókat, de az lenne a kisebb baj.

 

Szóval nem szeretném az Excel fájlt (kb. 20 fül, tele egymásra hivatkozó képletekkel,

makrókkal) újra megírni, mert persze ha alapból xlsx-ként, majd xlsm-ként mentek egy újat,

akkor marad az 1 millió sor :-(

 

Köszi

 

üdv Józsi

 

Delila10 Creative Commons License 2013.04.12 0 0 21009

Szívesen. Érdemes körülnézni a kitehető ikonok között. Sokat gyorsít a munkán, ha az olyan funkciókhoz rendelt ikonokat teszed ki, amiket gyakran használsz. Nem kell menüből, almenüből előcsalni.

Előzmény: James 42 (21008)
James 42 Creative Commons License 2013.04.12 0 0 21008

Ezt is köszi! Ennek még jobban örült a júzer.  :-)

Előzmény: Delila10 (21002)
Sánta Kutya (SK) Creative Commons License 2013.04.11 0 0 21007

Rákattintasz egy régebbi oldalra, megnézed fent az URL-ben a start és a step utáni számokat, és kreatívan használod. :-)

Előzmény: tbando (21006)
tbando Creative Commons License 2013.04.11 0 0 21006

Azt hogy kell?

Előzmény: Sánta Kutya (SK) (21005)
Sánta Kutya (SK) Creative Commons License 2013.04.11 0 0 21005

És még könnyebb, ha utána direkt írja az URL-t.

Előzmény: pimre (21004)
pimre Creative Commons License 2013.04.11 0 0 21004

Állítsd 500-ra a laponkénti hozzászólások számát, és akkor viszonylag kevés lépésben tudsz visszafelé lapozgatni kb 8000 hozzászólásnyit.

Előzmény: mimi_bacsi (20995)
Delila10 Creative Commons License 2013.04.11 0 0 21003

Lemaradt a kép.

 

Előzmény: Delila10 (21002)
Delila10 Creative Commons License 2013.04.11 0 0 21002

Szívesen.

 

Az ikonja alapban fent van az eszköztáron,  ha mégsem, kiteheted.

 

Előzmény: James 42 (21001)
James 42 Creative Commons License 2013.04.11 0 0 21001

Működik a Ctrl-K, és ez a megoldás teljesen megfelel, úgyhogy nem álltam neki a VBA-val kavarni. Köszi!

Előzmény: Delila10 (20991)
mimi_bacsi Creative Commons License 2013.04.11 0 0 21000

Tbando! Köszönöm a válaszodat, vidékre kell utaznom, leghamarabb vasárnap este leszek ismét gép közelben, megnézem! Köszönöm a fáradozásodat!

Előzmény: tbando (20999)
tbando Creative Commons License 2013.04.11 0 0 20999

A képletek bemásolását sajnos egy kicsit elcsesztem: A c14-c15 képletekben a b13-kat át kell irnod b14-re ill. b15-re.

Előzmény: tbando (20998)
tbando Creative Commons License 2013.04.11 0 0 20998

No akkor legyen egy exceles megoldás is hozzájuk.  Az eszement feltételek: A bank csak  1-2 milla közötti összegű hitelszerződéseket hajlandó kötni, 250eFt-os lépcsőkkel.

 

c8: szükséges hitel:

c10: tényleges hitel/250 000  =HA(MARADÉK(C8;250000)=0;INT(C8/250000);INT(C8/250000)+1)

 

B12: 2 000 000 c12: =HA(C10<8;0;HA(MARADÉK(C10;8)<4;INT(C10/8)-1;INT(C10/8)))

B13: 1 750 000 c13: =HA(($C$10-HA(MARADÉK($C$10;8)<4;4;0)-$C$12*8)*250000=B13;1;0)

B14: 1 500 000 c14: =HA(($C$10-HA(MARADÉK($C$10;8)<4;4;0)-$C$12*8)*250000=B13;1;0)

B15: 1 250 000 c15: =HA(($C$10-HA(MARADÉK($C$10;8)<4;4;0)-$C$12*8)*250000=B13;1;0)

B16: 1 000 000 c16: =(C10-C12*8-C13*7-C14*6-C15*5)/4

Előzmény: mimi_bacsi (20997)
mimi_bacsi Creative Commons License 2013.04.10 0 0 20997

Ezek is jó megoldások, mint általában több alkalommal nem egy megoldása van egy feladatnak...:-)

Előzmény: tbando (20996)
tbando Creative Commons License 2013.04.10 0 0 20996

Na kérdezek még egyet: Miért nem jó a 4*1+1,25, a 2*1.5+1,25+1 és a 3*1,75 ? Ezek is pont úgy 5,03-k mint a 2*2+1,25.

Előzmény: mimi_bacsi (20994)
mimi_bacsi Creative Commons License 2013.04.10 0 0 20995

Kedves Delila!

 

Köszönöm a válaszodat, igyekszem megkeresni...A kereső nekem nem egyszerű, de remlem hamarosan megtalálom a nevezett hozzászólást! :-)

Előzmény: Delila10 (20990)
mimi_bacsi Creative Commons License 2013.04.10 0 0 20994

Természetesen a 2*2+1.25 az nem 5.03, de a bankosok az általam felsorolt sávokat (1, 1.25, 1.5, stb) adtak meg a hitelek esetében...:-)) 

Előzmény: tbando (20993)
tbando Creative Commons License 2013.04.10 0 0 20993

Valamit nem értek. A 2*2milla +1,25 milla az nálad miért 5 032 237 ?

Előzmény: mimi_bacsi (20988)
tbando Creative Commons License 2013.04.10 0 0 20992

Tipikus Solver feladat.

Előzmény: mimi_bacsi (20989)
Delila10 Creative Commons License 2013.04.10 0 0 20991

Sikerült valamit összehozni?

Előzmény: James 42 (20987)
Delila10 Creative Commons License 2013.04.10 0 0 20990

Közel 3 éve  tett fel ilyen kérdést madbazsi nevű kollégánk a 12266-os hsz-ben, amire Jimmy válaszolt egy csodás makróval – 12402-es hsz.

 

Nem  biztos, hogy OpenOffice alatt is fut majd, de próbáld ki!

Előzmény: mimi_bacsi (20989)
mimi_bacsi Creative Commons License 2013.04.10 0 0 20989

 

Így talán jobban látszik...?

Előzmény: mimi_bacsi (20988)
mimi_bacsi Creative Commons License 2013.04.10 0 0 20988

Van egy táblázatom és abban egy érték (jelen példában: 5 032 237 Ft)

Van-e olyan függvény, ami kiszámolja beavatkozás nélkül, hogy ez az összeg a táblázatban megadott értékekből hogy áll össze (B1 cella: 1 000 000 Ft, C1 cella:1 250 000 Ft, D1 cella:1 500 000 Ft, E1 cella:1 750 000 Ft, F1 cella:2 000 000 Ft)

 

A példánkban ez így néz ki (2*2 000 000 Ft + 1 250 000 Ft).

 

 

 

James 42 Creative Commons License 2013.04.10 0 0 20987

Mindkettőtöknek köszönöm a választ!

Előzmény: Delila10 (20986)
Delila10 Creative Commons License 2013.04.09 0 0 20986

Tényleg, figyelmetlenül olvastam.

Makró nélkül ki lehet tenni az ikonját (beszúrás menü), de Ctrl+k-ra is bejön.

Előzmény: SQLkerdes (20985)
SQLkerdes Creative Commons License 2013.04.09 0 0 20985

Valóban, de ő a jobb klikk menüt akarja módosítani.  Szerintem gyárilag nem lehet, VBA-val viszont megoldható.

Előzmény: Delila10 (20984)
Delila10 Creative Commons License 2013.04.09 0 0 20984

Az Eszköztáron (fent az ikonsoron) jobb klikk, Testreszabás.

 

A megjelenő párbeszéd dobozban 3 fül közül választhatsz. Az elsőn a menüpontokat jelölheted be, amiket ki akarsz tenni.

A Parancsok fülön ikonokat húzhatsz fel az Eszköztárra, a Beállítások meg magáért beszél.

 

Előzmény: James 42 (20983)
James 42 Creative Commons License 2013.04.09 0 0 20983

Tudja-e valaki, hogy a 2003-as Excelben a helyi menüt (jobb egér menü) hogyan lehet testreszabni? Konkrétan az a gond, hogy eltűnt belőle minden, ami a hiperhivatkozásokra vonatkozik, és egy javítás ráküldésétől nem jött helyre. Mivel lehetne még próbálkozni?

(Bocs, ha már volt a kérdés, de a Keresés segítségével nem találtam meg!)

andzsin Creative Commons License 2013.04.09 0 0 20982

tényleg van benne:) na akkor előbb kigyomlálom:) köszi!

Előzmény: Törölt nick (20981)
Törölt nick Creative Commons License 2013.04.09 0 0 20981

Hi,

egy ötlet: lehet, hogy #HIV! hibaüzenet van az 1300 összeadandó cella között is. Célszerűbb azokat kijavítani, de ha nem akarod, akkor valami ilyesmi képlettel össze lehet adni a maradékot:

=szumha(A1:A1300;"<>#HIV!")

 

 

Előzmény: andzsin (20980)
andzsin Creative Commons License 2013.04.09 0 0 20980

sziasztok, van egy oszlop 1300db árral, ezt szeretném összeadni, ha a legalsó cellába klikkelek és summázok, akkor a képernyőn látható tartományt jelöli ki, és összeadja, ha elkezdem felvinni a kijelölő négyzetet a sarkainál egészen az 1-es celláig, és úgy summázok, akkor megjelenik a HIV! jelzés, nem tudok rájönni miért? ötlet? kösz

Delila10 Creative Commons License 2013.04.08 0 0 20979

Végül marad az

    Application.Dialogs(xlDialogSendMail).Show
sor, ami megnyitja a levelezőt, csatolja az aktív füzetet, csak a címzettet kell beírni. Az meg nem túl összetett feladat a usereknek, hiszen a címjegyzékből egyszerű előkapni.

 

Köszönöm mindkettőtöknek a fáradozást.

Előzmény: Törölt nick (20978)
Törölt nick Creative Commons License 2013.04.08 0 0 20978

Nekem sem megy.

Itt azt olvastam, hogy a mailto protokol nem is támogatja a fájlmelléklet küldését.

http://social.msdn.microsoft.com/forums/en-US/winforms/thread/80d33aae-4d10-4f1d-974d-a2c795dc9aad/

 

Úgyhogy marad az outlook object model, vagy még kacifántosabb megoldások.

Előzmény: Delila10 (20976)
Törölt nick Creative Commons License 2013.04.08 0 0 20977

Pórbáltam Jimmy módszerével, de úgy nekem se sikerült... mindenesetre itt vannak alternatívák.

http://www.rondebruin.nl/sendmail.htm

Előzmény: Delila10 (20976)
Delila10 Creative Commons License 2013.04.08 0 0 20976

Kedves Jimmy!

 

2011. okt-ben írtál valakinek egy makrót a 16368-as hsz-ben, ami a fájl bezárásakor levelet küldött.

Ki tudnád bővíteni azzal, hogy csatolja az aktuális füzetet? Nekem nem megy.

 

Törölt nick Creative Commons License 2013.04.07 0 0 20975

Hát igen, ha egyből elmondod, hogy mire kell, nem kellett volna fölösleges köröket futnod...

Ha jól értem, az a cél, hogy van egy XY cella, és ha ebben megváltozik a beírt érték, akkor egy valamilyen függvény értékét írja be helyette.

Ez esetben érdemes a worksheet_change eljárást így megírni:

 

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
        'update XY
    Application.EnableEvents = True
End Sub

Mert különben a Worksheet_Change önmagát fogja végtelen ciklusban meghívogatni.

Előzmény: Zoxo Whitney (20974)
Zoxo Whitney Creative Commons License 2013.04.07 0 0 20974

Még egyszer köszönöm a segítséget, de mégis worksheet_change eljárás lesz belőle...

:-))

 

Ugyanis nem szereti a "körkörös hivatkozást" , ha az adott cella értékét is felhasználja az eredmény megállapításánál..

(Az adott cell értékét akartam updatelni. :-( )

Előzmény: Törölt nick (20972)
Zoxo Whitney Creative Commons License 2013.04.06 0 0 20973

Köszönöm!

Kiegészítettem a rutint egy harmadik paraméterrel is

Function atszamol2(p_row As Integer, p_column As Integer, p_range As Range) As String,

a hívásnál a képernyőn is (biztos, ami biztos) beírtam a lap nevét is

=atszamol2(SOR()-14;OSZLOP()-12;Kézi!$A$1:$I$9) és működik volatile nélkül is!

 

Viszont az továbbra is igaz, hogy a kódnak a module1-ben kell lennie.

Amikor áttettem  a kódot a "Kézi" lap kódjai közé, egyből hibát jelzett..

Előzmény: Törölt nick (20972)
Törölt nick Creative Commons License 2013.04.06 0 0 20972

Nem egészen.

Az udf azért (akkor) frissül, mert (ha) bármelyik bemenő paramétere megváltozik. Tehát akkor is frissül, ha a p3 változik meg.

A worksheet_change ettől független, alternatív lehetőség a p3 változásának követésére (ha p3 egy cellát vagy tartományt jelöl).

 

Előzmény: Törölt nick (20971)
Törölt nick Creative Commons License 2013.04.05 0 0 20971

Köszönjük.

Na most ezt jól értem? A p3 és a worksheet_change hatására frissül az udf?

 

Előzmény: Törölt nick (20970)
Törölt nick Creative Commons License 2013.04.05 0 0 20970

Nekem az a véleményem, hogy ezt a Volatile dolgot messzire el kell kerülni mindaddig, amíg a cél más úton elérhető.

1) Munkalapon a cellatartalom változását a Worksheet_Change eseménykezelővel lehet követni.

2) Saját függvénynek úgy is megadhatod bemenő paraméterként a figyelendő cellát, hogy a függvény tulajdonképpen nem is kezd vele semmit.

Pl. az alábbi függvény akkor is újraszámolódik, ha a p3-nak megadott cella tartalma megváltozik, jóllehet a függvény értékéhez a p3 nem járul hozzá.

Function Saját_függvény(p1 As Integer, p2 As Integer, p3 As Integer)

    Saját_függvény = p1 + p2

End Function

 

 

Előzmény: Zoxo Whitney (20967)
Törölt nick Creative Commons License 2013.04.05 0 0 20969
Előzmény: Zoxo Whitney (20967)
Törölt nick Creative Commons License 2013.04.05 0 0 20968

Application.Volatile (True)

Application.Volatile (False)

 

Ha nem adod meg, a true az alapértelmezett.

 

Szerintem fentieket innentől kezdve már feltételhez lehet rendelni, hogy melyik munkalapon akarod használni.

 

 

Előzmény: Zoxo Whitney (20966)
Zoxo Whitney Creative Commons License 2013.04.05 0 0 20967

Megoldható-e, hogy csak egy adott munkalapon érzékelje a változást, és nem az egész munkafüzetben?

Előzmény: Zoxo Whitney (20966)
Zoxo Whitney Creative Commons License 2013.04.05 0 0 20966

"Application.Volatile"

Ez mit jelent?

Hogyan lehet kikapcsolni?

Amikor "kézből" dolgozom, akkor mintha kéne, hogy müködjön a saját gyártású függvényem, de amikor programot futtatok, akkor tényleg piszokul lelassítja a futást.

Ugyanaz a program, ugyanazzal az adattal 2-3 mp helyett 4-5 perc!

Előzmény: Törölt nick (20944)
Delila10 Creative Commons License 2013.04.05 0 0 20965

Nálam is sokáig keringett, mikor egy régi, szeméttel teli kimutatáson futtattam. Később, kevesebb ócskasággal telítettnél hamar végzett.

Előzmény: wawabagus (20961)
wawabagus Creative Commons License 2013.04.05 0 0 20964

Köszi szépen kipróbálom :-)!

 

Előzmény: Törölt nick (20963)
Törölt nick Creative Commons License 2013.04.05 0 0 20963

Esetleg próbáld ki ezt. Tüneti kezelés ugyan, de szerintem jó lesz.

 

Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
    Dim pf As PivotField
    For Each pf In Target.RowFields
        pf.DataRange.NumberFormat = "mmm-yy"
    Next
End Sub

Előzmény: wawabagus (20958)
wawabagus Creative Commons License 2013.04.05 0 0 20962

Ááá, az nem újdonság...mindig az vagyok.

Az az újdonság, ha nem vagyok épp az :-D

Előzmény: Delila10 (20960)
wawabagus Creative Commons License 2013.04.05 0 0 20961

Szia!

Azt, hogy nem jön ki a körforgásból!

Nem áll le a macro a végén, hanem végtelenített loopban van.

 

Előzmény: Delila10 (20959)
Delila10 Creative Commons License 2013.04.05 0 0 20960

Nem vagyok ma kretív.

Ma kretén vagy. Bocsi, ezt nem lehetett kihagyni. :-)

Előzmény: wawabagus (20958)
Delila10 Creative Commons License 2013.04.05 0 0 20959

Mit is jelent itt, hogy "bekattan"?

Előzmény: wawabagus (20957)
wawabagus Creative Commons License 2013.04.05 0 0 20958

Szia :-)!

Igazad van, szóval itt most aktuálisan "sorfejléc".

Már lövésem sincs mivel próbálkozzak, szerintem kiolvasatom vele a pivotból sima cellákba "aztjónapot", mert kezd az idegeimre menni...

 

Nem bírja elfelejteni ezt az idióta dd-mm-yyyy formátumot, ha fejen állok neki ez akkor is így marad.

A textként formáizott is rossz, az idióta ABC sorrend miatt...

 

Nem vagyok ma kretív :-(...



Előzmény: Törölt nick (20956)
wawabagus Creative Commons License 2013.04.05 0 0 20957

Szia Delila10,

Képzeld valamiért bekattan nekem ez a macro :-(...

Azt hiszem feladom...

 

ÁÁáááá

Előzmény: Delila10 (20954)
Törölt nick Creative Commons License 2013.04.05 0 0 20956

Ez a bizonyos dátummező sorfejléc, vagy oszlopfejléc, vagy netán adatmező?

Előzmény: wawabagus (20955)
wawabagus Creative Commons License 2013.04.05 0 0 20955

A másik kérdésem, hogy csinálnák egy pivot chartot ami dátumokat mutat.

A pivot label ilyen fomában mutat "01/02/2012".

Én így szeretném: "mmm-yy"

 

A pivoton belül, ha rálépek az opiciókta nem jelenik meg a "Number" ahol beállíthatnám, csak mint cella formátum tudom átírni. OK, átírom.

De az a nyomorék chart a régi verzóban mutatja...hiába "mmm-yy" már a pivotban, a grafikonon régi label van.

 

Ok. megpróbálom a charton beállítani a dolgot és hiába állítom át, nem úgy mutatja...ugye levileg ott is lehet axis label formátumot mutatni.

 

Komolyan kiborulok...

:-(

 

Ha kifüggvényezem hogy csak textkénet irja a nyers adatba így : text(a1,"mmm-yy")...akkor minden kalssz, viszont  PIVOTBAN is nyílván textként rakra ABC sorrendben...

 

Lovésem sincs mit csináljak...

Valami ötlet? 

Delila10 Creative Commons License 2013.04.05 0 0 20954

Valahonnan valamikor kimásoltam ezt a makrót, működik.

 

Sub DeleteOldItemsWB()
    Dim ws As Worksheet
    Dim pt As PivotTable
    Dim pf As PivotField
    Dim pi As PivotItem
    
    On Error Resume Next
    For Each ws In ActiveWorkbook.Worksheets
        For Each pt In ws.PivotTables
            pt.RefreshTable
            pt.ManualUpdate = True
            For Each pf In pt.VisibleFields
                If pf.Name <> "Data" Then
                    For Each pi In pf.PivotItems
                        If pi.RecordCount = 0 And Not pi.IsCalculated Then pi.Delete
                    Next pi
                End If
            Next pf
            pt.ManualUpdate = False
            pt.RefreshTable
        Next pt
    Next ws
End Sub

Előzmény: wawabagus (20952)
seven update sorbi Creative Commons License 2013.04.05 0 0 20953

Egyáltalán nem. Rácsodálkozásom szívből jövő és őszinte volt.

 

(Ezt a saját_függvény dolgot egyébként sem ismertem, nagyon jól fög ez még jönni nekem is.)

Előzmény: Retro Image (20950)
wawabagus Creative Commons License 2013.04.05 0 0 20952

Sziasztok!

Tudtok megoldás erre a gondra?

 

Kiszedni a pivot filteréből azt a labelt, ami már nem létezik a nyers adatokban?

Persze tudom, újra lehetne csinálni a pivotot, de az elég nagy macera lenne.

 

Létezik erre valami frappáns megoldás?

Előre is köszi!!

J.

Zoxo Whitney Creative Commons License 2013.04.05 0 0 20951

Erre nem is, de  ez csak egy "móricka függvény" volt, az "igazit" majd írom...

Előzmény: Retro Image (20950)
Retro Image Creative Commons License 2013.04.05 0 0 20950

Azt akarod mondani, hogy erre nem kellett volna makrófüggvényt írni?

Előzmény: seven update sorbi (20949)
seven update sorbi Creative Commons License 2013.04.05 0 0 20949

Nahát, hogy itt milyen kreatív emberek vannak...:)

Előzmény: Zoxo Whitney (20948)
Zoxo Whitney Creative Commons License 2013.04.04 0 0 20948

Áttettem a kódot a "module1"-be, kicsit változtattam a kódon

 

Function sajat_fuggveny(p_ertek As Integer) As String
If 2 * Int(p_ertek / 2) = p_ertek Then
    sajat_fuggveny = "páros"
Else
    sajat_fuggveny = "páratlan"
End If
End Function

Müködik!!!!!!!

Fasza!!!!!!!

Csereberélem A1 értékét, és automatikusan jön a megfelelő válasz!

Előzmény: Zoxo Whitney (20947)
Zoxo Whitney Creative Commons License 2013.04.04 0 0 20947

Beírtam egy cellába:

=sajat_fuggveny(A1)

és megírtam a függvényt az adott munkalapon:

 

Function sajat_fuggveny(p_ertek As Range) As String
If 2 * Int(Range(p_ertek).Value / 2) = Range(p_ertek).Value Then
    sajat_fuggveny = "páros"
Else
    sajat_fuggveny = "páratlan"
End If
End Function

, de még csak fel sem ismeri a nevét, #NÉV? üzenet gyün.

Előzmény: Zoxo Whitney (20946)
Zoxo Whitney Creative Commons License 2013.04.04 0 0 20946

Kösz a válaszokat.

Természetesen egy saját függvényt csak abban a munkafüzetben (sőt munkalapon) akarom használni, ahol a programot is megírtam.

Minden más mező automatikusan minden változáskor újraértékelődik.

 

Most rájöttem, hogy mit nem tudok:

Hogyan kell definiálni ennek a bemenő függvénynek paramétereit?

 

Előzmény: SQLkerdes (20942)
Törölt nick Creative Commons License 2013.04.03 0 0 20945

Mindig újraszámolódik, ha a munkalapon vmely cella értéke megváltozik. Be tudja lassítani egyes esetekben az excel működését.

Előzmény: Törölt nick (20944)
Törölt nick Creative Commons License 2013.04.03 0 0 20944

Application.Volatile

Előzmény: Zoxo Whitney (20941)
Sánta Kutya (SK) Creative Commons License 2013.04.03 0 0 20943

Vagy be kell dobni neki még egy kétszázast, hogy menjen. :-)

Előzmény: SQLkerdes (20942)
SQLkerdes Creative Commons License 2013.04.03 0 0 20942

Jóhírem van, meg rossz is.

 

A saját függvény (UDF) automatikusan le kéne kövesse a bemeneti értékek változását.  Ha nálad nem teszi akkor lehet, h. manuális számolásra van állítva a workbook-od.

 

Az UDF-eket simán lehet használni ugyanúgy mint a normál (beépített) függvényeket, szóval a feltételes formázás sem kellene probléma legyen.  Ha nem műxik annak az lehet pld. az oka, hogy nem abban a workbook-ban próbálod használni a feltételes formázást mint amiben a UDF kódja van.

 

Szóval a jó hír az az, hogy mindkettő kérdésed lehetséges, a rossz az, hogy már most is működnie kellene mindenféle trükk nélkül.

Előzmény: Zoxo Whitney (20941)
Zoxo Whitney Creative Commons License 2013.04.03 0 0 20941

Saját függvény esetén hogyan érhetem el, hogy az is automatikusan frissüljön (kiértékelődjön), ha változnak az érintett mezők?

Megoldható-e, hogy feltételes formázás vagy validálás is használja ezeket a függvényeket?

Itthon 2003-s, melóhelyen 2010-s Office van.

Sánta Kutya (SK) Creative Commons License 2013.04.03 0 0 20940

A legalapvetőbb a szűrés. Az mondjuk, ami értelmes is. Aztán az AB. függvények, amelyek a magánvéleményem szerint nehezen használhatók és rugalmatlanok, akkor már inkább az adatbázis, bár persze néha szükség van rájuk. Teljes körben nem tudom felsorolni őket, mivel ennél többet nem használok.

Előzmény: Törölt nick (20937)
tbando Creative Commons License 2013.04.03 0 0 20939

Köszi a linket. Majd tanulmányozom.

Előzmény: Sánta Kutya (SK) (20934)
freyya Creative Commons License 2013.04.03 0 0 20938

Köszönöm!!!!

Előzmény: SQLkerdes (20936)
Törölt nick Creative Commons License 2013.04.03 0 0 20937

milyen adatbázisfunkciók vannak excelben?

az msquery-n kívül van még valami? Táblakapcsolatokat csak ott tudok létrehozni, esetleg valamilyen COM bővítménnyel (pl. power piwot)

Vagy mire gondolsz?

 

Előzmény: Sánta Kutya (SK) (20934)
SQLkerdes Creative Commons License 2013.04.03 0 0 20936

1.) Megszünteted a cellaösszevonásokat

2.) Kijelölöd az első és az utolsó olyan olyan cella által határolt tartományt amelyben tartalom van (pld. A3:A1215)

3.) F5

4.) A felnyíló popup bal alsó sarkánál lesz egy Special (speciális?) gomb, arra kattints

5.) A felnyíló popup-ban lesz egy olyan opció, hogy Blanks (Üresek?).

6.) OK

7.) Most ha eddig minden jól ment csak az üres cellák vannak kijelölve, jobb klikk bármelyik üres cellára és válaszd a Törlést.

8.) Voila...  

Előzmény: freyya (20935)
freyya Creative Commons License 2013.04.03 0 0 20935

Sziasztok!

 

Van egy listám, ahol oszlopon belül a cellák kettesével össze vannak vonva. Hogy tudok belőle sima listát csinálni, vagyis hogy az összevont cellákban lévő számok megszakítás nélkül egy-egy cellába kerüljenek? Próbáltam megszüntetni az összevonást, de akkor minden második sor üresen marad. Vagy arra tudtok valamilyen képletet, hogy ilyenkor a felesleges sorokat ne egyenként kelljen törölgetni? Több száz számból áll a lista, kissé bonyoldalmas lenne egyenként végigmenni rajta. 

Sánta Kutya (SK) Creative Commons License 2013.04.03 0 0 20934

Ami az adatbázist a táblázattól megkülönbözteti. Ezt nem tudom röviden és közben pontosan leírni, a lényege, hogy csökkentjük a redundanciát (nincsenek felesleges ismétlődések), amihez a táblázatainkat több táblára bontjuk, illetve rendezzük a függőségeket. Az alap, amiről beszélünk, hogy egy adott mezőben csak azonos típusú adatok képzelhetőek el, ami egy Excel-táblázatra nem igaz, és nem lehet két teljesen azonos rekord (valamilyen azonosítóban mindig kükönböznek). Ezért zavar, amikor az Excel-táblázatokat egyesek laza szóhasználattal letáblázzák, mert a fenét táblák. Tábláról adatbázisban beszélünk. (Excelen belül vannak adatbázis-funkciók, és ezekhez létrehozhatók táblaszerű táblázatrészletek, de tábláról beszélni hiba).

 

Itt le van írva rendesen, példákkal: http://www.agt.bme.hu/szakm/adatb/db3.htm

A gyakorlati adatbázis-tervezésben az első három normálformát használjuk, esetleg a BCNF-et.

 

Előzmény: tbando (20933)
tbando Creative Commons License 2013.04.03 0 0 20933

Az mit jelent, hogy normalizalt adatok?

Előzmény: Sánta Kutya (SK) (20928)
tbando Creative Commons License 2013.04.03 0 0 20932

Ha B11-től és C11-től végigmásolod jónéhány soron (50-1000) az alábbi 2 képletet, akkor az A11-től beírt eredmények azonnal megjelennek a C oszlopban, ahogyan szeretnéd.

 

B11: =HA(DARABTELI($A$11:A11;A11)>1;0;MAX($B$10:B10)+DARABTELI($A$11:A11;A11))

C11: =HA(SOR(A11)-10<=MAX(B:B);INDEX($A$11:$A$1000;HOL.VAN(SOR(A11)-10;$B$11:$B$1000;0);1);"")

 

 

Előzmény: tbando (20931)
tbando Creative Commons License 2013.04.02 0 0 20931

OK.

 

A: sorban az eredmények ahogy születnek

C: az elméletileg várható összes eredmény

D: =darabteli(A:A;C1)     ( A d1-be irva és végimásolva)

Előzmény: Rusvai Zsolti (20930)
Rusvai Zsolti Creative Commons License 2013.04.02 0 0 20930

Épp az lenne a lényeg, hogy ne kelljen minden forduló után új lekérdezést csinálni, hanem csak az eredményeket beírni és az excel automatikusan újraszámoltatni

Előzmény: tbando (20925)
Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20929

Még egy szó: az Excel arra jó, hogy adatokat rendezetten tároljunk, számításokat és más műveleteket végezzünk velük, diagramokat rajzoljunk, színes-szagos szép formázásokat csináljunk.

 

A kulcsszó, a vészjelző a kapcsolat. Amikor az adatok közötti kapcsolatokon van a hangsúly, azonnal megszólalhat a kis sziréna a fejünkben, hogy ez adatbázis.

Előzmény: Sánta Kutya (SK) (20928)
Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20928

Kicsit részletesebben:

Erre még egy MS Access is megfelel, nagyon egyszerű lesz.

1. tábla: szervezetek (név, azonosító)

2. tábla: személyek (tetszőleges adatok, azonosító, szervezetazonosító)

3. tábla: ismeretségek (1. személy azonosítója, 2, személy azonosítója)

 

Utána jöhetnek a lekérdezések. Alapszinten fapadosan ezt negyedóra összedobni, ha rendes beviteli űrlapokat is akarsz, kicsit több.

 

Előnyei:

  • normalizálva van, az adatok és a kapcsolatok is áttekinthetőek
  • egyszer kell megcsinálni a lekérdezéseket, utána kattintásra mindig lefutnak
  • könnyen és értelmesen bővíthető, ha újabb kívánságok jutnak eszedbe.

Ezzel szemben az exceles megoldás

  • nehezen áttekinthető, nem normalizált (azaz következetlen az adatok szerkezete)
  • minden alkalommal újra meg kell csinálni a szűréseket, amikor akarsz egy eredményt (ez felel meg a lekérdezéseknek)
  • bővítéskor egyre bonyolultabb és áttekinthetetlenebb lesz.

It's up to you. :-)

 

Előzmény: maiann (20921)
tbando Creative Commons License 2013.04.02 0 0 20927

Még annyit hozzáfűznék, hogy kapcsolatkeresésekre a special helyben szűrés a praktikus.

Előzmény: tbando (20926)
tbando Creative Commons License 2013.04.02 0 0 20926

Ahogy sk írta, az excelben elég komplikált a kapcsolatok áttekintése. De én már csináltam valami hasonlót. Lehet, hogy neked is megfelel.

 

A oszlop: Lista a személyekről

 

CDEF..stb oszlopokba hogy A kit ismer 

 

B: CDEF.. nevek összefűzve. 

 

Ezek után a B-oszlop bármelyik névre szűrhető, kiadja hogy kikkel áll kapcsolatban. A szűrés *..* helyettestő jellel oldható meg. Például. ha Pista kapcsolataira vagy kiváncsi  akkor *Pista*

 

A CDEF oszlopok csak technikai szempontból hasznosak, szerintem könnyebb velük a B-oszlopot összehozni, mint abba bepötyögni a kapcsolatokat.

Előzmény: maiann (20921)
tbando Creative Commons License 2013.04.02 0 0 20925

A pivot a legegyszerübb megoldás. Csak az 'A' oszlopot kell hozzá vezetned. A kimutatás beállításakor a bal alsó négyzetbe behúzod az "eredmény" fejléc-cimkét majd a jobb alsóba is, ahol aztán darabfüggvényre állítod.  Persze csak akkor, ha statisztikát is akarsz az előfordulási gyakoriságukról. És ezt mindig megismétled, amikor új adatokkal bővülsz.

Előzmény: Rusvai Zsolti (20919)
tbando Creative Commons License 2013.04.02 0 0 20924

És működik? Nálam azt írta ki, hogy nincs ilyen objektum. Hogy milyen, azt nem részletezte. Lehet, hogy nem is checkbox volt, hanem valamilyen más beágyazás.  Valami választékot ajánlott fel.

Előzmény: Törölt nick (20918)
Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20923

Először is kicsit pontosabban kellene megfogalmazni, mit jelent a "több személy több szervezeten belül kit ismer". Másodszor pedig ez tipikusan adatbázis-kezelési feladat, Excelben csak akkor kezdj hozzá, ha mazochista vagy.

Előzmény: maiann (20921)
Delila10 Creative Commons License 2013.04.02 0 0 20922

A speciális-, vagy lánykori nevén irányított szűréssel ki tudod íratni egy másik oszlopba, az egyedi értékek opciót választva.

Előzmény: Rusvai Zsolti (20919)
maiann Creative Commons License 2013.04.02 0 0 20921

Sziasztok,

Excelben szeretnék egy olyan 'ismeretségi hálózatot' létrehozni, ahol egyszerűen kereshető, hogy több személy több szervezeten belül kit ismer. Sok esetben ugye a kereső fél nem ismeri konkrétan a keresendő személyt és nevét, mert akkor egyszerű Ctrl+F és happy end lenne.

Ezzel kapcsolatban tudtok nekem adni valami jó tippet? Hogyan tudom ezt úgy csokorba szedni, hogy utána megkönnyítsem a keresést és ne kelljen egyesével végigmászni a neveken?

 

Előre is köszi a segítséget!

 

 

Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20920

Jobbnál jobb megoldások születnek utólag. :-) Ez viszont így is tanulságos, még jó lesz valamire.

Előzmény: Törölt nick (20918)
Rusvai Zsolti Creative Commons License 2013.04.02 0 0 20919

Sziasztok!

  

Egy futball eredményeket tartalmazó excel táblából szeretném kiíratni az előforduló eredményeket egymás alá vagy mellé úgy, hogy minden előforduló eredmény pontosan egyszer szerepeljen.

Odáig még eljutottam, hogy DARABTELI függvénnyel megvizsgáltam, hogy az adott eredmény hanyadszor fordul elő, a B oszlop 1 értéke jelzi adott eredmény első előfordulását, így az A oszlopban szereplő eredmények közül annyi egyedi van, ahány 1-es érték található a B oszlopban. Ezzel csak az a probléma, hogy nekem nem elég az egyedi értékek száma, hanem ki is kellene íratnom valahogy egymás alá (lásd E oszlop) vagy mellé. Továbbá mivel hétről-hétre újabb eredmények kerülnek rögzítésre a táblázatba, a szűrt értékek köre is folyamatosan bővül, ami szintén problémát jelent. Ha esetleg új előfordulás jönne képbe, szeretném, ha automatikusan "hozzáadódna" az egyedi eredmények listájához. A probléma megoldásában szeretném segítségeteket kérni!

 

Köszönöm előre is!

Törölt nick Creative Commons License 2013.04.02 0 0 20918

(Szinte) Ugyanaz mint amit sql adott makrót:

F5

irányított

objektumok kijelölése

OK

Del

 

 

Előzmény: Sánta Kutya (SK) (20911)
Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20917

20913 :-)

Előzmény: tbando (20916)
tbando Creative Commons License 2013.04.02 0 0 20916

Az egész lap  ctrl+c ctrl+v-je egy új lapra szerintem segíteni fog.

Előzmény: Sánta Kutya (SK) (20911)
Törölt nick Creative Commons License 2013.04.02 0 0 20915

'===================================================================================
' Megvizsgálja, hogy létezik-e a paraméterként megadott könyvtár, ha nem létrehozza
'===================================================================================
Sub MakeDirektory(KonyvtarHelyeNeve As String)

  If Len(Dir(KonyvtarHelyeNeve, vbDirectory)) = 0 Then
    MkDir KonyvtarHelyeNeve
    MsgBox "A megadott könyvtárat létrehoztam!", vbInformation, "Ellenőrzés"
  Else: MsgBox "A megadott könyvtár már létezik!", vbCritical, "Ellenőrzés"
  End If

End Sub

 

Pl. mappa3 létrehozása: MakeDirektory("C:\mappa1\mappa2\mappa3")

Előzmény: Redlac (20907)
Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20914

De egyébként nem kép volt, mert lehetett pipát rakni bele meg kivenni, csak törölni nem. :-)

Előzmény: SQLkerdes (20912)
Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20913

Köszönöm, az első bevált! (Egy kommentjel pótlásával.)

Előzmény: SQLkerdes (20912)
SQLkerdes Creative Commons License 2013.04.02 0 0 20912

1.) For ... Each ciklussal menj végig minden objektumon és töröld

 

Delete only specific shapes

What if you only want to delete control toolbox controls, Pictures or forms controls.
You can loop through the collection and check the Type of the control.

12 = ActiveX control (control toolbox) or a linked or embedded OLE object.
13 = Picture

Sub Shapes2()

'Loop through the Shapes collection and use the Type number of the control

Dim myshape As Shape

For Each myshape In ActiveSheet.Shapes

' ActiveX control (control toolbox) or a linked or embedded OLE object.

If myshape.Type = 12 Then myshape.Delete '

You can also use myshape.Visible = False

Next myshape

End Sub

 

 

2.) Próbálj meg egy jobb klikket rajta és Cut-olni (olvastam, h. nem lehet kijelölni, de hátha a jobb klikk műxik)

3.) Go To menüpont, Objektumok és amikor kijelölte az összeset akkor egy szimpla Delete.

4.) Az excel Home tab // Find& Select részében van egy olyan menüpont, hogy Select Objects.  Utána delete

5.) Ha az excel Checkboxnak érzi (valószínűtlen, szerintem valami képként jött át, de a remény hal meg utoljára) akkor:  ActiveSheet.CheckBoxes.Delete


Előzmény: Sánta Kutya (SK) (20911)
Sánta Kutya (SK) Creative Commons License 2013.04.02 0 0 20911

Phpmyadminból, Firefoxból másoltam be sorokat a táblázatba (2007), és a takarítás után az egyik sor első cellájában ottmaradt egy checkbox, és az istennek se bírom kipaterolni. Cella törlése, sor törlése, tartalom törlése mind kipróbálva, kijelölni nem tudom, ha kitörlöm a sort, az alatta levőbe helyeződik át a rohadék, és még csak egy nem látható jelek gombom sincs, mint a Wordben. Mit tegyek? Egész elképesztő. Több másik egyébként szépen eltűnt.

Redlac Creative Commons License 2013.04.01 0 0 20910

Ha ezt a kérdést nekem tetted fel, akkor passzolom :-)

Előzmény: Törölt nick (20909)
Törölt nick Creative Commons License 2013.04.01 0 0 20909

jól teszed. hasznos dolog.

nincs valami gyűjtőhely, ahol le van írva, hogy a windows dolgait hogy lehet piszkálgatni?(ADO, vagy hogy hívják ezt?)

Előzmény: Redlac (20908)
Redlac Creative Commons License 2013.03.31 0 0 20908

Elbeszélgetek magammal...

 

Sub mappa()

Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
fso.CreateFolder "d:Users" & Environ("USERNAME") & "Desktop" & Range("Z32") & "_" & Range("E39") & "_" & Range("D40")
End Sub

Előzmény: Redlac (20907)
Redlac Creative Commons License 2013.03.31 0 0 20907

de, ha már itten vagyunk :-)

 

az mkdir-rel hogyan lehet létrehozni mappát?

 

 

Redlac Creative Commons License 2013.03.31 0 0 20906

Köszönöm a válaszokat, de...

 

- a céges gépeken EZ az Asztal elérési útvonala.

- a kollégák...az Asztalt megtalálják...:-)

- az odamentett fájlt vagy egy másik (csak akkor létrehozott) mappába kell áthelyezni, vagy email-ben elküldeni

 

 

Közben meglett a javítás, és működik is:

 

Sub macro()   

Dim nev$, utvonal$   

utvonal$ = "d:Users" & Environ("USERNAME") & "Desktop"   

nev$ = Range("Z32") & "_" & Range("E39") & "_" & Range("D40") & ".xlsm"   

ActiveWorkbook.SaveAs Filename:=utvonal & nev$

End Sub

 

 

 

 

Előzmény: pimre (20905)
pimre Creative Commons License 2013.03.31 0 0 20905

Bocs, de miért az asztalra akarsz menteni? Ha egy-két fájlról lenne szó, akkor talán elfogadható a dolog, de ahhoz nem kell program. Tekintettel arra, hogy programot használsz hozzá, feltételezem, hogy fájlok sokaságát akarod menteni. Erre nem az asztal való!!! Ebből ugyanis előbb-utóbb áttekinthetetlen katyvasz lesz az asztalon, annak eredeti célja helyett, ami szerintem az, hogy a leggyakrabban használt programjaidat, esetleg fontosabb fájljaidat könnyen megtaláld.

 

Olyan nagy gond lene, hogy mondjuk a dokumentumok mappában (vagy a példádban a d: gyökerében) hozz létre az adott feladatnak megfelelő mappát, és oda pakolgasd a fájlokat?

Előzmény: Redlac (20902)
Törölt nick Creative Commons License 2013.03.31 0 0 20904

Én pár éve a Librin keresztül rendeltem meg, akkor még hozták. A gépemen megvan valahol pdf-ben is.

A Krizsák könyve nem elavult? - mert hogy 97-es...

Nekem van egy harmadik könyv is, most nincs előttem, de tankönyv jellegű.

Előzmény: Delila10 (20901)
Sánta Kutya (SK) Creative Commons License 2013.03.31 0 0 20903

Az ugye beállításoktól és Windows verziótól függ, hol van az asztal, alapesetben ennél bonyolultabb, pl. Win7 alatt c:\Documents and Settings\Default User\Desktop\.

Ahogy a te útvonalképzésedet elnézem, súlyosan hiányzik egy backslash az elérési út meg a filenév közül.

Előzmény: Redlac (20902)
Redlac Creative Commons License 2013.03.31 0 0 20902

Segítsetek :-)

 

Sub macro()   

Dim nev$, utvonal$   

utvonal$ = "d:\Users\" & Range("S31") & "Asztal"   

nev$ = Range("Z32") & "_" & Range("E39") & "_" & Range("D40") & ".xlsm"   

ActiveWorkbook.SaveAs Filename:=utvonal & nev$

End Sub

 

Az S31 tartalmazza a felhasználó nevét.

 

De nem akar rendesen működni.

 

A célom az, hogy a felhasználó asztalára kerüljön mentésre a dokumentum. De ehelyet a felhasználó mappájába menti és a fájlnevet kezdi asztal-lal. Desktop-pal is próbálkoztam

Delila10 Creative Commons License 2013.03.31 0 0 20901

El kell csípni, netes antikváriumban vettem anno, persze CD melléklet nélkül. :(

Átböngésztem 13 netes antikváriumot, és most is csak előjegezni lehet itt-ott.

 

Krizsák könyvét már sehol sem lehet megtalálni, pedig nagyon hasznos.

Előzmény: Sánta Kutya (SK) (20900)
Sánta Kutya (SK) Creative Commons License 2013.03.30 0 0 20900

A Kovalcsikot még antikváriumban is csak előjegyezni lehet. :-( Max. ha könyvtárból sikerül.

Előzmény: Delila10 (20898)
Törölt nick Creative Commons License 2013.03.30 0 0 20899

http://prog.hu/hirek/3182/Elkeszult+az+Office+Developer+Tools+for+Visual+Studio+2012.html

 

néha úgy érzem, kezdek lemaradni a fejlődéshez képest... :(

Delila10 Creative Commons License 2013.03.30 0 0 20898

Szívesen.

 

Legtöbben Kovalcsik Gézától Az Excel (verziószám ide) programozása című könyvet ajánlják. Krizsák Lászlónak is jelent meg (régen) ilyen című könyve, az is nagyon jó.

A YouTube-on, Excel VBA-t beírva sok példát találsz, és Exceles fórumokon – pl. itt – sokat tanulhatsz. Akár a tökfőzelékről és a grízestésztáról, mint válóokokról.

Előzmény: fp1118 (20897)
fp1118 Creative Commons License 2013.03.30 0 0 20897

Köszönöm! Kedden kipróbálom! :)

 

Egyébként tudnál abban segíteni nekem, hogy ezt a makró programozást milyen szakirodalomból lehetne elsajátítani? Teljesen kezdő vagyok a témában, de van rá affinitásom, és érdekelne is a dolog.

Előzmény: Delila10 (20894)
Törölt nick Creative Commons License 2013.03.30 0 0 20896

Stringkeresőnél próbáld ki, hogy bejelölöd a tömörítettben is keressen opciót. (Az xlsx egy tömörített állomány.)

 

tc-hez 1 hónapja próbáltam keresni viewert, én sem találtam.

 

Esetleg érdemes frisebb tc-t is berszerezni.

Előzmény: Digger57 (20895)
Digger57 Creative Commons License 2013.03.30 0 0 20895

Sziasztok!

Tudtok olyan xlsx viewer programról, amit lehet használni a TotalCommander betekintőként is?

A cégemnél korábban xls állományban kaptam fontos adatokat. Volt hozzá olyan viewer, hogy ha rááltam az állományra a TC egyik ablakában, akkor a másik oldalon már láttam is a tábla bal felső sarkát. Mióta áttértek az xlsx használatára, nem találok hasonló programot hozzá!

A másik ami nagyon rosszul érint, hogy eddig az xls állományok könyvtárában, szintén a TC-vel, egyszerű stringkeresővel meg tudtam keresni azokat az Excel állományokat, amiben szerepel bizonyos karakterlánc. Sajnos ez sem működik már az xlsx-nél! :-(

Delila10 Creative Commons License 2013.03.30 0 0 20894

Az előző makróban a gyűjtő fájlt Ide.xlsm-ként mentettem, az összefésülendő fájlokat a D:\Ide\ mappába mentettem. Maradva ezeknél a neveknél

 

Sub Szetcincalas()
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    
    Dim utvonal As String, lap%, lap1%, lapnev As String, WB As Workbook
    
    utvonal = "D:\Ide\"
    Set WB = Workbooks("Ide.xlsm")
    
    For lap% = 1 To Sheets.Count
        lapnev = Sheets(lap%).Name & ".xlsx"
        Workbooks.Add
        ActiveWorkbook.SaveAs utvonal & lapnev
        WB.Sheets(lap%).Copy before:=Workbooks(lapnev).Sheets(1)

 

        'Felesleges lapok törlése
        For lap1% = Sheets.Count To 2 Step -1
            Sheets(lap1%).Delete
        Next


        ActiveWorkbook.Save
        ActiveWindow.Close
    Next
    
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    MsgBox "Kész van!"
End Sub

Előzmény: fp1118 (20893)
fp1118 Creative Commons License 2013.03.29 0 0 20893

Kedves Delila 10!

 

Köszönöm a segítséget, flottul ment minden. Kérhetném a segítségedet a dolog megfordításában is? Tehát sok lapból álló munkafüzetet laponként új fájlba menteni. Excel 2010.

 

Köszönöm előre is!

Előzmény: Delila10 (20883)
Delila10 Creative Commons License 2013.03.29 0 0 20892
Előzmény: djmorphy (20890)
Delila10 Creative Commons License 2013.03.29 0 0 20891
Előzmény: djmorphy (20890)
djmorphy Creative Commons License 2013.03.29 0 0 20890
Van egy készlet. Xlsx és egy készlet(ütközés). Xlsx ami eltér mentés időpontban és file méretben is.
És szeretném tudni mi az ami eltér a két file között
Előzmény: Törölt nick (20888)
Retro Image Creative Commons License 2013.03.29 0 0 20889

Súgó -> névjegy megmondja a verziószámot, a többi a google dolga

:o)

Előzmény: djmorphy (20887)
Törölt nick Creative Commons License 2013.03.29 0 0 20888

"sikerült az excellel megoldanom egy ützközést"

 

Ez pontosan mit jelent?

Előzmény: djmorphy (20887)
djmorphy Creative Commons License 2013.03.29 0 0 20887

Sziasztok!

 

Olyan problénán van, hogy sikerült az excellel megoldanom egy ützközést :(

 

Amit nem vettem észre csak mikor már elhaladtam a munkával rendesen.

Hogyan lehetne kideríteni a két excel közötti különbséget?

Delila10 Creative Commons License 2013.03.28 0 0 20886

A "szöveges részben" még tudtam, de a bemásolt makrónál elfelejtkeztem a jólneveltségről. :((

Előzmény: Sánta Kutya (SK) (20885)
Sánta Kutya (SK) Creative Commons License 2013.03.28 0 0 20885

\\ :-)

Előzmény: Delila10 (20884)
Delila10 Creative Commons License 2013.03.28 0 0 20884

Megint megette ez a nyavalyás fórummotor a backslash-eket a makróban. Be kell írni az utvonal változónál.

Előzmény: Delila10 (20883)
Delila10 Creative Commons License 2013.03.28 0 0 20883

Nem írtad, az Excelnek melyik verzióját használod. 2003-hoz írtam a makrót.

A D meghajtó Innen nevű mappájában vannak a behívandó füzetek, ezt az utvonal="D:\Innen\" sorban írhatod át. A lapokat az Ide.xls fájlba gyűjti be. Ezt 2 helyen kell átírnod a makróban. Ha magasabb verziót használsz, az xls kiterjesztést is módosítanod kell. Mivel az Ide nevű fájlban lesz a makró, xlsm (makróbarát) lesz.

 

Sub Osszesites()
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    
    Dim utvonal As String, FN As String, Ulap As Integer
    utvonal = "D:Innen"
    
    'Fájlok behívása
    ChDir utvonal
    FN = Dir(utvonal & "*.xls", vbNormal)
    Do
        If FN <> "." And FN <> ".." Then
            Ulap = Workbooks("Ide.xls").Worksheets.Count
            Workbooks.Open Filename:=utvonal & FN
            'Másolás a megnyitott füzetbe
            Sheets(1).Copy After:=Workbooks("Ide.xls").Sheets(Ulap)
            ActiveWindow.ActivatePrevious   'Behívott fájl
            ActiveWindow.Close  'Zárás mentés nélkül
        End If
        FN = Dir()
    Loop Until FN = ""
    
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    MsgBox "Kész van!"
End Sub

Előzmény: fp1118 (20882)
fp1118 Creative Commons License 2013.03.27 0 0 20882

Kedves fórumozók!

 

A következő problémával találkoztam. Lehet, hogy bugyuta kérdés, de nekem nagy segtség lenne. Van egy mappám, tele azonos formátumú (xlsx) excel táblázatokkal (50 db), és mindegyik excel tábla egyetlen munkalapot tartalmaz (a sorok száma eltérő). Arra szeretnék megoldást találni, hogy az 50 fájl munkalapjait egyetlen fájlba összerakjam, de mindegyiket külön lapra. (Tehát az 50X1 lapból, 1X50-et csinálni.) A Másolás vagy áthelyezés megoldást ismerem, de ez meglehetősen bonyolult.

 

Ha valaki tud segíteni valami egyszerűbbet találni, azt megköszönöm!

seven update sorbi Creative Commons License 2013.03.27 0 0 20881

Szuper, köszi. :)

Előzmény: Törölt nick (20880)
Törölt nick Creative Commons License 2013.03.27 0 0 20880

tiltsd le a makrókat a biztonsági beállításoknál. utána nyisd meg.

Előzmény: seven update sorbi (20879)
seven update sorbi Creative Commons License 2013.03.27 0 0 20879

Sziasztok!

 

Elkövettem azt a hibát a makrós excelemben, hogy ugyanazt a nevet adtam meg egy public változónak és egy makrónak. Ettől az excel kiakad és nem hajlandó megnyitni ezt a munkafüzetet (ami számomra fontos programokat tartalmaz). Azt szeretném kérdezni, hogy hogy lehetne esetleg máshogy megnyitni ezt az excel-munkafüzetet (más programmal), vagy hogy lehetne valamilyen csatornán keresztül hozzáférni a makrókhoz (hogy ki tudjam a hibát javítani).

Törölt nick Creative Commons License 2013.03.27 0 0 20878

Vannak képletkiértékelő eszközök az excelben... Azokon szépen fastruktúra szerűen látszik

 

 

Előzmény: djmorphy (20875)
djmorphy Creative Commons License 2013.03.26 0 0 20877
Köszönöm szépen!
Előzmény: Sánta Kutya (SK) (20876)
Sánta Kutya (SK) Creative Commons License 2013.03.26 0 0 20876

Keress rá pl. egy Dia nevű programra.

Előzmény: djmorphy (20875)
djmorphy Creative Commons License 2013.03.26 0 0 20875
Sziasztok!

Egy közvetett kérdésem lenne az Excel hez.
Van egy 25-27 munkafüzetből álló excelem. Lassan kezdem elveszteni a fonalat hogy melyik munkafüzet melyikre van hatással.
Van valami ötletetek hogyan lehetne hatékonyan(nem paintbe :)) rajzolni/tervezni a kapcsolatukat ?

Pl A mf3!B5 kitörlöm az hatással lesz a mf8!G6ra...
Sánta Kutya (SK) Creative Commons License 2013.03.26 0 0 20874

A SZUMHA függvény egyáltalán nem igényli, hogy az összeadandókra tegyél feltételt, pont ez a jó benne. Egyszerűen használd a függvénybeszúró varázslót, minden argumentumhoz oda van írva, mire való.

Előzmény: Anami14 (20873)
Anami14 Creative Commons License 2013.03.26 0 0 20873

Eddig én is eljutottam, csak nem tudom mit írjak feltételnek, mivel nem magára az összegezendő számokra van kritérium, hanem a mellette lévő oszlopban kell megkeresni egy szakot, ami többször is szerepel és az ezek mellett lévő számokat kell szummázni. FKERES-sel próbálkoztam még, de eddig nem jutottam sokra sajnos.

Előzmény: Sánta Kutya (SK) (20872)
Sánta Kutya (SK) Creative Commons License 2013.03.26 0 0 20872

Erre való a SZUMHA függvény.

Előzmény: Anami14 (20871)
Anami14 Creative Commons License 2013.03.26 0 0 20871

Sziasztok! Van egy táblázatom, amiben 2 oszlopban vannak különböző szakok és a mellettük lévő cellákban pedig számok. Egy másik munkalapon pedig fel vannak ezek a szakok sorolva és mellé ki kellene számolnom, hogy az 1. munkalapon ahol az a bizonyos szak szerepel, mennyi a mellettük lévő számok összege. Ezt meg lehetne valahogy oldani segédcellák nélkül? Előre is köszönöm a segítséget!

Sánta Kutya (SK) Creative Commons License 2013.03.26 0 0 20870

Azért rejtett, mert a képernyős nézetben nincs rá szükség és zavaró is.

Mivel nyomtatásban több oldalra fér ki, ott kell valami, ami összetartja.

De lehet, hogy a filenevet fogom végül beleírni, mert végül is van egy kérésünk a felhasználók felé, hogy milyen néven elmentve küldjék vissza az űrlapot, és ha csak a 80%-uk betartja, akkor már jó vagyok ezzel is.

Előzmény: tbando (20869)
tbando Creative Commons License 2013.03.26 0 0 20869

Nem értem, hogy miért kéne rejtett sorként felvenned a fent ismétlődő sort. Ahogy én elképzelem: mivel annak semmi akadálya, hogy a több sort vegyél fel fel fent ismétlődőnek, hát kijelölsz mondjuk 4-t, abból az alsó lehetne a tényleges táblázatfejléc, a felső pedig a címbe bekerűlő cellák. Ha a táblázatod celláit, beleértve a fejlécét is, tetszés szerint szegélykeretezed, a cellák nyomtatása parancsot kikapcsolod, és ha kell, még a margókkal is elszórakozol, akkor szinte egy tökéletes felsősor vezérelt élőfej imitációt tudsz létrehozni. Vagy félreértem a problémát? 

Előzmény: Sánta Kutya (SK) (20867)
Delila10 Creative Commons License 2013.03.26 0 0 20868

A fent ismétlődő sorok egyik cellájában legyen a részösszeg függvény, vagy teszel oda egy nyomtatásban is látható alakzatot, amihez hozzárendeled a függvény cellájának a címét. Az alakzaton állva a szerkesztőlécre beírod: =függvény_cellájának_címe

Előzmény: Sánta Kutya (SK) (20867)
Sánta Kutya (SK) Creative Commons License 2013.03.26 0 0 20867

Köszi, de ez azon alapul, hogy mindig szigorúan ugyanannyi sor kerül egy nyomtatott lapra, ami  a konkrét esetben távolról sem áll fenn.

Nem értem, miért nem bírtak egy ilyen kézenfekvő dolgot beépíteni, amikor annyiféle mezőt meg lehet ott jeleníteni.

Még eszembe jutott, hogy rejtett sort lehetne fent ismétlődő sorként felvenni, de nem ér meg annyi pepecselést, amennyibe kerül újból kijátszani a nyomtatási képet.

Előzmény: SQLkerdes (20866)
SQLkerdes Creative Commons License 2013.03.26 0 0 20866
Előzmény: SQLkerdes (20865)
SQLkerdes Creative Commons License 2013.03.26 0 0 20865

Nem pontosan amire te gondolsz, de nem teljesen más...

Előzmény: Sánta Kutya (SK) (20863)
Törölt nick Creative Commons License 2013.03.26 0 0 20864

makró nélkül szerintem sehogy

Előzmény: Sánta Kutya (SK) (20863)
Sánta Kutya (SK) Creative Commons License 2013.03.26 0 0 20863

Office 2007, hogy lehet az élőfejbe egy megadott cella tartalmát beilleszteni? Makró nem játszik.

tbando Creative Commons License 2013.03.24 0 0 20862

B+. Balsávba :((((.

Előzmény: tbando (20861)
tbando Creative Commons License 2013.03.24 0 0 20861

Akkor érdemes lenne megismerkedned vele. Mert bár a számlázáshoz a 20855-ös megoldás a praktikusabb, de ha a főnököd egyszercsak tájékoztatást kérne a kuncsaftok fizetési moráljáról, akkor a számlázólistát a kimutatásvarázslóval lehet áttekintehetőbbé tenni, egyrészt azzal hogy az ismétlődéseket elhagyja, másrészt a kuncsaftkódokat sorbarendezi. És csak pár klikk az egész. A kurzort a listára állitod, majd KIMUTATÁS, majd az A oszlopot a jobbsávba húzod, a B oszlopot a felsősorra és be középre, itt átállítod az AB.függvényt DARAB-ra és kész. Próbáld ki. 

Előzmény: Veronika08 (20860)
Veronika08 Creative Commons License 2013.03.24 0 0 20860

Sajna azt sem ismerem

Veronika08 Creative Commons License 2013.03.24 0 0 20859

Sajna azt sem irmerem....

Előzmény: Törölt nick (20858)
Törölt nick Creative Commons License 2013.03.24 0 0 20858

kimutatás táblával a legegyszerűbb szerintem

 

Előzmény: Veronika08 (20849)
Veronika08 Creative Commons License 2013.03.24 0 0 20857

KÖSZÖNÖM!!! SZUPER!!!!

Előzmény: tbando (20855)
Veronika08 Creative Commons License 2013.03.24 0 0 20856

Köszönöm, de sajnos nem látom "rögtön". Itt ugyanúgy át kell néznem az egészet. Cca. 10.000 emberke van, és mindenek 6-8 számlája. Uh a táblázatom nem éppen kicsi.:(

 

Előzmény: Delila10 (20854)
tbando Creative Commons License 2013.03.24 0 0 20855

Én ezt csinálnám:

 

Coszlop:  =DARABTELI(A:A;a1) (hány db van ugyanabból)

Doszlop:  =SZUMHA(A:A;a1;B:B) (abből hányszor 1)

Eoszlop: =HA(C1=D1;"ok";0)           (100%: ok)

 

A  fenti képletekkel a számlakibocsájtások tetszőleges sorrendűek lehetnek. Tehát lehet kibocsájtási is, azaz amikor hozzáírod a listához az új számlát, rögtön látod a delikvens eddigi fizetési készségét.

 

 

Előzmény: Veronika08 (20849)
Delila10 Creative Commons License 2013.03.24 0 0 20854

1 megoldás a sok lehetséges közül:

 

Egy üres oszlopban (legyen ez a D) összefűzöd a két oszlop adatát, közöttük egy alsó kötjellel.

=A1&"_"&B1

Ezt lemásolod az adataid mellé. Kijelölöd a D oszlopot, Ctrl+c-vel másolod. Jobb klikk, Irányított beillesztés, Értéket. Ezzel a képleteket értékekké alakítottad, tehát nem függnek az A és B oszlopok adataitól. Rendezed a D oszlopot, és rögtön látod, kinek van a kódja mellett vegyesen 0 és 1, ki fizetett mindig időben, ki soha.

Előzmény: Veronika08 (20849)
Veronika08 Creative Commons License 2013.03.24 0 0 20853
Az A oszlopban lévő számok emberkéketet jelentenek, készült részükre x db számla, amit ha időben fizettek, akkor a B oszlopban 1 az érték. A kérdés az, h ki az,aki minden szláját időben fizette. Így jó? Köszi
Előzmény: mimi_bacsi (20852)
mimi_bacsi Creative Commons License 2013.03.24 0 0 20852

Ha pontosabban és bővebben megfogalmazod a problémádat, megpróbálok segíteni! 

 

Előzmény: Veronika08 (20849)
mimi_bacsi Creative Commons License 2013.03.24 0 0 20851

Persze megnézetném, hogy a két sorban lévő első számsor azonos-e és az azonosság esetén íratnám ki, "OK" vagy nem. Így érted a feladatot?

Előzmény: mimi_bacsi (20850)
mimi_bacsi Creative Commons License 2013.03.24 0 0 20850

Az "OK" szót egy harnadik oszlopba íratnád? A C2 cella így néz ki: HA($B2>0;"OK";" ")

Azaz, ha a B2 cellában lévő szám nagyobb mont 0, akkor az OK szót írja, egyébként nem ír semmit!

 

Erre gondoltál?

Előzmény: Veronika08 (20849)
Veronika08 Creative Commons License 2013.03.24 0 0 20849

Sziasztok!

Segítséget szeretnék kérni, az alábbi feladathoz:

Az A oszlpoban sokféle szám van, a B oszlopban 1 és 0.

A feladat az, hogy amennyiben az A oszlopban azonos számohoz, a B oszlopban minidig 1 tartozik, akkor OK. A többi esetben nem. (az A oszlopban a számok növekvőbe rendezve)

 

004000007000000000 1

004000007000000000 1

004000007000000000 1

004000007000000000 1

004000007000000000 1

004000007000000000 0

012000013100000000 1

012000013110000000 1

012000015110000010 1

012000018010000000 0

012000021000000000 1

012000021000000000 1

012000022000000000 1

 

Köszi szépen Zsófi

tbando Creative Commons License 2013.03.22 0 0 20848

Kösz. Sikerült. Az volt probléma, hogy az xla füzetre hivatkozasnal lehagytam az xlam kiterjesztést.

Előzmény: Törölt nick (20847)
Törölt nick Creative Commons License 2013.03.22 0 0 20847

a 20833-at  is nézted?

szó szerint előcsalogatni nekem sem sikerült (még) a munkalapját, hogy pl. tudjak rajta módosítani.

Túlzottan nem is érdekel, mert az xlam megvan  xlsm-ben  is - és egyikből tudom a másikba mozgatni a makrókat - szükség esetén pedig xlsm-ben módosítom a munkalapot és rámentem (másként) az xlam-re.

 

Favágós, de így tudom jelenleg.

Eléggé zavar hogy nem tudom közvetlenül piszkálni, de biztos  (Legyünk jóindulatúak... :) megvan rá a MikeRowSoft oka. 

Előzmény: tbando (20843)
Törölt nick Creative Commons License 2013.03.22 0 0 20846

nem ezt tapasztaltam.

Pl. fennt van  szalagmenün is nekem az xla-ban lévő makró - ennél fogva bárhonnan lehet indítani. Ha valamit nem látni, akkor valószínűleg úgy van megírva az xla-ban  a makró, hogy ne lehessen a lehetséges felületekről indítani(nem tudom van e ilyen, de kell h legyen) Énkonkrétan nem tudom, hogy mi a különbség a private meg a public között - talán a private-t csak a munkafüzetből lehet elérni, a publicot meg bárhonnan.

Pl azt sem tudom mivel kell (még nem volt rá szükségem) olyan változót deklarálni, amit bárhonnan elérek és megőrzi az értékét stb...

Előzmény: Delila10 (20844)
Törölt nick Creative Commons License 2013.03.22 0 0 20845

az az érdekes, hogy egy elmentett  *.bas makrót "belehúzok" az xla(m)-be, akkor az látszik alt+f8-ra felugró futtatás ablakban. Ma próbáltam ki.

Hogy a solvernél nem látom? Speciel jelszó védi. Legalábbis most az otthoni gépen néztem meg, de munkahelyi gépen meg le tudtam nyitni ha jól emlékszem. Nem néztem, de talán be is lehet állítani, hogy a felhasználó ne "lássa" a module-kat.

Előzmény: Törölt nick (20842)
Delila10 Creative Commons License 2013.03.22 0 0 20844

A saját készítésű bővítmények makrói láthatóak, de csak a VBE-ben, az Alt+F8 ablakából nem indíthatóak.

Úgy viselkednek, mint a Private Sub kezdetű makrók.

Előzmény: Törölt nick (20842)
tbando Creative Commons License 2013.03.22 0 0 20843

Valószínüleg azért, mert akkor órákig kereshetnéd az xls makróidat a tengernyi bővítményeljárás infuz listájában. Mivel ezutóbbiak rengetegen lehetnek, minden bizonnyal célszerűbb őket valami módon saját menükbe szerkeszteni. De hogy hogyan, ahhoz kevés vagyok.

 

Meg különben is, csak kevés tapasztalatom van az xla-kal. Szerintem ui. csak a saját függvényeket  praktikus xla fileba gyűjteni, az általános makrókra már praktikusabb a Personal füzet.  Emiatt még mindig nem tudom a saját xla füzetem munkalapját előcsalogatni, hiába variálgatom a 20831 posztod szerinti eljárást. Az okulásomra nem raknád ki ide a teljes eljárást? Vagy küldöd el priviben?

 

Előzmény: Törölt nick (20841)
Törölt nick Creative Commons License 2013.03.22 0 0 20842

Ez valószínűleg tervezett. Végülis a Solver meg az Analysis Tool Pack makróit sem látod.

Előzmény: Törölt nick (20841)
Törölt nick Creative Commons License 2013.03.22 0 0 20841

azt nem tudod, hogy az xla-ban lévő makrók alt+f8-ra miért nem látszanak?

minden más módon el tudom érni, de a makróablakban nincs.

Előzmény: tbando (20840)
tbando Creative Commons License 2013.03.21 0 0 20840

Sajnos nem jó. De kösz a tanácsot, mert a sugóban utána nézve a TISZTIT-nak jöttem rá, hogy a =Helyette(szöveg;karakter(160);"") már jó lesz.

Előzmény: Törölt nick (20838)
Törölt nick Creative Commons License 2013.03.21 0 0 20839

nézz rá a 20502-re.

de szrtem elég egyszerűen átállítanod nagyobb tartományban a cella számformázását

Előzmény: djmorphy (20837)
Törölt nick Creative Commons License 2013.03.21 0 0 20838

 a TISZTÍT() kiszedi szerintem

Előzmény: tbando (20836)
djmorphy Creative Commons License 2013.03.21 0 0 20837

Sziasztok!

 

Van egy 25-27 munkafüzetből álló táblázatom aminek van egy nagyon idegesítő "szokása". A beírt értékeknek mindig USD az alapértelmezett kategóriája. Nem lehet ezt egységesen a teljes munkafüzetre definiálni, hogy általános vagy szám és amikor kell akkor én az adott cellának megváltoztatom?

tbando Creative Commons License 2013.03.21 0 0 20836

A kód(160)-as karaktert hogy lehet levágni? A trim nem viszi. Emlékszem, volt róla szó, de nem találom. 

Törölt nick Creative Commons License 2013.03.21 0 0 20835

Megnéztem. Tudtam, hogy lehet ilyet de még sosem használtam. Sajnos nem jó, amit én készítettem az néhány azonos típusú munkafüzethez kell. 

Köszönöm szépen, hogy visszabogarásztad ezt nekem.

Előzmény: Delila10 (20834)
Delila10 Creative Commons License 2013.03.21 0 0 20834

Ha a userek csak ezt a formátumú füzetet használják, nézz rá a 20502-es hsz-re.

Előzmény: Törölt nick (20831)
Törölt nick Creative Commons License 2013.03.21 0 0 20833

wb.ws.Range("A2:K2").Copy

helyett

ws.Range("A2:K2").Copy

 

 

természetesen

Előzmény: Törölt nick (20832)
Törölt nick Creative Commons License 2013.03.21 0 0 20832

Elnézést hogy idefoodoltam, de meglett az eredménye. Az előző hsz alapján próbálkozzatok, piszok jó dolog. Ezelőtt nem csináltam még ilyet.

Előzmény: Törölt nick (20831)
Törölt nick Creative Commons License 2013.03.21 0 0 20831

Hidd el, megvan az oka. Működik is, csak nem tudjok hogyan :) De rájöttem.

Az egy ik ok pl, hogy Nem rakhatom be a munkafüzetbe a sablont. Többen fogják készíteni/nézni, makró sem lehet benne.

A sablon a bővítményben van, amit hozzáadtam az excelemhez.

Megvan egyébként, rájöttem:

(Iszonyatosan jó így dolgozni)

 

Dim wb As Workbook

Dim ws As Worksheet

Set wb = Application.Workbooks("Gazdasagi.xlam")

Set ws = wb.Sheets("Format")

 

wb.ws.Range("A2:K2").Copy

 

 

stb...

 

Előzmény: Delila10 (20829)
tbando Creative Commons License 2013.03.21 0 0 20830

Azt hittem minden további nélkül lehetséges. De nem. Megírtam a makrót egy xla modulba, hogy rakja át az egyik lapját egy megnyitott füzetbe, de Subscript of range hibaüzenetet adott. Ami alapján úgy vélem, hogy a bővitménymentés során valszeg nem is menti el a füzetet, hanem csak a VBA alkalmazásait. És akkor ez lehet a magyarázat arra, hogy miért nem lehet láthatóvá tenni. 

 

Azt viszont minden további nélkül megy, hogy az xla-ban elmentett makróval egy tetszőleges xls füzet tetszőleges lapját, bemásold egy másik füzetbe. Praktikusan ugyanaz mintha a formázott lap is az xla-ban lenne.

 

És van még a nekem legszimpatikusabbnak gondolt Personalos megoldás. Ennél a formázott lapott a Personal füzetedbe mented. Az  mindig nyitva van,  láthatóvá tehető, szerkeszthető, és makróval is mozgatható.

 

Előzmény: Törölt nick (20826)
Delila10 Creative Commons License 2013.03.21 0 0 20829

Miért ragaszkodsz ahhoz, ami nem működik? Ma bajod van a sablonnal?

Előzmény: Törölt nick (20827)
Törölt nick Creative Commons License 2013.03.21 0 0 20828

hogy tudom egy xlam addin munkalapját megcímezni?

így nem megy:

AddIns("Gazdasagi").Application.Sheets("Format").Range("A2:K2").Copy

 

mit rontok el?

talán az Application....?

nemtom

Törölt nick Creative Commons License 2013.03.21 0 0 20827

tehát hogy lehet olyat csinálni, hogy nem akarok makróval formázni, hanem csak a formázást másolni valahonnan?

Tudom, hogy lehet elmenteni munkafüzetet a formázási sablonnak és onnan másolni, de nekem ilyen bővítmény típusú módon kellene.

 

Előzmény: Törölt nick (20826)
Törölt nick Creative Commons License 2013.03.21 0 0 20826

xla-val nem működik az, hogy abban van egy munkalap és arról másolom a formázásokat egy másikba a xla-ban lévő makróval?

Előzmény: tbando (20825)
tbando Creative Commons License 2013.03.21 0 0 20825

A törlésben remélhetőleg tudok segíteni. A windows commmanderrel lehet, gondolom a windows filekezelője is tudja. A filet, ha minden igaz, az Office12/Library könyvtárban találod meg. De hogy, hogyan lehetne füzetformátumban megjelentetni, ahhoz kevés vagyok.  Pedig határozottan érdekelne.  Megjegyzem, ezért szoktam a füzetlapbeállításaimat a Personalba vagy templatként menteni. Az xla-ba meg csak a függvényeket és a makrókat.

Előzmény: Törölt nick (20823)
Törölt nick Creative Commons License 2013.03.21 0 0 20824

na a törlés megvan, persze h benn volt a feladatkezelőben, onnan kilőttem.

 

Na de hogy lehet láthatóvá tenni? (Megnyitni) 

xl 2010

Előzmény: Törölt nick (20823)
Törölt nick Creative Commons License 2013.03.21 0 0 20823

sehogy :(

most módosítottam úgy, hogy xlsm-ben megvolt és újra elmentettem xlam-ben. Viszont nem tudtam felülírni az előzőt illetve azt törölni sem tudom. Azt mondja, hogy meg van nyitva. De feladatkezelőben sem látszik. Ez valahol a BackOffice-ban fut valószínűleg.

 

 

 

Fentiekre tud valaki megoldást?

Jimmy?

Delila?

RHPC?

Előzmény: tbando (20821)
pimre Creative Commons License 2013.03.21 0 0 20822

Off

Állítólag Silver és társai 1865-ben:-))) Ld.: http://en.wikipedia.org/wiki/Information_systems

On

Előzmény: Törölt nick (20820)
tbando Creative Commons License 2013.03.21 0 0 20821

Örülök, hogy sikerült megoldanod a problémád. Nekem viszont sehogy sem sikerült az xla filemat füzetformátumban láthatóvá tennem. Kiírja hogy rejtett füzet, és hogy a felfedés paraccsal tehető láthatóvá. De a felfedés parancs nem müxik (halvány).  Neked hogy sikerült?

Előzmény: Törölt nick (20819)
Törölt nick Creative Commons License 2013.03.21 0 0 20820

OFF

Ki volt az a barom, aki kitalálta az IS szervezetet?

Bocs, hogy ideoffolok, de kezd már tele lenni velük a gumicsizmám, és nekik nem mondhatom meg...

ON

Törölt nick Creative Commons License 2013.03.21 0 0 20819

Sikerült, nagyon szuper dolog.

Köszi tbando

Előzmény: Törölt nick (20817)
Törölt nick Creative Commons License 2013.03.21 0 0 20818
Előzmény: Törölt nick (20817)
Törölt nick Creative Commons License 2013.03.21 0 0 20817

Köszönöm szépen!

Még azt szeretném megkérdezni, ha az elmentett xla-ban van egy formázott munkalap, akkor azt a formázást hogy tudom másolni a legegyszerűbben/leggyorsabban ebből az xla-ból.

(VBA-ról van szó)

Előzmény: tbando (20815)
Sánta Kutya (SK) Creative Commons License 2013.03.20 0 0 20816

"A like csak a fészbúkon működik."

 

Ezt nem jó helyen mondod egy egész nap adatbázis mellett ücsörgő ember jelenlétében.

Viszont a kiangyított karakterek nagyon szépek. :-)

Előzmény: Törölt nick (20805)
tbando Creative Commons License 2013.03.20 0 0 20815

Az xla mentés tökéletes. Van még hogy az egyéni makrófüzetbe mented a makród, amit az Alt+F8 ablakban ajánl fel. Ez lesz a Personal füzet, amit szintén automatikusan hív be az excel minden indításkor. És van még hogy te nyitod meg a makrót tartalmazó normál füzetedet, amikor szükségesnek látod. Ha egy füzet meg van nyitva, a makróit a többi füzet is tudja használni.  

Előzmény: Törölt nick (20814)
Törölt nick Creative Commons License 2013.03.20 0 0 20814

 

Ha a makrót nem munkafüzettel akarom menteni, hanem azt szeretneém, hogy folyamatosan rendelkezhessek vele, akkor mit kell csinálni? (Pl elérjem a szalagmenüről)

xla, bővítményt kell készíteni?

 

A segítséget köszönöm előre is, igyekszem viszont segíteni.

Törölt nick Creative Commons License 2013.03.20 0 0 20813

aha, de nekem ebben kell ellenőriznem, hogy van e benne akár csak 1 db * is:

"abcd**abcd"

 

na ezt hogy kéne?

így? 

MyCheck = "asdf*asdf" Like "*[*]*" 'true 

 

Te, ez szrtem menni fog.

Ha megy akkor fogadd virtuális csokismogyorómat.

Jimmy, te is :)

 

Előzmény: Törölt nick (20812)
Törölt nick Creative Commons License 2013.03.20 0 0 20812

Szögletes zárójel!

 

Sub Csekk()
Dim MyCheck As Boolean
MyCheck = "asdf*asdf" Like "asdf[*]asdf" 'true
MyCheck = "asdf*xasdf" Like "asdf[*]asdf" 'false
End Sub

Előzmény: Törölt nick (20806)
Törölt nick Creative Commons License 2013.03.20 0 0 20811

én sem botlottam ilyenbe még.

talán a 2003 előtti időkből a makrólap és makrófüggvények használatához. (Amikor nem volt vba, akkor volt makrófüggvény, megvan még mindig, csak kevesen ismerik/használják)

Előzmény: tbando (20809)
Törölt nick Creative Commons License 2013.03.20 0 0 20810

 

Feladom - és hát akkor megcsinálnom worksheetfunction-nal

Köszönöm szépen a fáradozásodat.

 

Előzmény: Törölt nick (20807)
tbando Creative Commons License 2013.03.20 0 0 20809

Mikor szokás cellacímet makrónévnél linkelni? Milyen esetekben célszerű? Én még nem botlottam ilyenbe.

Előzmény: Törölt nick (20801)
tbando Creative Commons License 2013.03.20 0 0 20808

Bingó! Lehetséges cellacímű makró nem indítható az alt +F8 makróabkaból. VBE-ből igen, meg subrutinként is, de így nem. Kipróbáltam egy a1 makró b1 makróból való hivásával.  VBE-ből ment, makróablakból azonban egyik sem volt elérhető.  Kösz.

Előzmény: SQLkerdes (20799)
Törölt nick Creative Commons License 2013.03.20 0 0 20807

Akkor marad a Regular Expressions.

Előzmény: Törölt nick (20806)
Törölt nick Creative Commons License 2013.03.20 0 0 20806

Nem lájkolom. :)

Nem akarom elhinni, 

Dim MyCheck

MyCheck = "aBBBa" Like "a*a" ' Returns True.

MyCheck = "F" Like "[A-Z]" ' Returns True.

MyCheck = "F" Like "[!A-Z]" ' Returns False.

MyCheck = "a2a" Like "a#a" ' Returns True.

MyCheck = "aM5b" Like "a[L-P]#[!c-e]" ' Returns True.

MyCheck = "BAT123khg" Like "B?T*" ' Returns True.

MyCheck = "CAT123khg" Like "B?T*" ' Returns False.

 

hogy nem lehet *-ot megkeresni Like-al

A help szerint zárójelbe kell tenni, de alighanem valamit rosszul csinálok.

 

Amit írtál ismertem, de ezt nem akarom. Csúnya. (pl hibát is kell kezelni, ha nem talál)

Lehet más beépített függvénnyel is, de ugyanezért ezt sem akarom

 

 

 

 

 

Előzmény: Törölt nick (20805)
Törölt nick Creative Commons License 2013.03.20 0 0 20805

Mármint Range.Find metódussal. A like csak a fészbúkon működik.

Előzmény: Törölt nick (20804)
Törölt nick Creative Commons License 2013.03.20 0 0 20804

* helyett erre keress: ~*

Előzmény: Törölt nick (20803)
Törölt nick Creative Commons License 2013.03.20 0 0 20803

arról van szó, hogy egy szövegben van valahol csillag karakter, és ezekkel a szövegekkel kell műveletet végrehajtanom.

Ehhez kell kiválogatnom tehát a * karaktert tartalmazó szövegeket.

VBA-val

Előzmény: Törölt nick (20802)
Törölt nick Creative Commons License 2013.03.20 0 0 20802

hogy tudok * karaktert Like segítségével összehasonlítani?

 

pl. "** abcde" like *

 

 

Törölt nick Creative Commons License 2013.03.20 0 0 20801

Ebből eredő, hogy ha cellacímet linkelhetsz a makrónévnél, akkor a makró neve nem lehet egy cellacím.

Előzmény: Törölt nick (20800)
Törölt nick Creative Commons License 2013.03.20 0 0 20800

Sőt. Biztos hogy az a gond.

Ügyes a következtetés.

ALT+F8-ra felugró makróablakban a makróvnél lehet is cellára hivatkozni.

Előzmény: SQLkerdes (20799)
SQLkerdes Creative Commons License 2013.03.20 0 0 20799

Én arra gyanakodnék, hogy az ok az, hogy az mcr60 létezik mint cella cím (kivéve persze xl2003-ban).  Van olyan xl belső szabály, hogy létező cellacímeket nem lehet bizonyos módon használni (pld range name-nek sem lehet megadni).  Én valahol itt keresgélnék.

Előzmény: tbando (20795)
tbando Creative Commons License 2013.03.20 0 0 20798

Ha bekapcsolod közben a makrórögzitót, akkor csak egyszer kell manuálisan rendezni, pakolgatni az oszlopaidat.

Előzmény: mimi_bacsi (20797)
mimi_bacsi Creative Commons License 2013.03.19 0 0 20797

Köszönöm a válaszodat, pont a manuális rendezést - ami nem gond - szeretném kihagyni...:-))

Előzmény: tbando (20792)
mimi_bacsi Creative Commons License 2013.03.19 0 0 20796

Yess...:-)))

 

Az oszlopok sorrendjét meg lehet majd adni, vagy valamelyik munkalap lesz az etalon?

 

Mert sokkal könnyebb VBA-ban, mint Base-ban? 

Előzmény: Törölt nick (20793)
tbando Creative Commons License 2013.03.19 0 0 20795

Odáig jutottam a probléma kezelésében, hogyha átnevezem a makrót, az új névvel már semmi baja. Tehát a névadás okozta a problémát. Dehogy miért, azt nem értem.  

 

A makróimat mcr0-tól mcr60-ig neveztem el. Ezek közül csak az mcr0-hoz lehetett hozzáférni a makróablakból. A többihez csak átnevezés után. Pl. az mcr50-t macro50-nek és a mcr 54-t macro54-nek átnevezve.  Nem tűnik nagy különbségnek, és mégis. 

 

VBE-ből a makrók mcr-néven is vígan futnak. 

 

Van valakinek valami ötlete, hogy mi okozza a makrónév és a makróablak összeférhetetlenségét?

Előzmény: tbando (20794)
tbando Creative Commons License 2013.03.19 0 0 20794

Az excelem jónéhány makrómat nem engedi megnyitni szerkesztésre az ALT+F8 makró ablakban. Ilyenkor innen futtatni sem lehet. (Halványak az opciók). De nem ez okozza a gondom, hanem hogy így indító billentyüt sem tudok hozzájuk rendelni. Mit lehet a probléma? 

Törölt nick Creative Commons License 2013.03.19 0 0 20793

Szintén LibreOffice? :)

Előzmény: mimi_bacsi (20791)
tbando Creative Commons License 2013.03.19 0 0 20792

Minden további nélkül írható rá makró. De addig is míg valaki kisegít vele,  megodhatod az oszlopok  manuális balról jobbra rendezésével.

A táblázataid fölé vagy alá beírod, hogy az adott oszlop hanyadik legyen, majd rendezed a táblázatot balról jobbra (A beállításoknál kell választanod ezt az opciót.)

 

Csak egy dologra kell ügyelned: nevezetesen hogy a  rendezés során a relatív hivatkozásaid borulhatnak.

Előzmény: mimi_bacsi (20791)
mimi_bacsi Creative Commons License 2013.03.19 0 0 20791

Arra van-e makró, vagy lehet-e makrót írni, ha van két olyan munkalapom, ami azonos fejléccel vannak, de más sorrendben és a makró azonos sorrendre hozza össze úgy, hogy mindkét munkalapon azonos sorrendbe lesznek az oszlopok?
Pl.: az első munkalapon

Sorszám Iktatás dátuma Szerződő Partner neve Adószám

A második munkalapon: 

Adószám Sorszám Szerződő Partner neve Iktatás dátuma

 

Ennek a két munkalapnak az oszlopait kellene átmozgatni úgy, hogy azonosak legyenek az oszlopok sorrendje?

mimi_bacsi Creative Commons License 2013.03.19 0 0 20790

Igen, ezekre giondoltam és tettem magam is...Azt hittem, valami rosszul van beállítva a beállításokban, de nem találtam semmilyen utalást erre. Köszönöm a válaszaitokat!

Előzmény: Sánta Kutya (SK) (20789)
Sánta Kutya (SK) Creative Commons License 2013.03.19 0 0 20789

"aposztróf jelet elé az segít, de favágós"

Globális csere :-)

Előzmény: Törölt nick (20784)
Sánta Kutya (SK) Creative Commons License 2013.03.19 0 0 20788

Ja igen, a vessző az tizedesjel, attól nem lesz szöveg, ugyanúgy szám.

Ha utólag átformázod szöveggé, nem biztos, hogy beveszi. Előre szöveg, úgy beillesztés, vagy szöveggé alakítás után szaladj végig rajta egy F2/enter párral. De lehet, hogy F9 is elég.

Előzmény: mimi_bacsi (20786)
Sánta Kutya (SK) Creative Commons License 2013.03.19 0 0 20787

Föltehetően elérted az értékes jegyek számát.

Előzmény: mimi_bacsi (20786)
mimi_bacsi Creative Commons License 2013.03.19 0 0 20786

Azt tapasztaltam, hogy a 15. karakterig semmi gond, ha a 16. karaktert beírom, azt követően kerekít!

Ha aláhúzást, vagy más nem szám karaktert írok akár a számsor végére, semmi gond...!

Előzmény: mimi_bacsi (20783)
Jozsef Creative Commons License 2013.03.19 0 0 20785

Formázd meg szövegre Cellaformázás/Szám Szöveg kategória

Előzmény: mimi_bacsi (20783)
Törölt nick Creative Commons License 2013.03.19 0 0 20784

melyik excel?

aposztróf jelet elé az segít, de favágós.

Valami az oda-vissza másolásnál történik, illetve amikor entert ütsz a cellán, akkor számnak értelmezi

excel 2010-ben amúgy ok.

Előzmény: mimi_bacsi (20783)
mimi_bacsi Creative Commons License 2013.03.19 0 0 20783

Van egy listám, ami így néz ki:

601125098660741,

601125098660856,

601125098661031,

601125098661055,

601125098661066,

601125098661071,

 

Ha a számok elé 1-es számot írok, a számok végét 0-ra kerekíti így:

1601125098660740,

1601125098660860,

1601125098661010,

1601125098661030,

1601125098661060,

1601125098661070,

 

Megnéztem, a formátum ok, a listát bemásoltam egy txt fájlba és onnan egy akkor megnyitott, új táblázatba és akkor is felkerekítette. Mit lehet tenni, hogy a formátum és a szám vége megmaradjon?

(szöveg formátumra is formáztam)

 

Rusvai Zsolti Creative Commons License 2013.03.19 0 0 20782

Sziasztok!

 

Köszönöm a gyors válaszokat, sokat segítettetek!

 

 

Törölt nick Creative Commons License 2013.03.19 0 0 20781

Igazából egyszerűbb képletet szerettem volna, mert meg mertem volna esküdni rá, hogy egy cellatartomány n-edik elemét nemcsak VBA-ban, hanem képletben is meg lehet hivatkozni valami ehhez hasonló módon:

(A1:B20)(n)

De ha lehet is, nem jöttem rá, hogyan... :(

Előzmény: Delila10 (20780)
Delila10 Creative Commons License 2013.03.19 0 0 20780

Sejtettem, hogy valaki előáll majd egy képlettel. :)

 

A 2010-es verzióban az OFSZET függvényt magyarosították ELTOLÁSra, ez a kérdező Rusvai Zsoltinak szól.

Előzmény: Törölt nick (20778)
Delila10 Creative Commons License 2013.03.19 0 0 20779

 

 

Előzmény: Rusvai Zsolti (20769)
Törölt nick Creative Commons License 2013.03.19 0 0 20778

Vagy az is laehet, hogy F1-be ezt a képletet írod:

 

=OFSZET($A$1;INT((SOR(A1)-1)/2);MARADÉK(SOR(A1)-1;2))

Előzmény: Rusvai Zsolti (20770)
Törölt nick Creative Commons License 2013.03.19 0 0 20777

2007-hez szerintem lehet downgrade licenszt kérni a Microsofttól, szóval ha a 2007 jogtiszta, de nem használod, akkor a 2003-asba nem nagyon lehet belekötni. Ajándékozás után szintén. Ami a letöltést illeti, elhangzott pár ésszerű tanács, de nyilván nem kötelező megfogadni őket.

Előzmény: _321 (20772)
Delila10 Creative Commons License 2013.03.19 0 0 20776

Lapfül az, ahova a Munka1, Munka2 lapnév van írva.

Előzmény: rolee81 (20774)
Delila10 Creative Commons License 2013.03.19 0 0 20775

A lapodhoz rendeld a makrót. Akkor indul, ha az A vagy B oszlop cellái változnak módosítás, vagy új adat felvitele által.

 

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A:B")) Is Nothing Then
        Dim sor As Integer, sor1 As Integer
        
        sor1 = 1: sor = 1
        Do
            Cells(sor1, "F") = Cells(sor, "A")
            sor1 = sor1 + 1
            Cells(sor1, "F") = Cells(sor, "B")
            sor = sor + 1: sor1 = sor1 + 1
        Loop While Cells(sor, "A") <> ""
    End If
End Sub

Előzmény: Rusvai Zsolti (20769)
rolee81 Creative Commons License 2013.03.19 0 0 20774

Védelem fülön kivettem a pipát a Zárolt elől, de a Lapfület ne találom. A korrektúra fülbe találok Lapvédelmet, de akkor ha arra rákattintok akkor semmit nem enged módosítani utána a dokumentumba.

Előzmény: Delila10 (20766)
KelemenGy Creative Commons License 2013.03.19 0 0 20773

Nyilván nem feltétlen reális az, hogy a NAV, a TEK vagy valamelyik egyéb terrorszervezet rádborítja a lakást egy 20ezres program miatt, de ettől még nyilvános fórumon nem bölcs dolog hirdetni. Esélyesen nem figyelik az index 0-24-ben, de tévedhet erre olyan, akinek van adóellenőri jogosultsága és kész a gáz.

Előzmény: _321 (20750)
_321 Creative Commons License 2013.03.19 0 0 20772

És még egy felmerülő kérdés: lehet még egyáltalán 2003-as Ms Office-t kapni valahol? Mert nekem ugye van 2007 telepítő CD-m (na, az az tényleg teljesen jogtiszta), csak éppen a régihez ragaszkodtam...

Előzmény: _321 (20771)
_321 Creative Commons License 2013.03.19 0 0 20771

Nekem egy kicsit szürreális a kép, hogy a NAV-nál van egy ember, aki napi 8 órában a gép előtt ülve az indexes hozzászólásokat figyeli és nyomozza le. Ez kb. olyan, mintha a BKV-nál valaki a facbookon böngészné, hogy melyik diák posztolja aznap, hogy "hehehe, blicceltem a hetes buszon". Ennek ellenére bármit kinézek a NAV-ból... Viszont ha már ellenőriznek, és a helyükben az Ncore-on és hasonló oldalakon néznék szét, ott tízezrével hemzsegnek az illegális szoftverletöltők.

 

Egyébként ha a netről töltöm le a szoftvert, és használom, amíg le nem jár a próbaverzió, aztán ismerősi körből nagynehezen kerítek egy eredeti telepítőcédét, és az ismerős, aki már nem használja ezt a szoftvert, szívességből nekem ajándékozza a kódját, az már jogtiszta, nem? Illetve ha kell a munkámhoz, nonprofit, anyagi hasznot nem hozó másodállásomhoz, hobbimhoz, tanulmányaimhoz, mittudomén titkos naplómhoz, bevételeim-kiadásaim táblázatban vezetéséhez, stb., de nincs belőle konkrét üzleti hasznom, illetve nem terjesztem, szerintem akkor sincs gáz. Vagy mégis lehet?

 

Előzmény: Törölt nick (20751)
Rusvai Zsolti Creative Commons License 2013.03.19 0 0 20770

Rusvai Zsolti Creative Commons License 2013.03.19 0 0 20769

Sziasztok!

 

Szeretnék egy kis segítséget kérni a képen látható problémára.

2 oszlop adatait szeretném úgy átrendezni egy oszlopba, hogy az összetartozó párok egymás alá kerüljenek.

Fontos lenne, hogy képlet szerűen működjön, tehát ha "AAA" helyére "XXX"et írok, akkor automatikusan frissüljön a dolog a másik oldalon is.

 

Transzponálás függvénnyel próbálkoztam, műödik is, azonban a másolásnál csak minden második sort transzponálja át.

 

előre is köszi!

Delila10 Creative Commons License 2013.03.19 0 0 20768

Kösz!

Előzmény: Törölt nick (20767)
Törölt nick Creative Commons License 2013.03.19 0 0 20767

Szép!

Előzmény: Delila10 (20756)
Delila10 Creative Commons License 2013.03.19 0 0 20766

Jelöld ki azokat a cellákat (A:B30), ahova írhatsz. A cellaformázás Védelem fülén vedd ki a pipát a Zárolt elől.

Lapfülön jobb klikk, Védelem, OK. Ezzel levéded a lap azon celláit, ahol a zárolás be van kapcsolva.

Előzmény: rolee81 (20763)
Törölt nick Creative Commons License 2013.03.19 0 0 20765

ISP = Internetszolgáltató.

Akinél naprakész, bármikor lekérdezhető lista van arról, hogy melyik IP címet mikor kinek osztották ki.

Előzmény: _321 (20764)
_321 Creative Commons License 2013.03.19 0 0 20764

Mik az ISP-adatok?

Előzmény: Törölt nick (20751)
rolee81 Creative Commons License 2013.03.19 0 0 20763

Ja és 2010-es exelem van.

Előzmény: Delila10 (20761)
rolee81 Creative Commons License 2013.03.19 0 0 20762

Oké, már átformáztam az én darabszámomra.

 

Annyit még megtudsz mondani hogy hol tudom az beállítani hogy bizonyos cellák le legyenek zárva hogy oda még csak véletlenül se lehessen beleírni vagy kitörölni?

 

Nehogy véletlenül félreüsek valamikor és emiatt utána rosszul számoljon valamit.

Előzmény: Delila10 (20761)
Delila10 Creative Commons License 2013.03.19 0 0 20761

Szívesen.

 

A 2. sor képlete mindig az aktuális sorszám adatait összegzi.

Beírsz egy új nevet és a hozzá tartozó fizetést, az Excel alapbeállítása szerint a képletek másolódnak a hozzá tartozó sorba. Nem írtad, melyik verziót használod, így nem tudom megmondani, hol találod ezt a beállítást.

Előzmény: rolee81 (20760)
rolee81 Creative Commons License 2013.03.19 0 0 20760

Köszi, már rájöttem. Nem az 5-6 sor húzom le hanem az elsőt. :)

 

Köszi mégegyszer.

Előzmény: Delila10 (20756)
rolee81 Creative Commons License 2013.03.19 0 0 20759

Még annyi kérdésem mégis lenne hogy: ha az utolsó sort lehúzom hogy több sorban számoljon ne csak 5ben akkor az összesenben csak az első 5 sort összesíti. Mit kell csinálnom hogy az összes sort összesítse?

 

 

Előzmény: Delila10 (20756)
pimre Creative Commons License 2013.03.19 0 0 20758

A google segítségével rákerestem a cimletező és az excel szavakra. A találatok közül az első, nagyon egyszerű és elegánsnak tűnő megoldás a következő volt: www.sgus.hu/files_dwld/EXCEL/Cimletezes.xls. És még csak nem is használ makrót. Szerintem jó kiinduló alap lehet annak ellenére, hogy ő függőlegesen listázza a címleteket, Te meg vízsszintesen szeretnéd. De ezt könnyű lesz átalakítani, ha egyáltalán szükséges.

 

Előzmény: rolee81 (20755)
rolee81 Creative Commons License 2013.03.19 0 0 20757

Tökéletesen erre gondoltam.

 

Nagyon köszönöm!

 

:D

Előzmény: Delila10 (20756)
Delila10 Creative Commons License 2013.03.19 0 0 20756

Kitettem egy fájlt, aminek a C1:N2 tartománya mutatja meg, melyik címletből mennyit kérj.

A letöltő link http://data.hu/get/6333345/Kp_cimletezo.xls

Előzmény: rolee81 (20755)
rolee81 Creative Commons License 2013.03.19 0 0 20755

Oké, bocs ha nem részletesen fogalmaztam.

 

Leírom részletesen:

Egy munkahelyen van mondjuk 20fő dolgozó. Ennek a 20 főnek van 20féle munkabére.

Egy program elkészíti a fizetési listát PDF formátumba a 20 névvel és összeggel.

Mivel minden mubnkabér szinte más összegű, eddig egyenként kicímletezem mindegyiknek a bérét, és utána összegzem hogy a bankból milyen címletekből mennyit kérjek ki, hogy a fizetést előre ki tudjam borítékolni. Elég időigényes munka hogy 20 embernek egyenként számolgatom ki a címletét és utána ezt a 20 fajta címletet még összegeznem is kell.

Erre kellene nekem egy olyan excel program, amibe (mondjuk az "A" oszlopba) beillesztem egymás alá a 20 ember bérösszegét (amit kimásolok a PDF-ből) és a program kiszámolja személyenként a címleteket és a végén összesíti. Ezt az összesített címletet kérem le a banktól, és így biztos mindenkinek külön tudom borítékolni a fizuját.

 

Remélem részletes voltam. :)

 

 

Előzmény: Sánta Kutya (SK) (20754)
Sánta Kutya (SK) Creative Commons License 2013.03.19 0 0 20754

Kérlek, fogalmazd meg pontosabban, mit szeretnél. Olvasd el a topikcím alatti segítséget is.

Előzmény: rolee81 (20753)
rolee81 Creative Commons License 2013.03.19 0 0 20753

Kérdésem lenne hozzáértőktől.

 

Címletezőre lenne szükségem, de olyanra ami több számot tud címletezni nem csak egyet. Magyarul beillesztek egy oszlopba 20-30 számot egymás alá és a program kiszámolja ennek a 20-30 számnak a címletét.

 

Előre is köszönöm a cegítségeket.

 

Sánta Kutya (SK) Creative Commons License 2013.03.19 0 0 20752

Csak részben. A filmek és zenék felvétele a rádióból-tévéből, megvásárolt példányról történő lemásolása magáncélra legális. A letöltése viszont egy szürke zóna, kivéve a legális letöltésre felrakott műveket, ugyanis ezek általában eleve illegálisan vannak feltéve, tehát már a forrástól nem tiszta. Nincs sehol leírva, hogy ez legális lenne, csak éppen jelenleg nem üldözik.

Előzmény: Törölt nick (20751)
Törölt nick Creative Commons License 2013.03.19 0 0 20751

Tudomásom szerint filmek és zenék letöltése otthoni, magáncélú felhasználásra megengedett, legalábbis a magyar törvények szerint. Ugyanez nem igaz a szoftverekre.

A magánemberek ellenőrzésének valóban kicsi az esélye, de azt tudnod kell, hogy pl. az indexfórumos, indafosos regisztrációd pillanatától kezdve minden lélegzetvételed elektronikusan dokumentálva van, visszakereshető, és az ISP adataival kombinálva valós személyhez köthető.

Folyamatosan rettegni egy letöltött kalózprogram miatt irreális, de kitenni a táblát, hogy "emberek, én kalóz office-t használok" szintén nem túl bölcs.

Persze vannak, akik az extrém sportokat kedvelik :)

Előzmény: _321 (20750)
_321 Creative Commons License 2013.03.19 0 0 20750

Oké, de nyilván az egész Ncore nem jogtiszta, a filmek, a zenék, a programok letöltése meg főleg nem az. Az ilyen torrentoldalak, fájlcserélők álnéven netező felhasználói milliónyian mind folyamatosan attól rettegnek szerte a világban, hogy egyszer csak rájuk rúgja az ajtót néhány egyenruhás, vagy hogy több tíz-százezer forintra megbüntetik őket? Értem én, hogy mi a különbség a boltban vásárolt és a netről letöltött Microsoft (meg a jogdíjas filmek, zenék) között, és ha jól tudom, van különbség az otthoni, magáncélú felhasználás meg a további terjesztés, jogosulatlan pénzszerzés között, de az ilyen, magánemberek ellen irányuló ellenőrzéseknek valóban van realitása?

Előzmény: KelemenGy (20749)
KelemenGy Creative Commons License 2013.03.19 0 0 20749

Pl. mert nem jogtiszta? A nem jogtisztaság egyéb következményeit már gondold ki magad. Van valamid, amiért pénzt szoktak kérni, te meg nem fizettél érte s nem ajándék volt...

Előzmény: _321 (20748)
_321 Creative Commons License 2013.03.18 0 0 20748

Miért is?

Előzmény: Retro Image (20747)
Retro Image Creative Commons License 2013.03.18 0 0 20747

Merész dolog ezt így reklámozni.

Előzmény: _321 (20746)
_321 Creative Commons License 2013.03.18 0 0 20746

Kár, mert az a címem ezer éve nem él... :( Írok a másik címemről.

Amúgy muszáj volt nekiállnom dolgozni, ezért letöltöttem az NCore-ról a 2003-as verziót, telepítettem, és úgy néz ki, működni fog. Otthonos érzés. Az Open Office-t is megtartom, hátha hasznát veszem még.

Előzmény: pimre (20745)
pimre Creative Commons License 2013.03.18 0 0 20745

Ezekre privátban válaszoltam.

Előzmény: _321 (20744)
_321 Creative Commons License 2013.03.18 0 0 20744

Fent vagyok az NCore-on. Most nézem, hogy milyen verziók vannak fent. Van sima Microsoft Office 2003, meg van Professional SP3 X86, ezeket töltötték le a legtöbben, gondolom, nem lehetnek rosszak.
Ha letöltöm és telepítem, az op. rendszer simán befogadja majd? (XP Professional van a gépemen)Nem fog hibaüzeneteket küldeni, hogy nem jogtiszta? Nem fog kódot kérni?

Előzmény: pimre (20741)
Retro Image Creative Commons License 2013.03.18 0 0 20743

Erre jó lehet, amit a 20500-ban írtam. Annyi különbséggel, hogy a clsApp kódlapjára ezt kell bemásolni:

 

Public WithEvents App As Application


Private Sub App_WorkbookOpen(ByVal Wb As Workbook)
    Dim A As Long, p As String
    If Left(LCase(Wb.Name), 8) = "personal" Then Exit Sub
    A = MsgBox("Megnyitás csak olvasásra?", vbYesNo)
    If A = vbYes Then
        Application.EnableEvents = False
        p = Wb.FullName
        Wb.Close
        App.Workbooks.Open Filename:=p, ReadOnly:=True
        Application.EnableEvents = True
    End If
End Sub

Előzmény: Sánta Kutya (SK) (20738)
Retro Image Creative Commons License 2013.03.18 0 0 20742

A 2003-as Office-t lehet éppenséggel elavultnak nevezni, de csak abból a szempontból, hogy az újabbak bizonyos funkcióit nem tudja, és ezért nem mindig lehet megnyitni vele újabb verziókban készült dokumentumot. Még akkor sem, ha az egyébként nagyon hasznos kompatibilitási csomagot telepíted. Ettől eltekintve szerintem a 2003-as szinte mindent tud, amire szükség van.

 

Ezzel együtt én nem ragszkodnék a 2003-ashoz, pont azért, mert ciki és körülményes, ha nem tudod megnyitni a fájlokat, amiket kapsz.

 

Venni ma már csak 2007-est vagy újabbat lehet, felszereltségtől függően kb.20-40 ezerért. Ebben annyira azért nem vagyok otthon, de egy gyors keresés ezt adta ki.

 

Letölteni bármit le lehet. Az MS Office letöltésének két bukkanója van. Az egyik, hogy nem legális, és akár még gond is lehet belőle. A másik, hogy a tört verziók gyakran vírusosak. Az "informatikus haver ráér és telepít" megoldás hasonló kockázatokkal jár. Gondolom, az informatikus haver is kalózpéldányt rakna fel, mert haverságból nem szokás több 10 ezer forintos programokat adományozni. Legfeljebb ő a vírusokra is gondol, és olyan programot rak fel, ami szerinte nem fertőzött. :o)

 

Szürkezónás megoldás lehet az, ha virtuális gépre telepítesz legális próbaverziót, amit aztán a próbaidőszak leteltével újra kell telepíteni. Ez mondjuk egy VirtualBox-os guest gépnél, ahol pillanatképet készíthetsz a telepítés előtti állapotról, és oda 10 sec alatt vissza tudsz állni, kb. 10 perc munka kéthavonta.

Előzmény: _321 (20739)
pimre Creative Commons License 2013.03.18 0 0 20741

Én még ma is a 2003-ast használom, és semmi bajom vele. Valószínűleg elboldogulnék az újabb verziókkal is, de nem szeretem őket.

 

A letöltést illetően nem vagy fenn véletlenül az ncore-on? Vigyázz, csak az ncore.cc a jó: https://ncore.cc/ !

 

Ha van barátod, aki fenn van, az tud küldeni meghívót (idegentől ne fogadj el!)

 

Szóval, ha van hozzáférésed, onnan le tudod tölteni bármelyiket.

 

Az eredeti boltban valahol 30.000 Ft felett kezdődik.

Előzmény: _321 (20739)
Sánta Kutya (SK) Creative Commons License 2013.03.18 0 0 20740

Tudásban jobb az újabb (akkor már inkább 2010, mint 2007), viszont a kezelőfelülete borzalmas. Annak, aki gyorsan dolgozik billentyűkombinációkkal, és nem előbb nyúl az egérhez, aztán kezd gondolkodni, hogy mit is akar, sokkal kényelmesebb a 2003-as, ezért használjuk még páran itt.

Előzmény: _321 (20739)
_321 Creative Commons License 2013.03.18 0 0 20739

A leírtak alapján mindenképpen a Microsoft felé hajlok, már csak az a kérdés, hogy melyik verziót javasoljátok?

 

Nekem a 2003-as Ms Office volt az abszolút kedvencem, de mivel az egy 10 éves program, gondolom, ma már elavultnak számít... Vagy nem?

 

Tudok letölteni bármilyen Ms Office-t netről? (Nem próbaverziót, hanem teljeset.) Vagy várjam meg, amíg egy informatikus haver ráér és telepít nekem? Mennyire drága megvenni egy erdeti programot?

Előzmény: Retro Image (20729)
Sánta Kutya (SK) Creative Commons License 2013.03.18 0 0 20738

Köszi! Viszont akkor nem tudom használni a gyorslistát a kerek gomb alatt.

Előzmény: Törölt nick (20737)
Törölt nick Creative Commons License 2013.03.18 0 0 20737

Meg hát! :)

Excelből kell indítani a megnyitást, és amikor a fájlt kiválasztod, a megnyitás gomb jobb szélén van egy lenyíló, abból ki lehet választani a csak olvasásra opciót. Ha így nyitod meg, a következő ember meg tudja nyitni írásra. Legalábbis sajátgépen, két Excel példánnyal így működött, gondolom hálózattal, különböző júzerekkel is így megy...

Előzmény: Sánta Kutya (SK) (20736)
Sánta Kutya (SK) Creative Commons License 2013.03.18 0 0 20736

Úgy látszik, jó vagyok olyan kérdésekben, amikre senki nem tud válaszolni.

 

Itt a következő: meg tudom-e elsőnek nyitni a táblázatot csak olvasásra, hogy ha az nyitja meg nálam később, aki írni is akar bele, akkor neki simán menjen? Tehát mintha én lennék a második.

Előzmény: Sánta Kutya (SK) (20692)
kezdos Creative Commons License 2013.03.18 0 0 20735

Bocsánat az ellentmondásokért, a 2.-at már a főnököm írta össze.

A megoldás egy beosztáskezelő program lesz ha találok. Gyorsabb és olcsóbb megoldás lesz.

Előzmény: Törölt nick (20727)
Törölt nick Creative Commons License 2013.03.18 0 0 20734

Hát, most nem sorolnám fel az összes zsákutcát, amibe belefutottam, de maga az algoritmus nagyon egyszerű:

 

1. Használd a makrórögzítőt.

2. Keress az interneten segédanyagot. (Ebből van rengeteg, egyik jobb, mint a másik, csak egyik sem tartalmazza pont azt, amire szükséged lenne.)

3. Nézegess fórumokat.

4. Kísérletezz.

 

A LibOffice-nak remek makrórögzítője van, nagyon szépen rendezett kódot ír, csak éppen gyakran használhatatlan. Nem a konkrét objektumokkal dolgozik, hanem mindent UNO service-eken keresztül old meg, ami szép és jó, csak baromi nehéz visszaszerezni belőle objektumhivatkozásokat, hogy azokkal tovább tudj dolgozni.

 

Rákerestem arra, hogy LibreOffice basic reference, és találtam egy ilyet:

http://api.libreoffice.org/docs/common/ref/com/sun/star/module-ix.html

Megörültemm neki, mert úgy tűnt, hogy ez a LibOffice Basic teljes dokumentációja. Megnéztem, megpróbáltam kiokosodni belőle, és ezennel virtuálisan leborulok a Microsoft VBA súgó készítői előtt. Ég és föld a különbség a kettő között.

 

Találtam a neten valami kódfordítót is, ami állítólag azt tudja, hogy beadod neki a VBA kódot, és kidobja a Basic kódot. A legegyszerűbb Range műveletekre is befuccsolt.

 

Az egyik fórumon találtam egy kérdést, ami kb. egybevágott azzal, amit én is kérdeztem volna. Két oldalon keresztül olyan válaszokat kapott, hogy "tanulj fiam, és aztán magad is meg tudod majd oldani". Míg végül a kérdező kifakadt, hogy mit szórakoznak vele, mi a f@cér nem képes senki megmondani, hogy hogy kell megcsinálni. Szóval közel sincs ott olyan jólét, mint itt, ahol készregyártott kódokat kap az ember...

 

Végül találtam egy fickót, valami bolgár és Andrew Pitonyak a neve, aki egy egészen használható doksit írt, példákkal fűszerezve.

http://www.pitonyak.org/OOME_3_0.pdf

Ebből végül sikerült kinyerni az infót, amivel összeraktam a programot.

Előzmény: mimi_bacsi (20733)
mimi_bacsi Creative Commons License 2013.03.18 0 0 20733

Szia Jimmy!

 

Most volt alkalmam kipróbálni az általad feltett makrót és csodálatosan - ahogy szerettem volna - fut! :-))

 

Nagyon köszönöm a munkádat, szeretném, ha lenne rá módom, hogy megtudjam, hogy készítetted!

Előzmény: Törölt nick (20732)
Törölt nick Creative Commons License 2013.03.16 0 0 20732

Próbáld ki ezt:

 

Sub Osszesites2
    Dim Doc as object
    Dim CopyTo As New com.sun.star.table.CellAddress
    Dim CopyFrom As New com.sun.star.table.CellRangeAddress
    Dim i As Long

    Doc = ThisComponent
    If Not Doc.Sheets.hasByName("Összesítés") Then
       Doc.Sheets.insertNewByName("Összesítés", 0)
    End If
    For i = 1 to Doc.Sheets.GetCount-1
        with CopyFrom
            .Sheet = i
            .StartColumn = 0
            .StartRow = 0
            .EndColumn = GetLastUsedColumn(Doc.Sheets.GetByIndex(i))
            .EndRow = GetLastUsedRow(Doc.Sheets.GetByIndex(i))
        end with
        with CopyTo
            .Sheet = 0
            .Column = 0
            .Row = GetLastUsedRow(Doc.Sheets.GetByIndex(0))+1
        end with
        Doc.Sheets.GetByIndex(0).copyRange(CopyTo, CopyFrom)
    Next
End Sub

 

Function GetLastUsedColumn(oSheet) As Integer
  Dim oCursor
  oCursor = oSheet.createCursor
  oCursor.GotoEndOfUsedArea(True)
  GetLastUsedColumn = oCursor.RangeAddress.EndColumn
End Function

Function GetLastUsedRow(oSheet) As Integer
  Dim oCursor
  oCursor = oSheet.createCursor
  oCursor.GotoEndOfUsedArea(True)
  GetLastUsedRow = oCursor.RangeAddress.EndRow
End Function

 

Remélem, jó lesz, mert 6 órás (kutató)munkával raktam össze (Excelben 10 perc lett volna), ráadásul kezdetleges és nem rugalmas, de az van.

Lényeges, hogy a munkalapok index-szel vannak meghivatkozva, ezért az Összesítés nevű munkalapnak mindig a legelső (nullás) pozícióban kell lennie.

A program úgy is hozza létre, csak később sem szabad elmozgatni.

Előzmény: mimi_bacsi (20699)
Retro Image Creative Commons License 2013.03.16 0 0 20731

OOPs.

Javítottam, most már publikus. De küldtem is mailt.

Előzmény: ypolito (20730)
ypolito Creative Commons License 2013.03.16 0 0 20730

 

Nem publikus a mail címed. Küldj egyet légy szíves: lenkei83@gmail.com

 

Előzmény: Retro Image (20725)
Retro Image Creative Commons License 2013.03.16 0 0 20729

Bizony, bizony, ahogy SK mondja. A mi istenünk a Microsoft. OpenOffiszos eretnekségnek, bálványimádatnak itten helye nincs :o)

 

Komolyra fordítva, mérlegelni kell az előnyöket és a hátrányokat. Az OpenOffice vs MS Office pro és kontra érveket sokhelyütt leírták már, és most itt egyet emelnék ki.

Mind az MS Office, mind az OpenOffice (és a LibreOffice is) támogatja a makróprogramozást. Csakhogy az MS Office-t kiegészítő VBA makrónyelvet sokkal többen ismerik, mint az OO Basic-et. Míg MS Office VBA kérdésben 100-an tudnak neked segíteni, OO Basicben maximum 1-en, és ahogy nézem, az az egy nincs itt ezen a fórumon :o)

 

 

 

 

 

Előzmény: _321 (20726)
Sánta Kutya (SK) Creative Commons License 2013.03.16 0 0 20728

Ugye tudod, hogy ez legalább 50%-ban vallási kérdés? Majdnem olyan, mint a Fradi vagy Dózsa.

Előzmény: _321 (20726)
Törölt nick Creative Commons License 2013.03.16 0 0 20727

Retro_Image-nek igaza van. Ha azt akarod, hogy valaki foglalkozzon a kér(d)éseddel, ne pénzt ajánlj fel, hanem pontosan, érhetően határozd meg a megoldandó feladatot és a helyes megoldás kritériumait. Ahhoz senkinek sincs kedve, hogy bogarásszon egy ellentmondásokkal teli hozzászólást.

Előzmény: kezdos (20698)
_321 Creative Commons License 2013.03.16 0 0 20726

Kedves Excel-szakértől!

 

Egy látszólag egyszerű kérdséem lenne: Microsoft Office 2003, Microsoft Office 2007, vagy új Open Office?

 

Újratelepíttem az XP-met, és a régi Microsoft helyett új Open Office-t kaptam... (Tudom, illett volna megbeszélnem az informatikusommal).

 

A neten azt olvasom, hogy az Open Office független, jobb, többet tud, jobb a helyesírás-ellenőrzője, de én évekig dolgoztam a 2003-as Ms Office-ban, így szerkesztettem mindent Wordben és Excelben. Író-újságíró vagyok, ezért nagyon nem mindegy, hogy mi lesz ezzel a külső vinyón lévő, nagy adathalmazzal. A cégek, szerkesztők, kiadók szempontjából sem mindegy, hogy meg tudják-e egyáltalán nyitni, amit küldök nekik, meg persze magam miatt sem - tudom-e normálisan kezelni az eddigi fájlokat, illetve nagy dilemma, hogy milyen formátumban nyissam meg és mentsem el az újakat.

Most fent van a gépemen ugye az új Open Office, ami tényleg nem tűnik rossznak, de például a régi Excel-táblázatokat furcsán kezeli, néhány mező formátumát megváltoztatja, stb. Feltettem a gépre a 2007-es Ms Office tesztverzióját is (mindjárt lejár, és nem találom a 25 számjegyű kódot). Ezzel ugyanaz a problémám, az Excelben mások a színek (és ez nekem fontos a kiemelések miatt), a Wordben teljesen mások a sorközök.

 

Szóval mit javasoltok? Melyiket éri meg hosszú távon használni? Ha valamelyik újat, akkor szépen sorban érdemes lenne átalakítani a több száz régi fájlt is...?

Retro Image Creative Commons License 2013.03.16 0 0 20725

Ja, és tegyél hozzá részletes magyarázatot, hogy mit, hova, miért, miért ne, satöbbi.

Előzmény: Retro Image (20724)
Retro Image Creative Commons License 2013.03.16 0 0 20724

Mehet.

Előzmény: ypolito (20723)
ypolito Creative Commons License 2013.03.16 0 0 20723

Hello!

 

Mehet privát mailre a cucc? :)

 

üdv

P.

Előzmény: Retro Image (20722)
Retro Image Creative Commons License 2013.03.16 0 0 20722

kimaradt pár szó:

 

- a munkalap Worksheet_Change eseményét figyeltetném, és ha az adott cella "szolgáltatás" értéket vesz fel, akkor zárolnám a másik cellát, esetleg a háttérszínét is módosítanám, ha meg egyéb értéket vesz fel, akkor feloldanám a zárolást.

Előzmény: Retro Image (20721)
Retro Image Creative Commons License 2013.03.16 0 0 20721

Az elsőt úgy oldanám meg, hogy

- feloldanám az űrlapmezőnek szánt cellák zárolását, aztán is levédeném a munkalapot

- a munkalap Worksheet_Change eseményét figyeltetném, és ha az adott cella "szolgáltatás" értéket vesz fel, ha egyéb értéket, akkor feloldanám a zárolást.

 

A második kérdésre "valószínűleg igen" a válasz. Ha beküldöd a kódot, részt vehetsz a sorsol.. megnézzük és teszünk javaslatot a módosításra.

:o)

Előzmény: ypolito (20697)
Retro Image Creative Commons License 2013.03.16 0 0 20720

A további infók ellentmondanak az első infóknak.

Pl:

- 6 dolgozó van

vs.

Van egy munkahely 7 dolgozóval.

 

vagy

ebből 1 állandó délutános; 1 fő állandó éjszakás;

vs.

1 ember csak délelőttös, egy csak délután.

 

Amúgy miattam nem muszáj tisztáznod fenti bizonytalanságokat, mert leszálltam a témáról. Első blikkre több órás fejtörés lenne az algoritmust összehozni, ha egyáltalán sikerülne, és nem volna arcom annyit kérni érte, hogy megérje :o)

 

Előzmény: kezdos (20698)
tbando Creative Commons License 2013.03.15 0 0 20719

Ja, minden bizonnyal egy másik fórumon mondhatott valami kitiltást érőt.

Előzmény: Sánta Kutya (SK) (20718)
Sánta Kutya (SK) Creative Commons License 2013.03.15 0 0 20718

Lehet, hogy spam vagy IRL infó, de az is lehet, hogy a szerző más topicban tett rossz fát a tűzre, és összes hozzászólásával vágták ki.

Előzmény: tbando (20717)
tbando Creative Commons License 2013.03.15 0 0 20717

Ezen a fórumon milyen vétségekért moderálnak ki  hozzászólásokat?  Egy kérdésemre adott válaszra akartam rákeresni, de látom, hogy ki van moderálva. Nem emlékszem, hogy bármi botrányos lett volna benne. 

Előzmény: Sánta Kutya (SK) (20716)
Sánta Kutya (SK) Creative Commons License 2013.03.15 0 0 20716

Igazad van: köze lehetne.

 

Előzmény: tbando (20713)
tbando Creative Commons License 2013.03.15 0 0 20715

Elnézést. A képlet helyesen:  =ofszet(a1;darab(a:a)-1;0)

Előzmény: tbando (20711)
Delila10 Creative Commons License 2013.03.15 0 0 20714

Másik megoldás

=INDEX(A1:G1;1;DARAB(A1:G1))

 

Ez jobb, mert az indirekt volatilis függvény, a lapon történő bármilyen változás esetén újra számol, sok ilyen képlet lassítja a feldolgozást.

Előzmény: roley (20707)
tbando Creative Commons License 2013.03.15 0 0 20713

Egy táblázatnak miért nem lehet köze egy adatbázishoz? 

Előzmény: Sánta Kutya (SK) (20710)
Delila10 Creative Commons License 2013.03.15 0 0 20712

=INDIREKT(KARAKTER(DARAB(A1:G1)+64)&SOR())

Előzmény: roley (20707)
tbando Creative Commons License 2013.03.15 0 0 20711

A tetszőleges hosszúságú A oszlop utolsó elemére pedig ezzel a képlettel: =ofszet(a1;darab(a:a);0)

 

Előzmény: tbando (20709)
Sánta Kutya (SK) Creative Commons License 2013.03.15 0 0 20710

Még általánosabban pedig ennek semmi köze egy adatbázishoz, ez csak egy táblázat. :-)

Előzmény: tbando (20709)
tbando Creative Commons License 2013.03.15 0 0 20709

Általánosságban pedig, a négyzetes mátrixok átlójának kilistázásához az =index(matrix, i,i) képlet alkalmas. 

Előzmény: tbando (20708)
tbando Creative Commons License 2013.03.15 0 0 20708

Nem egészen világos elöttem a feladat, de ha netántán az lenne, hogy minden oszlop utolsó értékét listázza ki, akkor a mátrixodban az utolsó oszlop elemeit kell kilistázni. Jelen esetben tehát =index(7.oszlop,i,1), ahol i=1...7.

 

Előzmény: roley (20707)
roley Creative Commons License 2013.03.15 0 0 20707

Sziasztok!

 

van valami függvény arra, hogy egy oszlop utolsó értékét kilistázza, vagy erre csak makro megoldás.

 

A helyzet a következő, adott egy adatbázis, benne egy átlós mátrixxal, mint pl:

1 1 1 1 1 1 1

   1 1 1 1 1 1 

      2 2 2 2 2

         3 3 3 3 

            1 1 1

               2 2 

                  6

 

Ilyen oszlopokból szeretném kilistázni az utolsó értékékeket. ha van esetleg vmilyen tippetek azt hálásas megköszönném.

 

 

Üdv,

roely

 

KelemenGy Creative Commons License 2013.03.15 0 0 20706

Megjelenítésből csak akkor lehet a szürke x. oldal feliratokat eltüntetni, ha visszalépsz normál nézetre. Nyomtatni viszont semmiképp nem fogja.

 

Az ismétlődő soros menüt próbáld meg a címek nyomtatása gombbal előcsalni. Valamiért van, hogy csak így műxik.

Előzmény: Ordas (20702)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!