< návrat zpět

Obecná diskuse


Téma: Access Excel grafika rss

Zaslal/a 11.2.2014 12:23

Celkem slušně se v Excel/Vba dá řešit gantt grafika. Funkčně: display (box, line), zpětný návrat do VbaExcel po kliku na objekt/line i rychlost vytvoření.
V Access/Vba mám připraveno v RAM složitou strukturu dat. Funkčnost AccesFormGrafika je ve srovnání s Excel doslova mizerná, nelze řádně ani čáru/line, viz výše. Jednoduché, tak to pošleme na Excel. Jenže už doby na výstupu/předání VbaAccess–ExcelGraf jsou nejméně cca 100x delší. Také zpětný návrat do Access/VBA se zatím zdá nemožný.
Možná: sdílení dat v Ram pro Access/Excel, příp. jejich přeposlání jako celek, by to řešilo (asi nelze). Zatím nechci řešit zasláním dat do buněkExcel a z těch výstup na ExcelGrafiku. Z minulosti: rychlost Vba/Access–buňkyExcel se nikdy nezdála problémem. Možná z VbaAccess na html/Php/aj.?: Nemám zkušenosti, šel bych do toho, kdybych měl jistotu, že to vyřeší výše uvedené (rychlost, zpětný návrat apod.). Pro náročnost to zatím nehodlám celé přeprogramovat do jiného prostředí.
Díky za každý názor.

Zaslat odpověď >

#017828
avatar
Ahoj. Jen tak od pasu ... Sdílená data by šlo připojit snad jen přes namapovaný soubor do paměti a to nevím, zda Ti VBA dovolí. Na druhou stranu, dělat si proto vlastní DLL, která by se Ti o to postarala by se mi nechtělo. Předpokládám, že Ram ve Tvém podání je sdílený paměťový prostor. Na druhou stranu by mohlo fungovat vyrobení obyčejné pivot tabulku s Gantový grafem a připojením přes přes ODBC na zdroj dat z Accesu. Něco podobného jsem dělal ( ale bez Gantta ) a tabulku jsem přikryl grafem, že nebyla vidět. R.citovat
#017847
avatar
Díky za info a pohotovost:
a) Ram: jde o data ve Vba/indexovaných dimension tabulkách, cca 20x, vždy se strukturou údajů (10–100 údajů všech typů), tj. přímo ve Vba programu, základ převzatých dat z Access, Excel, příp. několika přímých parametrů operátora, dále programově vygenerovaných Vba programem (umístění dat v programu Vba/Ram je pro urychlení/zjednodušení výpočtu); takto připravená data umožňují nejrůznější reporting/ rozhodování; také se předpokládají zpětné změny dat (přístup poklepem na objekty grafiky/čáry ganttu);
b) zdá se nepochybné, že předání dat do jiného prostředí asi nic neřeší (tedy ani dll zřejmě není řešením), když si totiž kladu podmínku nutnosti/ možnosti zpětného návratu do Vba pro další výpočty; potom by byla řešením pouze prezentace dat nástroji, s kterými si Ms Office přímo rozumí, tedy údajně/snad web/html(?), když ne Excel; proto asi také ne PHP;
c) v každém případě děkuji za zmínku o možnosti předání přes dll; tuto techniku řešení neovládám, nemohu tedy posoudit aktuálnost; zatím zřejmě nepřichází v úvahu;
d) zaujala mě zmínka připojení ODBC na data z Access;
osobně používám Ole připojení; ODBC dříve; pokud tomu rozumím, jde o připojení na tabulky Access, tedy ne na data ve vnitřní paměti/Ram/Vba programu; takže v tomto případě asi také ne;citovat
#017881
avatar
Prosím, ještě jednou o vysvětlení. Předpokládám, že používáš makra napsaná ve VBA jazyku v ASSESSu nebo EXCELu. Z Tvého popisu si nejsem jistý, zda nepoužíváš přímo nějaký kompilátor VBA a Tvá aplikace jen nechodí do ACCESU nebo EXCELu pro data či grafiku. Pokud ano pak si můžeš vyrobit vlastní interface :)
Ad a) OK ... ale v čem to je (makra/binární program)
Ad b) Jde to ... stojí to pár korun a jedná se o rozšíření offisu nad MSSQL Server. Pak je možné aktualizovat data z kontingenční tabulky/grafu a zpětně je aktualizovat v DB. Tato OLAP platforma pro SQLSrv je pro NET a C#Sharp a stojí možná kolem mega. Přiznám se, že nevím, zda je něco takového možné mezi Excelem a Accessem. Napadlo mne, zda by nebylo lepší řešení, mít data v Excelu - záleží kolik jich je a jaké důvody Tě vedou pro to mít to v Accessu. (Já jsem Access "odepsal" před roky a nechci jej vidět. Jsem proti němu zaujatý.)
Ad c) Určitě to jde, už jsem to dělal. Viděl bych to ale spíš na výměnu mezi kompilovanými programy - ne na naše makra.
Ad d) OLE stačí na jednoduché věci. Velmi jednoduše se dá ovládat z jiného programu třeba Excel a ani není vidět že je spuštěný. Delphi (i jiní) dovedou vytvořit interface na tyto OLE části, pak je obalí do objektů a pracuješ s nimi jako by to byl Tvůj program a pak je možné je ovládat/ využívat jak potřebuješ :)
Na druhou stranu to chce spoustu času a hlubší znalosti abys to dotáhnul do konce. Proti tomu mi příjde pivot tabulka + graf v Excelu připojen na přes ODBC na data jako procházka po pláži. Pokud chceš, tak co Ti brání v Excelu si udělat makro, které přes ole napíše zpět do accessu nějaké data nebo např. zavolá proceduru a předá ji parametr ... a již se o nic nestará. Dalším je trigger a pak např. obnovení okna v Accessu po události ... atd.

Můj názor je, že vedle sebe postavené dvě okna (Excel + Acces) a v jednom mít graf a v druhém třeba nějaké dialogy je příjemné prostředí pro práci.citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje