Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ

Qasja në Excel nga DELPHI. Qasja në Microsoft Excel nga Delphi

Shkëmbimi i të dhënave me MS Excel v Delfi me ndihme OLE.

Te dashur kolege!

Herët a vonë, të gjithë përballemi me detyrën e shkëmbimit të të dhënave me aplikacionet e paketës MS Office... Një prej tyre është MS Excel... Dhe ka të bëjë me ndërveprimin me këtë produkt MS Office do të ketë një fjalim në këtë artikull.

Një mënyrë për të ndërvepruar Delfi c MS ExcelËshtë për t'u lidhur me të si për të OLE Objekt.

Kështu që.
Para së gjithash për të punuar me MS Excel dhe OLE shtoni në seksion Përdorimet modulet ComObj dhe ActiveX.

Dhe gjëja e parë që duhet të kontrollojmë është nëse është i instaluar MS Excel në kompjuterin e përdoruesit në parim.
Për këtë përdorim funksionin CLSIDNgaProgID që duket në regjistër CLSID për të transferuarit ProgID:
Ndihmë nga MSDN: Metoda CLSIDNgaProgID
Opsione:
pszProgID: POleStr- Varg me emrin e objektit
clsid: TCLSID- Treguesi në strukturë TGUID tek i cili është transferuar objekti i gjetur;
Kthimet:
HRESULT- Rezultati që mund të marrë vlera:
S_OK- objekti është gjetur;
CO_E_CLASSSTRING- I regjistruar CLSID për ProgIDështë i pavlefshëm;
REGDB_E_WRITEREGDB- Gabim në shkrim CLSID në regjistër.
Nga rezultatet e listuara, na duhen S_OK.
Le të shkruajmë një funksion për të përcaktuar praninë Excel përdoruesi ka:

Funksioni IsXlsInstall: boolean; var CLSID: TCLSID; Fillo Rezultati: = (CLSIDFromProgID ("Excel.Application", CLSID) = S_OK); fundi;

Nëse Excel instaluar, atëherë ne do të lidhemi me të. Kjo mund të bëhet në dy mënyra: GetActiveOleObject- Merrni një lidhje me një shembull tashmë të ekzekutuar Excel ose KrijoOleObject- Krijo një shembull të ri Excel.
Nëse detyra jonë është të marrim të dhëna nga një drejtim Excel, atëherë duhet të përdorim vetëm opsionin e parë, në raste të tjera përpiqemi të lidhemi dhe nëse nuk funksionon, atëherë krijojmë.
Le të shkruajmë 2 funksione për t'u lidhur XlsConnect dhe lançimi i një të reje XlsStart:
Le të shtojmë një ndryshore FXlsApp me llojin Variant, i cili do të përmbajë një referencë për objektin Excel.

Private FXlsApp: variant; *** funksioni XlsConnect: boolean; Fillimi Rezultati: = E gabuar; provoni FXlsApp: = GetActiveOleObject ("Excel.Application"); Rezultati: = E vërtetë; përveç fundit; fundi; procedura XlsStart; start FXlsApp: = CreateOleObject ("Excel.Application"); fundi;

Tani mund të shtoni një buton, duke klikuar me të cilin do të lidhemi MS Excel duke përdorur funksionet e shkruara:

Procedura btnConnectClick (Dërguesi: TObject); filloni nëse jo IsXlsInstall, atëherë ngrini Exception.Create ("Aplikacioni MS Excel nuk u gjet në këtë kompjuter! "); nëse jo XlsConnect atëherë XlsStart; FXlsApp.Visible: = E vërtetë; fund;

Dritarja e paracaktuar Excelështë nisur në sfond... Linjë FXlsApp.Visible: = E vërtetë; bën dritaren e sfondit Excel të dukshme.

Dritare Excel fillon bosh dhe ju duhet të shtoni në të fletore pune... Kjo bëhet duke përdorur metodën Librat e punës.Shto e cila shton libër i ri ose hap një të ruajtur më parë nëse specifikoni shtegun për në skedar.
Le të shtojmë një procedurë që do ta bëjë këtë:

Procedura XWorkbookAdd (const FilePath: string = ""); filloni FXlsApp.WorkBooks.Add (FilePath); fundi;

Libri është shtuar, tani le të përpiqemi të shkruajmë diçka në të.

FXlsApp.Cells: = "Testring";

ku RreshtiËshtë indeksi i linjës, dhe Kol- indeksi i kolonës që fillon me një.

