Keresés

Részletes keresés

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)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!