Dodajte grafikon Microsoft dokumentu s web komponentama sustava Office

  • Gabriel Brooks
  • 0
  • 5216
  • 1067
Oglas

Nije li nevjerojatno kako se ponekad tako jednostavno kao što je izrada grafikona može osjećati toliko komplicirano? Bilo da koristite Excel, Word, Powerpoint ili Access - ponekad bi bilo dobro jednostavno umetnuti brzi grafikon s hrpom podataka bez potrebe da napravite puno konfiguracije i nereda oko.

U ovom ću članku pokazati kako koristiti zaista zgodan i jednostavan VBA objekt iz Microsoftovih web komponenti Microsoft Officea koji vam omogućuje da direktno umetnete grafikon u dokument, prezentaciju ili bilo što drugo gdje možete stvoriti VBA kod da biste ga pokrenuli. To također može uključivati ​​proizvode koji nisu Microsoftovi i imaju VBA podršku, što mnogi čine.

U ovom primjeru pokazat ću vam kako omogućiti način dizajniranja u vašem programu (u ovom slučaju koristit ćemo Microsoft Word), ugraditi objekt grafikona u svoj projekt i zatim kako napisati kôd koji ga ispunjava s podacima.

U nekim od mojih prošlih članaka o VBA, nekoliko vas spomenulo je da je taj zadatak malo previše kompliciran za one koji nikada prije nisu napisali kod. Nadam se da ćete nakon čitanja ovog članka biti motivirani da isprobate ruku s VBA. Kôd koji je ovdje uključen vrlo je jednostavno i jednostavno napisati. Umetanje ovog grafikona izvrstan je način da se ruke umažu VBA ako je nikad niste pokušali.

Ako znate VBA, ovo je sjajan alat za početak ugradnje brzih grafikona u svoje projekte s mnogo manje napora nego ikad prije.

Omogućavanje načina dizajna

U ovom primjeru htio sam sastaviti brzi dokument s ugrađenom grafikonom koji prikazuje podatke iz tekućeg mjeseca mog proračuna kao i mjesečni prosjek godišnje potrošnje do danas.

U ovom ću primjeru te vrijednosti tvrdo kodirati u an “red” unutar VBA koda, ali na kraju možete upotrijebiti razne tehnike za učitavanje tih varijabli matrike (niz je jednostavno varijabla koja sadrži popis vrijednosti) iz drugih izvora, poput vanjske proračunske tablice ili čak obrasca u koji unesete vrijednosti ručno svaki mjesec.

Da biste saznali kako uvesti podatke u Word iz Excela, pogledajte moj članak Kako integrirati Excelove podatke u Wordov dokument Kako integrirati Excel podatke u Wordov dokument tijekom radnog tjedna vjerojatno ćete puno puta kopirati i lijepljenje podataka iz Excela u Word ili obrnuto. Tako ljudi često stvaraju pismena izvješća ... o toj temi. U svrhu ovog članka usredotočit ćemo se na izradu grafikona za prikaz podataka.

Sad kad sam pokrenuo svoj dokument, želim ući u kod. U Wordu ili Excelu to radite klikom na “Datoteka”, “Opcije” a zatim kliknite na opciju za prilagođavanje vrpce. Na desnoj strani opcija vidjet ćete “Prilagodite vrpcu” u stupcu i u “Glavne kartice” polje koje bi trebao vidjeti “razvijač” nesmetan. Označite taj okvir.

Natrag na svoj dokument, sada biste trebali vidjeti dokument “razvijač” Stavka izbornika dostupna. Unutar ovog izbornika pronaći ćete “Način dizajna” dugme.

Kliknite na Modus dizajna, a zatim kliknite ikonu mape / alata za “Naslijeđeni alati”, a zatim u donjem desnom kutu skočnog okvira, pod ActiveX kontrolama kliknite na “Više kontrola” dugme.

Pomičite se prema popisu dostupnih kontrola prema dolje dok ne dođete do “Microsoft Office Chart xx.x”. Ako je na vašem računalu instaliran Microsoft Office, vjerovatno će biti dostupna ova kontrola.

Jednom kada umetnete kontrolu u dokument, vidjet ćete ga kao okvir s naznakom “Web komponente Microsoft Officea” u. Ovo je u osnovi vaša prazna karta, spremna za prikaz vaših podataka.

Sljedeći korak je pisanje koda koji će postaviti vrstu grafikona i prikaz podataka. Ako želite da postupak bude ručan, na dokument možete staviti gumb koji će podatke učitati u grafikon, ali u mom slučaju želio sam da se cijela stvar potpuno automatizira. U trenutku kad otvorim dokument, želio sam da pokrene skriptu koja učitava grafikon, tako da to možete učiniti u kôdu (kliknite na gumb Visual Basic da biste ušli u uređivač koda) i odabrali objekt Document i “Otvorena” događaj.

To će automatski staviti praznu funkciju koja se zove “Document_Open ()” u svoj kod. Unutar te funkcije želite zalijepiti sljedeći kôd.