FXlsApp.Range ["A1"]: = "Qeliza A1";

ku GamaËshtë një grup qelizash, dhe A1- i njohur për Excel koordinatat e qelizave.
Një varg mund të specifikohet si koordinata. Për shembull kodin

FXlsApp.Range ["A3: A10"]: = 5;

do të mbushë të gjitha qelizat me numrin 5 me A3A10 dhe kodin

FXlsApp.Range ["A3: A10"] Brendshme.Ngjyra: = clMoneyGreen;

do të theksojë të njëjtin gamë me jeshile të hapur.
V ana e kundërt, domethënë për të marrë të dhëna nga Excel, funksionon në të njëjtën mënyrë. Linjë

ShowMessage (FXlsApp.Cells);

Do të shfaqë një mesazh me përmbajtjen e një qelize me koordinata: Linja = 5, Kolona = 1.

Pasi të kemi bërë manipulimet e nevojshme me Excel, ne mund ta ruajmë librin që rezulton në një skedar me komandën e mëposhtme:

FXlsApp.ActiveWorkbook.SaveAs ("C: \ Test.xlsx");

ku Libër pune aktiv- libri aktual.
Dhe mbyllni aplikacionin Excel me komandën:

FXlsApp.Quit;

Si i kuptoni këto aftësi menaxhuese? Excel nga Delfi nuk janë të kufizuara. Dhe ekziston një mënyrë mjaft e thjeshtë për të zbuluar se si të kryeni veprimet e nevojshme Excel nga Delfi.
Quhet makro.

Le të imagjinojmë se duhet të bashkojmë disa qeliza në një dhe nuk dimë si ta bëjmë këtë. Por ne duam ta zbulojmë. Për ta bërë këtë, ne kryejmë hapat e mëposhtëm:
1. Nisja Excel dhe krijoni një libër bosh.
2. Ekzekutoni komandën "Record Macro", si parazgjedhje emri i makros do të jetë "Macro1". (V versione të ndryshme Excel komanda e dhënë të vendosura në artikuj të ndryshëm të menysë).
3. Zgjidhni një gamë të caktuar qelizash dhe klikoni butonin "Merge and Place in Center".
4. Ndalo regjistrimin e makro.
5. Telefononi listën e makrove dhe zgjidhni makronë tuaj të regjistruar atje.
6. Shtypni butonin "Ndrysho".
Redaktori fillon Microsoft Visual Bazë për aplikim në të cilin shohim kodin e veprimeve të kryera:

SubMacro1 () "" Macro1 Macro "Me Përzgjedhje .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .Shrinkseerr = 0 .ShrinkseerrOx.Fit

Le të hedhim një vështrim më të afërt se çfarë na ka shkruar këtu:
Me Përzgjedhje- Për gamën e zgjedhur të qelizave, vendosni vetitë:
Horizontal Alignment = xlQendraOrientimi horizontal= në qendër.
Shtrirja vertikale = xlPoshtë- Orientimi vertikal - përgjatë skajit të poshtëm.
WrapText = E rreme- Mbështjellja e fjalëve - e paaftë.
Orientimi = 0- Orientimi 0 grade.
AddIndent = False- Përdorimi i hyrjes automatike të ndezur/fikur.
Niveli i dhëmbëzimit = 0- Niveli i dhëmbëzimit është 0.
ShrinkToFit = E rreme- Zvogëloni tekstin për t'iu përshtatur kolonës në / fikur.
Renditja e leximit = xlKontekst- Rendi i leximit sipas kontekstit.
MergeCells = False- Qelizat e bashkuara aktivizohen / çaktivizohen
Fund Me- Fundi i seksionit të punës me gamën e zgjedhur.
Përzgjedhja.Shkrihen- Kombinoni gamën e zgjedhur.

Tani le të përpiqemi të bashkojmë qelizat nga Delphi:

Ne zgjedhim gamën që na nevojitet.

FXlsApp.Selection.MergeCells: = E vërtetë;

Ne bashkojmë qelizat duke vendosur vetinë. Ose duke përdorur metodën:

FXlsApp.Selection.Merge;

Në këtë mënyrë, ju mund të merrni kodin për pothuajse çdo manipulim të nevojshëm.
Dhe nëse një pronë ose metodë ngre pyetje, mund të përdorni ndihmën në MSDN.

