Hirdetés

hozzon létre egy grafikontNem lenne jó, ha képes lesz Excel-táblázatot vagy Word-dokumentumot megnyitni anélkül, hogy bármit meg kellene tennie az összes adat közvetlenül szöveges vagy CSV-adatfájlból kiolvasásra kerül, és közvetlenül a táblázatba vagy a Wordbe ágyazott diagramba töltődik be dokumentum? Ez egy olyan automatizálási forma, amely az Office termékeket használja, mert ha lehetséges az adatok diagramjának automatizálása az Office alkalmazásban, gondoljon csak a lehetőségekre. Automatikusan betölti az adatokat egy diagramba egy jelentéshez, amelyet összeállít a főnökének - nincs adatbevitel. Vagy betölti az adatokat egy diagramba közvetlenül egy e-mailbe az Outlook alkalmazásban.

Ennek megvalósításához az Office Web Components bővítmény telepítése szükséges. Ezen túlmenően be kell állítania néhány dolgot az Office alkalmazásban, amelyet az adatok importálásához használni kíván, és készen áll arra, hogy automatikusan elindítsa a jelentési munkát. Fedeztem fel néhány olyan elemet, amelyeket az előző cikkben fogunk használni

instagram viewer
VBA cikkek Hogyan készítheti el saját egyszerű alkalmazását a VBA segítségévelSzeretné tudni, hogyan készítheti el saját VBA alkalmazását a problémák megoldására? Ezeket a tippeket használhatja saját VBA szoftverének elkészítéséhez. Olvass tovább itt a MakeUseOfban. Néhány esetben az adatok átadása történt a között alkalmazások a vágólapra Adjon minden információt a VBA-alkalmazások között a vágólap használatávalA VBA-val való munka egyik leginkább bosszantó része az egyes alkalmazásokon belül, hogy nem mindig könnyű két alkalmazást egymáshoz „beszélgetni”. Kipróbálhatja a nagyon gyors tranzakciókat ... Olvass tovább , exportálás Outlook-feladatok az Excelhez Az Outlook feladatok exportálása az Excelbe a VBA segítségévelFüggetlenül attól, hogy rajongója vagy a Microsoftnak, egy jó dolog, amit legalább az MS Office termékekkel kapcsolatban el lehet mondani, az, hogy mennyire könnyű egyesíteni őket egymással ... Olvass tovább , és küldés E-mailek egy Excel-ből Hogyan lehet e-maileket küldeni Excel táblázatkezelő segítségével VBA szkriptekkelKódsablonunk segítségével automatikusan beállíthatja az e-maileket az Excel programból, az együttműködési adatobjektumok (CDO) és a VBA parancsfájlok segítségével. Olvass tovább forgatókönyv.

Amit megmutatom neked, hogyan lehet az Office Web Components-et kombinálni a szöveges fájl szkriptekkel egy zökkenőmentes, automatizált adatfolyam a számítógépén lévő sima szöveges fájlból az Office termékbe (esetünkben a Excel). Ugyanezt a technikát - néhány apró módosítással - használhatja a Word, az Outlook vagy akár a PowerPoint alkalmazásban. Bármely Office termék (vagy bármilyen más termék, amely a fejlesztők számára VBA-háttérrel rendelkezik) lehetővé teszi ezen technika használatát.

Importálhat és hozhat létre grafikát adatfájlokból

Mielőtt grafikát hozhat létre az adatfájlokból, először engedélyeznie kell néhány dolgot. Ebben a példában megmutatom, hogyan engedélyezheti ezeket a funkciókat az Excelben, de a folyamat szinte azonos az összes többi Office terméknél.

Először, mielőtt bármilyen VBA fejlesztést elvégezne, engedélyeznie kell az eszközsor Fejlesztő lapját (ha még nem tette meg). Ehhez csak lépjen a Beállítások menübe, kattintson a „Szalag testreszabása” elemre, és engedélyezze a „Fejlesztő” fület.

hozzon létre egy grafikont

Visszatérve az Excle-hez, most a menüben megjelenik a „Fejlesztő” felirat. Kattintson rá, majd a „Design Mode” elemre. Ezután kattintson a „Kód megtekintése” elemre a VBA szerkesztő megtekintéséhez.

Grafikon létrehozása nyers adatfájlokból bármilyen irodai termékben VBAChart21

A szerkesztő belsejében engedélyeznie kell azokat a hivatkozásokat, amelyekre szüksége lesz a kódhoz, amelyet megadni fogok neked. Győződjön meg arról, hogy telepítette az Office Web Components bővítményt, mielőtt ezt megtenné, különben a Microsoft Chart objektum nem lesz elérhető.

