Létrehozása táblázatok és diagramok Excelben az Delphi - verem túlcsordulás az orosz

Mivel ez a kérdés átfedésben van az előző program szempontjából készségek dolgozni MSOffice alkalmazások (sőt a COM-objektumok), megpróbálom elmagyarázni eljárás kidolgozásakor a Delphi-kód alapján VBA. Végül elhalasztja közvetlenül a válasz arra a kérdésre is.

Először is, meg kell elképzelni, hogy egy objektumok hierarchiáját MS Office-alkalmazásokhoz. Az Excel, akkor valamivel könnyebb, mint a Word.

Valójában, nagyjából. Else emlékezni nem feltétlenül azért, mert a hatalmas asszisztens maga cselekszik Excel / Word, amely lehetővé teszi, hogy rögzítse az összes „manuális” felhasználói műveleteket makrókat.

Folytassuk. Az első szakasz - adatot elhelyezzük a jobb oldali listából. Itt használjuk a fenti hierarchia:

Figyelemre méltó, hogy a legtöbb ingatlan vesz típusú Variant, amely - szinte minden érték: string, integer, Double, stb

Számos módja van, hogy állítsa be a cellába: Formula. FormulaR1C1. Value. stb Meg kell érteni a különbségeket, és a szükséges feladat volt. A leggyakrabban használt a Forma és FormulaR1C1

Ugyancsak hasznos lehet megérteni, hogy minden sejt valójában egy objektum tartomány. azaz bármilyen, bármely számú sejtre, és a többszörös tartomány a sejt összetételének nem különbözött, hogy egyetlen sejt eredetű keresztül Cells.

Ezután meg kell adni a listához a menetrend. Nem tudjuk, hogyan kell ezt csinálni, és mivel számos egyik feladata, hogy emlékezzen, ahol ez a telek található az objektum hierarchia - pazarló.

Mi megy a „View” menü „makrók - Record Macro” és kattintson az „OK” gombot. Menj a lap „Insert”, és egy egyszerű hisztogram. Ezután válassza ki az érintettek körét (vettem a B1-B5), az előjelet (kiválasztva A1-A5) megerősítve a változás és le a makró rögzítését ( "View" - "makrók" - "Stop Recording"). Most, hogy kössön makró ( „View” - „makrók” - „makrók” - „Edit”). Meg kell kinéznie VBA kód:

És ez az, ahol segítségre van szükségünk. mert több nem annyira triviális. Nézzük soronként:

ActiveSheet.Shapes.AddChart.Select - az utóbbi módszer (Select) nem érdekel minket, mert csak kiemeli a hozzáadott szám a lapon. Egy szoftver működése objektum kiválasztása is. De AddChart hozzáteszi Alakzatobjektum. és szükségünk van egy objektum diagram. VBA Ezután következik a legkisebb ellenállás útját - segítségével Application.ActiveChart tulajdonság (ActiveChart.ChartType = xlColumnClustered stb). De mi nem illik, mert (ismét) a szoftver használata Excel nemkívánatos felhasználása „aktív komponens” meg kell dolgozni, amit mi adunk. Megtudjuk, hogy van egy formája kör tulajdonság. szükség van ránk. Ennek megfelelően, minden további munkát építünk ezen lefordításával VBA kódot Delphi:

Meg kell jegyezni, hogy elkerülje az esetleges helyi hívás lap neve (ez függhet a Hivatal nyelv, a felhasználó átnevezés, stb.) Ezért itt is az igazi neve a tulajdonságok Sheet.Name.

Ez minden. Töltse ki a kapott kódot:

Kapcsolódó cikkek