Kushtojini vëmendje veçorisë së punës me vargje në VBA... Indekset në vargje në Delfi të kthehet në kllapa katrore, ndërsa në VBA ata do të jenë të rrumbullakët. Dhe kodi në Delfi

FXlsApp.Range ["B5: C8"] Zgjidhni;

v VBA do të duket si

Gama ("D5: H14") Zgjidh;

Më poshtë është një e vogël FAQ mbi ndërveprimin me Excel nga Delfi

Si të përcaktoni vlerat konstante në Excel për përdorim në Delphi?

Në redaktor VBA vendosim një pikë ndërprerjeje përballë konstantës së interesit. Shtypim execute dhe kur ekzekutimi ndalon, tregojmë konstantën e interesit:

Si të çaktivizoni daljen e mesazhit në Excel?

FXlsApp.DisplayAlerts: = False;

Si të merrni një listë të librave të punës nga Excel?

Për i: = 1 në FXlsApp.Workbooks.Count do ListBox1.Items.Add (FXlsApp.Workbooks.Item [i] .Emri);

Si të çaktivizoj ekranin e rrjetit?

FXlsApp.ActiveWindow.DisplayGridlines: = False;

Si të shfaqni fletën aktuale në një pamje paraprake të printimit?

FXlsApp.ActiveWindow.SelectedSheets.PrintPreview;

Si të bëni një pjesë të tekstit me shkronja të zeza në qeliza?

Var Rreshti: numër i plotë; // Indeksi i vargut Col: integer; // Indeksi i qelizave TextSelStart: numër i plotë; // Duke filluar nga karakteri TextSelLength: integer; // Numri i karaktereve të zgjedhura fillon FXlsApp.Cells.Characters (TextSelStart, TextSelLength) .Font.Bold: = True; fundi;

Si mund ta përshtat automatikisht lartësinë e rreshtit të një qelize të ngjitur?

Var merge_zona: variant; gjerësia_qeliza, gjerësia_qeliza, i: fillimi i numrit të plotë // Ruani gamën e qelizave të ngjitura në një variabël merge_zone: = FXlsApp.Range ["D5"] MergeArea; // Ruaj gjerësinë e qelizës për të cilën do të rregullojmë lartësinë gjerësinë_qelize: = FXlsApp.Range ["D5"].Gërësia e kolonës; gjerësia_qelizave: = 0; për i: = 1 për merge_area.Columns.Count do // Merr gjerësinë totale të të gjitha kolonave të gamës së ngjitur qelizat_gjerësia: = gjerësia_qeliza + merge_zona.Kollonat [i] .Gjerësia e kolonës; // Shkëputni qelizat merge_area.UnMerge; // Cakto gjerësinë e qelizës me interes në gjerësinë totale FXlsApp.Range ["D5"] Gjerësia e kolonës: = gjerësia_qelizave; // Thirrni metodë standarde përshtatja automatike e lartësisë së rreshtit FXlsApp.Rows.EntireRow.AutoFit; // Ktheni gjerësinë origjinale të qelizës me interes FXlsApp.Range ["D5"] Gjerësia e kolonës: = gjerësia_qelize; // Ngjit përsëri vargun merge_area.Merge; fundi;

Si mund të marr gamën e përdorur të qelizave?

Rezultati: = exApp.ActiveSheet.UsedRange;

Si mund të marr shkronjën e një kolone sipas indeksit?

Përdor matematikën; *** funksioni ColIdxToStr (konst Col: integer): string const CharsCount: integer = 26; Kompensimi: numër i plotë = 64; var Rank: byte; Col, Tmp: numër i plotë; Fillimi Rezultati: = ""; ndërsa Kol> 0 fillon Renditja: = 0; Tmp: = Kol; ndërsa Tmp> CharsCount fillon Tmp: = Ceil (Tmp / CharsCount - 1); Inc (Rank); fundi; Rezultati: = Rezultati + Chr (Tmp + Offset); Col: = Col - Trunc (Fuqia (Numri i të dhënave, Rank)) * Tmp; fundi; fundi;

V këtë rishikim marrë parasysh konstruksionet bazë që ju lejojnë të përdorni librin e punës Excel nga DELPHI.

Organizimi i aksesit në librin EXCEL

Për të bashkëvepruar me MS excel në program, duhet të përdorni modulin ComObj
përdor ComObj;
dhe deklaroni një variabël për të hyrë në MS excel të llojit të mëposhtëm:
var Excel: Variant;