hozzon létre grafikont
Kattintson az Eszközök, majd a Referenciák elemre, és megjelenik a rendszerében elérhető összes referencia felsorolása. Ha nem tudod, mi ezek - a hivatkozások alapvetően olyan kód- és objektumkönyvtárak, amelyeket bevonhat a saját projektjébe. Ezek lehetővé teszik néhány igazán jó dolgot megtenni, attól függően, hogy milyen referenciát engedélyez. Ha éppen telepítette az Office Web Components rendszert, akkor új könyvtárként kell hozzáadnia, ezért kattintson a Tallózás gombra a megfelelő .dll fájl megtalálásához.

hozzon létre grafikont

Ha telepítette az Office Web Components programot, akkor a DLL fájl neve OWC11.dll, és a c: \ program fájlok \ közös fájlok \ microsoft megosztott \ webkomponensek \ 11 \
hozzon létre grafikont

Jelölje be a „Microsoft Office Web Components 11.0” hivatkozás jelölőnégyzetét, és ne felejtsük el válassza a „Microsoft Scripting Runtime” lehetőséget is, amely hozzáférést biztosít az adatok olvasásához vagy írásához fájlokat.

Most, hogy hozzáadta a referenciát, ideje hozzátenni a tényleges diagramot a lapjához. Az Excel programban vezérlőket adhat hozzá, ha a Fejlesztő menü „Beszúrás” elemére kattint, majd az „ActiveX vezérlők” alatt a sarokban lévő kis eszközök ikonra kattint.

Grafikon létrehozása nyers adatfájlokból bármely Office termékben VBAChart6

Görgessen a „Microsoft Office Chart 11.0” elemre, és kattintson az OK gombra.
hozzon létre egy ingyenes grafikont

Végül elkezdjük az üzletet. Így néz ki az MS Web Component diagram beágyazva egy táblázatba. Ugyanaznak látszik beágyazva egy Word-dokumentumba vagy bármi másba.

hozzon létre egy ingyenes grafikont
Tehát, az Excel esetében azt szeretném, ha a diagram azonnal betölti az adatokat az adatfájlból a munkafüzet megnyitásakor. Ehhez belép a kódszerkesztőbe, ha rákattint a „Kód megtekintése” elemre a Fejlesztő menüben, majd kattintson duplán a Munkafüzetre a munkafüzet kódjának megtekintéséhez. Változtassa meg a jobb oldali legördülő menüt „Megnyitás” -ra. Ez a szkript akkor fut, amikor a munkafüzet-fájlt először megnyitják.

hozzon létre egy ingyenes grafikont
Ahhoz, hogy betöltse a diagramot a kódból származó adatokkal, maga a diagramnak szüksége van egy névre. Menjen vissza a táblázathoz, kattintson a jobb egérgombbal a diagramra, és válassza a Tulajdonságok lehetőséget. Látni fogja a „Név” mezőt, valami hasonlóval: „ChartSpace1”. Bármire megváltoztathatja. „MyChart” -nak hívták.
Grafikon létrehozása nyers adatfájlokból bármely Office termékben VBAChart10
Ugyanakkor, csak hogy tudd, milyen az adatfájl - az enyém egy olyan szövegfájl, amelyet vesszővel elválasztott formátumban töltöttek be az adatértékek. Ez a fájl lehet bármi - az érzékelőktől exportált laboratóriumi adatok, a gyakornokok által manuálisan beírt pénzügyi információk vagy bármi más. A fájlt a kóddal olvassa be, tehát nem számít, hogy néz ki az adat, mindaddig, amíg tudod, hogy néz ki minden sor, amikor a program beolvassa.
hozzon létre egy grafikont
Tehát most a móka kedvéért. Megmutatom a kódot kis részekben, hogy ez ne legyen túl nagy, és elmagyarázom, mi a kód. A kód teteje először az összes értéket beolvassa a szövegfájlból, és két tömbben tárolja őket, az egyik x változókhoz (xVar) és egy y változókhoz (yVar).

