
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.
ivKam(13.2.2014 20:33)citovat#017847 
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;

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.