Në rastin më të thjeshtë, ndryshorja Excel mund të inicializohet si kjo:
Excel: = CreateOleObject ("Excel.Application");

Krijimi i një libri të ri:
Excel.Fletoret e punës.Shto;

Hapja e një libri ekzistues (ku shtegu është shtegu i skedarit me zgjerimi xls.):
Excel.Fletoret e punës.Open;

Hapja e një libri pune ekzistues vetëm për lexim:
Excel.Fletoret e punës.Open;

Mbyllja e Excel:
Excel.ActiveWorkbook.Mbyll;
Excel.Application.Quit;

Kërkesat e bllokimit (konfirmimet, njoftimet) Excel, për shembull, refuzon një kërkesë për të ruajtur një skedar:
Excel.DisplayAlerts: = False;

Shfaqja e Excel në ekran:
Excel.E dukshme: = E vërtetë;
ose fshihu:
Excel.E dukshme: = E rreme;

Printoni përmbajtjen e fletës aktive excel:
Excel.ActiveSheet.PrintOut;

Leximi/shkrimi i të dhënave në EXCEL

Një qelizë në librin aktual të punës Excel mund të aksesohet si më poshtë:
Excel.Range ["B2"]: = "Përshëndetje!"; - për të shkruar një vlerë në një qelizë ose s: = Excel.Range ["B2"]; - për lexim, ku B2 është adresa e qelizës.

Ose duke përdorur stilin e lidhjes R1C1:
Excel.Range]: = "Përshëndetje!" ;, ku është koordinata e qelizës.

Në përgjithësi, qelizë Excel ju mund të caktoni çdo vlerë (karakter, numër i plotë, fraksional, datë) dhe Excel do të vendosë formatimin e paracaktuar në qelizë.

Formati i qelizave EXCEL

Ju mund të zgjidhni (përzgjidhni) një grup qelizash për punë të mëtejshme si kjo:
Excel.Range, Excel.Cells] .Zgjidh; ose Excel.Range ["A1: C5"] Zgjidhni; kjo do të nxjerrë në pah zonën midis qelizave A1 dhe C5.

Pas përfundimit të përzgjedhjes, mund të instaloni:

1) bashkoni qelizat Excel.Selection.MergeCells: = E vërtetë;

2) mbështjellja e fjalëve Excel.Selection.WrapText: = E vërtetë;

3) shtrirje horizontale Excel.Selection.HorizontalAlignment: = 3; caktimi i një vlere për 1 përdor shtrirjen e paracaktuar, 2 në shtrirjen majtas, 3 në qendër, 4 në të djathtë.

4) shtrirje vertikale Excel.Selection.VerticalAlignment: = 1; vlerat e caktuara janë të njëjta me shtrirjen horizontale.

5) kufiri për qelizat Excel.Selection.Borders.LineStyle: = 1; Kur vendoset në 1, kufijtë e qelizave vizatohen me vija të holla të forta.

Përveç kësaj, mund të specifikoni vlerat për pronën Borders, për shembull, të barabarta me 3. Atëherë do të vendoset vetëm kufiri i sipërm për bllokun e përzgjedhjes: Excel.Selection.Borders.LineStyle: = 1;

Vlera e grupeve të vetive Borders një kombinim ndryshe fytyrat e qelizave. Në të dyja rastet, mund të përdorni vlera në rangun nga 1 në 10.

Përdorimi i fjalëkalimeve në EXCEL

Vendosja e një fjalëkalimi për një libër aktiv mund të bëhet si më poshtë:
provo // provo të vendosësh fjalëkalimin
Excel.ActiveWorkbook.protect ("kalojë");
përveç // veprimet për përpjekje e pasuksesshme Vendos fjalëkalimin
fundi;
ku kalimi është fjalëkalimi i vendosur për librin.

Heqja e fjalëkalimit nga libri është e ngjashme, ne përdorim komandën
Excel.ActiveWorkbook.Unprotect ("kalojë");

Vendosja dhe heqja e një fjalëkalimi për një fletë aktive Librat e punës në Excel prodhuar nga ekipet
Excel.ActiveSheet.protect ("kalojë"); // vendos fjalëkalimin
Excel.ActiveSheet.Unprotect ("kalojë"); // hiqni fjalëkalimin
ku kalimi është fjalëkalimi i vendosur për të mbrojtur librin.

Operacione ndihmëse në EXCEL