Dim fso as New FileSystemObject. Dim fnum. Dim MyFile as String. Dim strDataLine mint karakterlánc. Dim xVar () mint változat. Dim yVar () mint változat. Dim intNumOfLines egész számként MyFile = "c: \ fájlok \ MyData.txt" fnum = FreeFile () Nyissa meg a MyFile fájlt az elsőként történő bevitelhez. intNumOfLines = 0. Tegye, amíg nem EOF (1) intNumOfLines = intNumOfLines + 1 1. bemenet, strDataLine 1. bemenet, strDataLine. Hurok. Az 1. számú ReDim xVar bezárása (intNumOfLines) ReDim yVar (intNumOfLines) Nyissa meg a MyFile fájlt az elsőként történő bevitelhez. intNumOfLines = 0. Tegye, amíg nem EOF (1) 1. bemenet, xVar (intNumOfLines) 1. bemenet, yVar (intNumOfLines) intNumOfLines = intNumOfLines + 1. Hurok. Zárja be az 1. szót

Ez a kód alapvetõen kétszer fut az adatfájlon - elsõ alkalommal a tömbök méretezéséhez a pontos hosszúság szükséges az adatok tárolásához, majd másodszor az adatok beolvasásához tömbök. Ha nem tudja, mi a tömb - ez egy változó vagy egy tároló terület, amely hosszú listát fog tartalmazni azokról az értékekről, amelyekhez hozzá lehet férni azzal a sorrenddel, hogy az értéket a tömbben tárolták. Az egyik betöltött harmad például (3) lenne.

Most, hogy ezen tömbök közül kettő betöltődött az összes fájlból az értékekkel, készen áll arra, hogy betöltse ezeket az értékeket a már beágyazott diagramba. Íme a kód, amely ezt teszi.

A Sheet1.MyChart .Clear .Refresh Set oChart = .Charts beállítással. Adjon hozzá oChart-ot. HasTitle = True oChart. Cím. Felirat = "Saját adataim értékei" 'oChart. Belső. Szín = "kék" oChart. PlotArea. Belső. Szín = "fehér" Beállítva oSeries = oChart. SeriesCollection. Hozzáadás az oSeries segítségével .Caption = "Saját adataim" .SetData chDimCategories, chDataLiteral, xVar .SetData chDimValues, chDataLiteral, yVar .Line. Szín = "kék" .Vonala. DashStyle = chLineDash .Line. Súly = 2 .Type = chChartTypeLine Vége oChart-tal. HasLegend = Igaz. oChart. Legenda. Pozíció = chLegendPositionBottom. Vége

A „Sheet1.MyChart” összekapcsolja a kódot a beágyazott tényleges diagrammal. Azon alapul, amit neveztek. Ez a helyzet akkor fordul elő, ha beágyazja a Word, a Powerpoint vagy más Office termékekbe. Nem a „Sheet1” segítségével utalja rá, hanem bármilyen elem tartja a diagramot ebben az esetben, például a Wordben a „document1”.

A fenti kód beállítja a grafikon címkézését és színezését, majd az „.setdata” módszerrel betölti az értékeket mind a 2 dimenziós adatkészlet x, mind y értékére. A fenti kód futtatása után a következő grafikon jelenik meg.
hozzon létre egy grafikont

Ezek az adatok egyenesen nem jelennek meg a szöveges fájlban. Az egyetlen hátrány, hogy az adatfájloknak csak akkor kell kétdimenziósnak lenniük, ha a fenti kódot akarják használni. Megadhat további értékeket az adatkészlethez, de módosítania kell a fenti kódot, hogy a harmadik értéket minden alkalommal elolvassa a hurokban, majd másolatot készítsen a „SeriesCollection. Add ”szakasz hozzáadása egy új sorozat létrehozásához, majd ugyanúgy hozzáadása a diagramhoz.

Bonyolultnak tűnhet, ha elolvassa a fenti kódot, de ha egyszer megtette ezeket, az egy darab sütemény, hogy módosítsa azt az Ön igényei szerint. Ugyanazt a diagramot és hasonló kódot használhatja sávdiagram, szórásdiagram vagy bármilyen más diagramtípus létrehozásához, amelyet ugyanazzal az objektummal kíván használni. Sokoldalú és rugalmas - és hatékony eszköz az arzenáljában, ha az automatizálás rajongója vagy a nagyobb termelékenység érdekében.

Játsszon a fenti kóddal, és nézd meg, lehet-e automatikusan betölteni az adatokat az alkalmazásokba. Milyen kreatív felhasználásokra gondolhat fel ilyen típusú automatizálás? Ossza meg gondolatait és visszajelzéseit az alábbi megjegyzés szakaszban!

Ryan BSc villamosmérnöki diplomával rendelkezik. 13 évet dolgozott az automatizálás területén, 5 évet az informatika területén, és most Apps Engineer. A MakeUseOf volt vezérigazgatója, az adatmegjelenítéssel foglalkozó nemzeti konferenciákon beszélt, és szerepelt a nemzeti televízióban és rádióban.