Privatni pod-dokument_Otvori ()  Dim i kao Integer  Dim oChart  Dim oSeries1  Dim oSeries2  'Napravite nizove za x-vrijednosti i y-vrijednosti  Dim xValues ​​kao varijanta, yValues1 Kao varijanta, yValues2 kao varijanta  xValues ​​= Niz ("Električni račun", "Hipoteka", "Telefonski račun", _  "Račun za grijanje", "Namirnice", _  "Benzin", "Odjeća", "Kupovina")  yValues1 = Niz (124.53, 1250.24, 45.43, 253.54, 143.32, 259.85, 102.5, _  569,94)  yValues2 = Niz (110, 1250, 50, 200, 130, 274, 95, _  300)
 

Ovaj odjeljak koda stvara tri polja. Prvi (xValues) u osnovi je vaš popis opisa x-osi za svaki podatkovni element. U mom slučaju stvaram grafikon stupaca s yValues1, ali možete stvoriti i linijski graf. Pokazat ću vam kako to učiniti s yValues2. Sada zalijepite i sljedeći segment koda.

 S ovimDocument.ChartSpace1  .Čisto  .Osvježiti  Postavite oChart = .Charts.Add  oChart.HasTitle = Točno  oChart.Title.Caption = "Mjesečni proračunski brojevi u odnosu na prosjek"
 

Ovaj odjeljak koda stvara zapravo stvara sam grafikon unutar vašeg “chartspace” spremnik. Tvoj grafikon trenutno nema podataka, ali pomoću nekoliko naredbi možete postaviti naslov grafikona kao i naslov. Sada je vrijeme za dodavanje podataka. Zalijepite sljedeći kôd ispod koda koji ste već zalijepili za to.

Postavite oSeries1 = oChart.SeriesCollection.Add  S oSeries1  .Natpis = "Ovaj mjesec"  .SetData chDimKategorije, chDataLiteral, xValues  .SetData chDimValues, chDataLiteral, yValues1  .Tip = chChartTypeColumnClustered  Završi sa  'Dodajte još jedan niz u grafikon s x-vrijednostima i y-vrijednostima  'iz niza i postavite vrstu serije na linijski grafikon  Postavite oSeries = oChart.SeriesCollection.Add  S oSeries  .Caption = "Prosječna potrošnja"  .SetData chDimKategorije, chDataLiteral, xValues  .SetData chDimValues, chDataLiteral, yValues2  .Upišite = chChartTypeLineMarkers  Završi sa

Gornji kôd stvara dvije serije za prikaz na vašoj karti. Prva serija konfigurira podatke za prikaz unutar objekta grafikona kao a “ColumnClustered” formatu, a druga serija postavljena je da prikazuje kao “TypeLineMarkers” format. To će prikazati oba skupa vrijednosti na istom grafikonu, ali koristit će različite vrste grafikona - što zapravo može biti vrlo zgodan način prikaza i usporedbe više skupova podataka.

Sad kad su podaci dodani, preostaje samo srediti osovinu i dovršiti detalje grafikona.

 'Formatirajte vrijednost Osovine
 oChart.Axes (chAxisPositionLeft) .NumberFormat = "$ #, ## 0"  oChart.Axes (chAxisPositionLeft) .MajorUnit = 1000  'Prikažite legendu na dnu ljestvice  oChart.HasLegend = Točno  oChart.Legend.Position = chLegendPositionBottom
 Završi sa
Kraj Sub

Gornji kôd formatira brojeve na lijevoj osovini kako bi se prikazali u numeričkom formatu dolara. Sljedeći redak konfigurira maksimalnu granicu okomite osi. Kako znam da pojedinačni predmeti neće prijeći 1000 USD, to je ono što sam postavio maksimalno y osi.

Spremite dokument, zatvorite ga, ponovo otvorite i voila - dolazi vaš grafikon, koji se automatski učitava s podacima iz dva niza..

Sada kada znate kako umetnuti grafikone i automatski učitati podatke u njih, samo razmislite o mogućnostima. Sve što trebate učiniti je unijeti vanjske podatke u te nizove - možda proračunsku tablicu Excel, možda pristupnu bazu podataka ili bilo što drugo - i odjednom ovaj dokument postaje vrlo dinamičan i vrijedan prozor u pohranjene podatke.

Ovo je samo vrh ledenog gradića s objektima MS Office Web Components. Započeo sam s ljestvicama jer smatram da je ta značajka najuzbudljivija. Vrlo je korisno i vrlo moćno dodavanje grafikona bilo kojoj VBA aplikaciji koju želite pomoću vrlo kratkog skripta.

Ako ste svi o grafikonima, zašto ne pokušati ovaj objekt grafikona pokušati? Znate li još koji od korisnih objekata za grafikone za VBA? Kako ugrađivati ​​podatke u svoje aplikacije? Podijelite svoja razmišljanja i iskustva u odjeljku s komentarima u nastavku.

Kreditna slika: Bar grafikon tableta putem Shutterstocka




Još ne komentari

O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.