Fshirja e linjave me një zhvendosje lart:
Excel.Rreshtat ["5:15"].Zgjidh;
Excel.Zgjedhja.Fshi;
Kryerja e këtyre veprimeve do të fshijë rreshtat 5 deri në 15.

Vendosja e dokut të një zone në aktive Fletë pune në Excel
// zhgozhdoni zonën, nëse ishte vendosur
Excel.ActiveWindow.FreezePanes: = False;
// zgjidhni qelizën e dëshiruar, në në këtë rast D3
Excel.Range ["D3"].Zgjidh;
// vendos ankorimin e zonës
Excel.ActiveWindow.FreezePanes: = E vërtetë;

Gëzuar punë!

Përmbajtja-Dispozita: formë-të dhëna; emri = "rendi" 50


përdor ComObj;

var Excel: Variant;

Krijimi i një libri të ri:
Excel.Fletoret e punës.Shto;


Excel.Fletoret e punës.Open;

Mbyllja e Excel:
Excel.ActiveWorkbook.Mbyll;
Excel.Application.Quit;


Excel.DisplayAlerts: = False;

Shfaqja e Excel në ekran:
Excel.E dukshme: = E vërtetë;
ose fshihu:
Excel.E dukshme: = E rreme;


Excel.ActiveSheet.PrintOut;

Leximi/shkrimi i të dhënave në EXCEL



ku B2 është adresa e qelizës.


Formati i qelizave EXCEL



ose


1) bashkimi i qelizave

2) mbështjellje fjalësh





5) kufiri për qelizat



Excel.Selection.Borders.LineStyle: = 1;

Përdorimi i fjalëkalimeve në EXCEL


provoni


përveç

fundi;





ku kalimi është fjalëkalimi i vendosur për të mbrojtur librin.


Excel.Rreshtat ["5:15"].Zgjidh;
Excel.Zgjedhja.Fshi;





Excel.Range ["D3"].Zgjidh;


Gëzuar punë!

Një burim:

Kjo përmbledhje mbulon konstruktet bazë që ju lejojnë të përdorni një libër pune në Excel nga DELPHI.

Organizimi i aksesit në librin EXCEL

Për të bashkëvepruar me MS excel në program, duhet të përdorni modulin ComObj
përdor ComObj;
dhe deklaroni një variabël për të hyrë në MS excel të llojit të mëposhtëm:
var Excel: Variant;

Në rastin më të thjeshtë, ndryshorja Excel mund të inicializohet si kjo:
Excel: = CreateOleObject ("Excel.Application");

Krijimi i një libri të ri:
Excel.Fletoret e punës.Shto;

Hapja e një libri ekzistues (ku shtegu është shtegu drejt skedarit me shtesën xls.):
Excel.Fletoret e punës.Open;

Hapja e një libri pune ekzistues vetëm për lexim:
Excel.Fletoret e punës.Open;

Mbyllja e Excel:
Excel.ActiveWorkbook.Mbyll;
Excel.Application.Quit;

Kërkesat e bllokimit (konfirmimet, njoftimet) Excel, për shembull, refuzon një kërkesë për të ruajtur një skedar:
Excel.DisplayAlerts: = False;

Shfaqja e Excel në ekran:
Excel.E dukshme: = E vërtetë;
ose fshihu:
Excel.E dukshme: = E rreme;

Printoni përmbajtjen e fletës aktive excel:
Excel.ActiveSheet.PrintOut;

Leximi/shkrimi i të dhënave në EXCEL

Një qelizë në librin aktual të punës Excel mund të aksesohet si më poshtë:
Excel.Range ["B2"]: = "Përshëndetje!";- për të shkruar një vlerë në një qelizë, ose
s: = Excel.Range ["B2"]; - për lexim,
ku B2 është adresa e qelizës.

Ose duke përdorur stilin e lidhjes R1C1:
Excel.Range]: = "Përshëndetje!";, ku është koordinata e qelizës.

Në përgjithësi, një qelize Excel mund t'i caktohet çdo vlerë (karakter, numër i plotë, fraksional, datë) dhe Excel do të vendosë formatimin e paracaktuar në qelizë.

Formati i qelizave EXCEL

Ju mund të zgjidhni (përzgjidhni) një grup qelizash për punë të mëtejshme si kjo:
Excel.Range, Excel.Cells] .Zgjidh;
ose
Excel.Range ["A1: C5"] Zgjidhni;
kjo do të nxjerrë në pah zonën midis qelizave A1 dhe C5.

