stromba Creative Commons License 2009.04.25 0 0 9118

 

"Van esetleg tippetek arra, hogy hogyan lehetne megoldani a következőt:

XY excelben kitölt egy értékelést valakiről. Ennek a kiértékelésnek fix a külseje.

Minden egyes kiértékelés külön fájlba van mentve...sok sok kiértékelés van.

Hogyan lehet megoldani, hogy létrejöjjön egy riport ezekből a kiértékelésekből...egy summary formájában?"

 

A Makró lehet jó megoldás én általában ezt preferálom amikor sok hasonló fájlból adatbázist kell létrehozni. Fontos hogy a "fix külső" az tényleg az legyen.

Mondjuk így:

1, Van egy alapfájod, amiben majd létrehozol egy munkalapot az adatbázishoz. Ebben a fájlban van a makró is.

2, Lemented az összes értékelési fájlt egy alkönyvtárba. Ezt az alkönyvtárat  megadod az alapfájlban is valahogy - akár kézzel beírva a makróba, akár inputbox segítségével, akár egy cellába beírva.

Én ezt szoktam használni: http://www.cpearson.com/excel/BrowseFolder.aspx, bár ez kicsit bonyolult.

3. Az előkészületek után futtatod a makrót, ami

4. Létrehoz egy adatbázis - munkalapot az alapfájlban, aminek az alapinformációit (oszlopfejlécek) is megadja. Érdemes ugyanazt az adatbázis - munkalapnevet használni mindig akár úgy is hogy az alapfájlban levő hasonló munkalapot kitörlöd és mindig újat hozol létre.

5. Ha az adatbázis munkalap megvan, akkor

Az összes fájlt kinyitod egyenként az alkönyvtárból. Erre több módszer is van,

egy példa: http://www.zerrtech.com/content/excel-vba-open-all-files-a-directory

Tehát a, fájlt kinyitja a makró, kiveszi belőle azokat az értékeket amire a summary-ban szükség van, beírja az alapfájl adatbázis munkalap megfelelő sorába - oszlopába. Megnyitás előtt érdemes az Application.Displayalerts = False parancs kiadásával elkerülni azt hogy felesleges üzeneteket adjon az Excel.

Becsukja az a, fájlt . Itt érdemes kiadni az Activeworkbook.Saved = True parancsot a bezárás - Activeworkbook.Close - előtt)

És így tovább, kinyitja a b, fájlt, adatokat beírja az adatbázis következő soraiba... stb.  Nyilván mindig érdemes kikapcsolni a Screenupdating-ot, ha gyorsabb futást akarsz.

 

Az adatbázis fájlból meg már lehet továbbdolgozni, akár pl. pivot kimutatást vagy chartot létrehozni ugyanezzel a makróval.

 

A megadott információból kábé ennyit lehet megadni, nyilván a konkrét makrót akkor lehet megírni ha ismert az értékelési fájlok formátuma illetve hogy milyen adatokat kell ezekből kinyerni.

 

Aztán ha nem makró, akkor lehet pl. linkeléssel megcsinálni de az nagyon sok forrásfájlnál eléggé bizonytalan.

 

 

Előzmény: wawabagus (9116)