Tuningoljuk fel Excel és egyéb moduljaink dokumentumainak fejlécét

2016. május 23. - Office Guru

Általánosságban ha azt akarjuk megtudni, hogy dokumentumunkat (most a példában Excel-fájlról lesz szó, de ugyanez működik más Office-programoknál is) ki és mikor frissítette utoljára, akkor el sem indítjuk magát a programot, hanem kattintunk jobb gombbal a fájlon, kiválasztjuk a Properties menüpontot, majd a Details fül alatt láthatjuk a minket érdeklő információkat.

sx01.jpgDe ha esetleg ezt nehézkesnek tartjuk, akkor egy alig néhány soros makró segítségével szinte bármilyen információ (köztük az utolsó mentés dátuma mondjuk) megjelenítésére felhasználhatjuk az Excel Title Bart, a sort, ahol alapesetben csak a fájlunk neve látszik:

sx02.jpgAlt+F11 lenyomásával ugorjunk is a VBA-editorba, ahol a Workbook objektumhoz szúrjuk be majd a Workbook Open eseményéhez tartozó kódunkat:

sx03.jpgA pár soros makróhoz mindössze két, eddig még nem ismert objektumot illetve tulajdonságcsoportot kell megismernünk, ezek közül az első a Window objektum vagyis a Windows objektumcsoport, amely a Workbook objektum esetén az összes adott munkafüzeten belüli ablakot kezeli, tehát a ThisWorkbook.Windows(1) az első nyitott ablakra mutat. Ennek aztán van bőven tulajdonsága, ezek listáját megtalálhatjuk a Microsoft hivatalos oldalán példákkal együtt: ilyen például a WindowState amellyel teljes képernyőre tudjuk tenni a munkalapunkat vagy a Visible, amivel láthatóvá példának okáért. Minket azonban most a Caption érdekel, ugyanis ez a tulajdonság a Title Bar szövege.

Ezzel a kód első fele meg is van, hiszen ThisWorkbook.Windows(1).Caption utasítást kell majd egyenlővé tennünk a fájl nevével illetve az utána megjelenő, általunk akart információval.

Megint csak irány a Microsoft hivatalos oldala, ahol nagyon könnyen rálelhetünk a Workbook.BuiltinDocumentProperties tulajdonságra, amelynek segítségével legalább több tucat információt megtudhatunk dokumentumunkról, a teljes igénye nélkül például a nevét, utolsó nyomtatási dátumát, a teljes szerkesztési időt, az oldalszámot, a kategóriát és többek között az utolsó mentés dátumát is.

Eddig itt tartunk a kódban:

sx04.jpgAzaz a munkafüzet megnyitásakor az alap Title Bar legyen egyenlő az alap Title Barral plusz ehhez fűzzük hozzá most a kért információt, ami nem más mint a fentiek alapján a ThisWorkbook.BuiltinDocumentProperties tulajdonságcsoport Last Save Time tulajdonsága.

sx05.jpgHa most bezárjuk és mentjük a doksit, majd újra megnyitjuk, már látjuk is az eredményt:

sx06_1.jpgHangsúlyozom, hogy ismét ne a konkrét példánál ragadjunk le, hanem annál, hogy a Windows objektumcsoport tulajdonságaival illetve a BuiltInDocumentProperties csoporttal mennyi minden elérhető még.

A bejegyzés trackback címe:

https://officeguru.blog.hu/api/trackback/id/tr738741972

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

GABOR2 2016.05.24. 19:20:04

Ez most jól jött...