Pas përfundimit të përzgjedhjes, mund të instaloni:
1) bashkimi i qelizave
Excel.Selection.MergeCells: = E vërtetë;
2) mbështjellje fjalësh
Excel.Selection.WrapText: = E vërtetë;
3) shtrirje horizontale
Excel.Selection.HorizontalAlignment: = 3;
caktimi i një vlere për 1 përdor shtrirjen e paracaktuar, 2 në shtrirjen majtas, 3 në qendër, 4 në të djathtë.
4) shtrirje vertikale
Excel.Zgjedhja.Rreshtimi vertikal: = 1;
vlerat e caktuara janë të njëjta me shtrirjen horizontale.
5) kufiri për qelizat
Excel.Selection.Borders.LineStyle: = 1;
Kur vendoset në 1, kufijtë e qelizave vizatohen me vija të holla të forta.
Përveç kësaj, ju mund të specifikoni vlerat për pronën Borders, për shembull, të barabarta me 3. Atëherë do të vendoset vetëm kufiri i sipërm për bllokun e përzgjedhjes:
Excel.Selection.Borders.LineStyle: = 1;
Vlera e vetive Borders specifikon një kombinim të ndryshëm të skajeve të qelizës.
Në të dyja rastet, mund të përdorni vlera në rangun nga 1 në 10.

Përdorimi i fjalëkalimeve në EXCEL

Vendosja e një fjalëkalimi për një libër aktiv mund të bëhet si më poshtë:
provoni
// përpiquni të vendosni një fjalëkalim
Excel.ActiveWorkbook.protect ("kalojë");
përveç
// veprimet në përpjekje të pasuksesshme për të vendosur një fjalëkalim
fundi;

ku kalimi është fjalëkalimi i vendosur për librin.

Heqja e fjalëkalimit nga libri është e ngjashme, ne përdorim komandën
Excel.ActiveWorkbook.Unprotect ("kalojë");
ku kalimi është fjalëkalimi i vendosur për të mbrojtur librin.

Vendosja dhe heqja e fjalëkalimit për fletën aktive të librit të punës Excel kryhet nga komandat
Excel.ActiveSheet.protect ("kalojë"); // vendos fjalëkalimin
Excel.ActiveSheet.Unprotect ("kalojë"); // hiqni fjalëkalimin

ku kalimi është fjalëkalimi i vendosur për të mbrojtur librin.

Operacione ndihmëse në EXCEL

Fshirja e linjave me një zhvendosje lart:
Excel.Rreshtat ["5:15"].Zgjidh;
Excel.Zgjedhja.Fshi;

Kryerja e këtyre veprimeve do të fshijë rreshtat 5 deri në 15.

Vendosja e një rajoni docking në fletën aktive të Excel
// zhgozhdoni zonën, nëse ishte vendosur
Excel.ActiveWindow.FreezePanes: = False;
// zgjidhni qelizën e dëshiruar, në këtë rast D3
Excel.Range ["D3"].Zgjidh;
// vendos ankorimin e zonës
Excel.ActiveWindow.FreezePanes: = E vërtetë;

Në këtë artikull, ne do të shikojmë konstruktet bazë që ju lejojnë të përdorni një libër pune MS Excel nga Delphi.

Organizimi i aksesit në librin EXCEL

Për të bashkëvepruar me MS Excel në program, duhet të përdorni modulin ComObj

Përdor ComObj;

dhe deklaroni një variabël për të hyrë në MS Excel të llojit të mëposhtëm:

Var MsExcel: Variant;

Në rastin më të thjeshtë, ndryshorja Excel mund të inicializohet si kjo:

MsExcel: = CreateOleObject ("Excel.Application");

Krijimi i një libri të ri:

MsExcel.Librat e punës.Shto;

Hapja e një libri ekzistues (ku shtegu është shtegu drejt skedarit me shtesën xls.):

MsExcel.Librat e punës.Open;

Hapja e një libri pune ekzistues vetëm për lexim:

MsExcel.Librat e punës.Open;

Mbyllja e Excel:

MsExcel.ActiveWorkbook.Close; MsExcel.Application.Quit;

Bllokimi i kërkesave (konfirmimet, njoftimet) Ms Excel, për shembull, ndalon një kërkesë për të ruajtur një skedar:

MsExcel.DisplayAlerts: = False;

Shfaqja e Excel në ekran:

MsExcel.Visible: = E vërtetë;

ose fshihu:

MsExcel.Visible: = False;

Printoni përmbajtjen e fletës aktive MS Excel:

MsExcel.ActiveSheet.PrintOut;

Leximi/shkrimi i të dhënave në EXCEL

Një qelizë në librin aktual të punës Excel mund të aksesohet si më poshtë:

Për të shkruar një vlerë në një qelizë:

MsExcel.Range ["B2"]: = "Përshëndetje!";

Për të lexuar një vlerë nga një qelizë:

S: = MsExcel.Range ["B2"];

ku B2- adresa e qelisë.

Ose duke përdorur stilin e lidhjes R1C1:

MsExcel.Range]: = "Përshëndetje!";

ku - koordinata e qelizave.

Në përgjithësi, një qelize Excel mund t'i caktohet çdo vlerë (karakter, numër i plotë, fraksional, datë) dhe Ms Excel do të vendosë formatimin e paracaktuar në qelizë.

Formati i qelizave EXCEL

Ju mund të zgjidhni (përzgjidhni) një grup qelizash për punë të mëtejshme si kjo:

MsExcel.Range, MsExcel.Cells] .Zgjidh; // ose MsExcel.Range ["A1: C5"] Zgjidhni;

kjo do të nxjerrë në pah zonën midis qelizave A1 dhe C5.

Pas përfundimit të përzgjedhjes, mund të vendosni bashkimin e qelizave, mbështjelljen e fjalëve, si dhe horizontale dhe shtrirje vertikale:

// bashkoni qelizat MsExcel.Selection.MergeCells: = E vërtetë; // mbështjellja e fjalës MsExcel.Selection.WrapText: = E vërtetë; // shtrirje horizontale MsExcel.Selection.HorizontalAlignment: = 3; // shtrirje vertikale MsExcel.Selection.VerticalAlignment: = 1;

Për vertikale dhe shtrirje horizontale përdoren vlerat e mëposhtme:

1 - përdoret shtrirja e paracaktuar
2 - shtrirje majtas
3 - në qendër
4 - në të djathtë.

Kufiri i qelizës

Kur vendoset në 1, kufijtë e qelizave vizatohen me vija të holla të forta.

Përveç kësaj, ju mund të specifikoni vlerat për pronën Borders, për shembull, të barabarta me 3. Atëherë do të vendoset vetëm kufiri i sipërm për bllokun e përzgjedhjes:

MsExcel.Selection.Borders.LineStyle: = 1;

Vlera e vetive Borders specifikon një kombinim të ndryshëm të skajeve të qelizës. Në të dyja rastet, mund të përdorni vlera në rangun nga 1 në 10.

Përdorimi i fjalëkalimeve në EXCEL

Vendosja e një fjalëkalimi për një libër aktiv mund të bëhet si më poshtë:

Provoni // duke u përpjekur të vendosni një fjalëkalim MsExcel.ActiveWorkbook.protect ("pass"); përveç // veprimeve në përpjekje të pasuksesshme për të vendosur fundin e fjalëkalimit;

ku kalojnë- vendosni fjalëkalimin për librin.

Heqja e fjalëkalimit nga libri është e ngjashme, ne përdorim komandën

MsExcel.ActiveWorkbook.Unprotect ("kalim");

ku kalojnë

Vendosja dhe heqja e fjalëkalimit për fletën aktive të librit të punës Excel kryhet nga komandat

MsExcel.ActiveSheet.protect ("kalojë"); // vendosni fjalëkalimin MsExcel.ActiveSheet.Unprotect ("pass"); // hiqni fjalëkalimin

ku kalojnë- fjalëkalimi i vendosur për të mbrojtur librin.

Operacione ndihmëse në EXCEL

Fshirja e linjave me një zhvendosje lart:

MsExcel.Rows ["5:15"].Zgjidh; MsExcel.Zgjedhja .;

Kryerja e këtyre veprimeve do të fshijë rreshtat 5 deri në 15.

Vendosja e një rajoni docking në fletën aktive të Excel

// zhgozhdoni zonën, nëse ishte vendosur MsExcel.ActiveWindow.FreezePanes: = False; // zgjidhni qelizën e dëshiruar, në këtë rast D3 MsExcel.Range ["D3"].Zgjidhni; // vendosni lidhjen e zonës MsExcel.ActiveWindow.FreezePanes: = E vërtetë;

Ruani librin aktiv të Excel-it

Artikujt kryesorë të lidhur