Sign in Join
Wiki copytemporary

ExcelAutomation/de: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
1-\
21Zurück zur [[Office Automation/de|Office Automation]].\
3-\
4-\
2+
53=Excel= Alle Möglichkeiten der Excelautomation aufzuzeigen ist nicht möglich ich hoffe aber für jeden Bedarf Anregungen gefunden zu haben.\
64Excel ist zu dem die automatisierungsfreundlichste Software von Microsoft.\
75Wenn Sie Umlaute usw. verwenden, dann sollten Sie wissen, dass Excel UTF16 codierte Strings verwendet.\
86Für die Oleautomation muss die Unit **ComObj** eingebunden werden.\
97Für die Verwendung von Umlauten usw. muss die Unit **lclproc** eingebunden werden.\
10-\
8+
119==Speicherplatz reservieren==
1210
1311``` pascal
1412var
1513 varXLApp: oleVariant; // wird für die Adressierung des Programms Excel verwedet
1614 varXLWb: oleVariant; // wird für die Adressierung des Exceldatei verwendet
1715 wstrUebergabe: WideString; // Hilfsvariable (wird z. B. für Umlaute usw. benötigt)
1816 wstrRange: WideString // Hilfsvariable für eine Range
1917```
2018
21-\
22-
2319## Excel OleObjekt erstellen
2420
2521``` pascal
2622uses
2723 comobj;
2824
2925begin
3026 ...
3127 try
3228 varXLApp := CreateOleObject('Excel.Application'); // erstellt das Excelobjekt
3329 except
3430 WriteLn('MS Excel kann nicht gestartet werden.'); // Fehlerbehandlung
3531 end;
3632 ...
3733end;
3834```
3935
40-\
41-
4236## Excel beenden und den Speicher freigeben
4337
4438``` pascal
4539begin
4640 ...
4741 varXLApp.Quit;
4842 varXLApp := UnAssigned; //Der Speicher muss am Ende wieder freigegeben werden, sonst entstehen Speicherlecks
4943 ...
5044end;
5145```
5246
53-\
5447==Excel Version ermitteln==
5548
5649``` pascal
5750begin
5851 ...
5952 ShowMessage(varXLApp.Version);
6053 ...
6154end;
6255```
6356
64-\
6557==Fehlermeldungen und Warnungen deaktivieren== Das Dekativieren von bestimmten Fehlermeldungen und Warnungen kann die Softwaresteuerung vereinfachen.
6658
6759``` pascal
6860begin
6961 ...
7062 varXLApp.DisplayAlerts := False; // schaltet diverse Fehlermeldungen von Excel aus
7163 ...
7264end;
7365```
7466
75-\
7667==Sichtbarkeit von Excel steuern== Für Excel 2003 und älter gilt, dass das Unterdrücken der Anzeige die Verarbeitungsgeschwindigkeit beschleunigt.\
7768Für alle Excelversionen gilt, dass es das das Flackern des Bildschirms verhindert.
7869
7970``` pascal
8071begin
8172 ...
8273 varXLApp.Visible := False; // macht Excel unsichtbar
8374 varXLApp.ScreenUpdating := False; // schaltet das ScreenUpdating von Excel aus
8475
8576 varXLApp.ScreenUpdating := True; // schaltet das ScreenUpdating von Excel ein
8677 varXLApp.Visible := True; // macht Excel sichtbar
8778 ...
8879end;
8980```
9081
91-\
92-
9382# Workbooks
9483
9584## Workbook (Datei) öffnen
9685
9786Öffnet eine vorhandene Datei.\
9887
9988``` pascal
10089begin
10190 ...
10291 varXLApp.Workbooks.Open(strPfad); // öffnet die Exceldatei (Pfad: maximal 255 Zeichen)
10392
10493 // Alternative:
10594 // öffnet ein vorhandenes Workbook (Exceldatei) und weist seine Speicheradresse
10695 // der Variablen varXLWb zu. Diese Variable ermöglicht eine kürzere Schreibweise
10796 // und eindeutige (direkte) Ansprache des Dokuments.
10897 // Das ist besonders dann hilfreich, wenn man mit mehreren Exceldateien gleichzeitig arbeitet.
10998 varXLWb := varXLApp.Workbooks.Open(strPfad);
11099 ...
111100end;
112101```
113102
114-\
115103==Workbook (Datei) einfügen== Erstellt eine neue Datei.\
116104
117105``` pascal
118106begin
119107 ...
120108 varXLApp.Workbooks.Add; // fügt ein neues Workbook ein
121109 ...
122110end;
123111```
124112
125-\
126113==Workbook speichern==
127114
128115``` pascal
129116begin
130117 ...
131118 varXLApp.Workbooks[1].Save; // speichert ein Worksheet über seinen Index
132119 varXLApp.Workbooks['Test.xls'].Save; // speicher ein Worksheet über seinen Namen
133120 ...
134121end;
135122```
136123
137-\
138124==Workbook unter neuem Namen speichern==
139125
140126``` pascal
141127begin
142128 ...
143129 varXLApp.Workbooks[1].SaveAs('D:\Test.xls', varXLApp.Workbooks[1].fileformat);
144130 ...
145131end;
146132```
147133
148-\
149134==Workbook schliessen==
150135
151136``` pascal
152137begin
153138 ...
154139 varXLApp.Workbooks[1].Close;
155140 ...
156141end;
157142```
158143
159-\
160144==Name des aktiven Workbooks ermitteln==
161145
162146``` pascal
163147var
164148 strName: String;
165149begin
166150 ...
167151 // Ausgabe am Bildschirm
168152 ShowMessage(varXLApp.ActiveWorkbook.Name);
169153 // Alternative:
170154 // speichern in einer Variable
171155 strName := varXLApp.ActiveWorkbook.Name;
172156 ...
173157end;
174158```
175159
176-\
177-
178160# Worksheets
179161
180162## Worksheet einfügen
181163
182164``` pascal
183165begin
184166 ...
185167 varXLApp.WorkBooks[1].WorkSheets.Add; //fügt ein neues WorkSheet hinzu
186168 ...
187169end;
188170```
189171
190-\
191172==Worksheet umbenennen==
192173
193174``` pascal
194175begin
195176 ...
196177 varXLApp.WorkBooks[1].WorkSheets[1].Name := 'Neuer Name'; // benennt ein Worksheet über seinen Index um
197178 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Name := 'Neuer Name'; // benennt ein Worksheet über seinen Namen um
198179 ...
199180end;
200181```
201182
202-\
203183==Worksheet löschen==
204184
205185``` pascal
206186begin
207187 ...
208188 varXLApp.WorkBooks[1].WorkSheets[3].Delete; // löscht ein Worksheet über seinen Index
209189 varXLApp.WorkBooks[1].WorkSheets['Tabelle3'].Delete; // löscht ein Worksheet über seinen Namen
210190 ...
211191end;
212192```
213193
214-\
215194==Worksheet aktivieren==
216195
217196``` pascal
218197begin
219198 ...
220199 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Activate;
221200 ...
222201end;
223202```
224203
225-\
226204==Hintergrundbild einfügen== Um ein Hintergrundbild in ein Worksheet einzufügen gibt es mehrere Möglichkeiten.\
227205
228206``` pascal
229207begin
230208 ...
231209 // Um das richtige Worksheet zu addressieren verwendet man den Index von Workbook und Worksheet
232210 varXLApp.WorkBooks[1].WorkSheets[1].SetBackGroundPicture('D:\Testbild.JPG');
233211 // Alternative
234212 // Um das richtige Worksheet zu addressieren verwendet man die Namen von Workbook und Worksheet
235213 varXLApp.WorkBooks['Test.xls'].WorkSheets['Tabelle2'].SetBackGroundPicture('D:\Testbild.JPG');
236214 ...
237215end;
238216```
239217
240-\
241-
242218# Zeilen und Spalten
243219
244220## Zeilenbreite und Spaltenhöhe setzen
245221
246222``` pascal
247223begin
248224 ...
249225 // Setzt die Spaltenbreite für Spalte 1
250226 varXLApp.WorkBooks[1].WorkSheets[1].Columns.Columns[1].ColumnWidth := 70;
251227 // oder
252228 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Columns.Columns[1].ColumnWidth := 70;
253229
254230 // Setzt die Spaltenhöhe für Zeile 1
255231 varXLApp.WorkBooks[1].WorkSheets[1].Rows.Rows[1].RowHeight := 60;
256232 // oder
257233 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Rows.Rows[1].RowHeight := 60;
258234 ...
259235end;
260236```
261237
262-\
263238==Zeilen löschen==
264239
265240``` pascal
266241begin
267242 ...
268243 // Löscht die Zeilen 8 bis 10 und verschiebt die darunter liegenden Zeilen nach oben
269244 varXLWb.Worksheets['Tabelle2'].Rows['8:10'].Delete (xlUp);
270245 ...
271246end;
272247```
273248
274-\
275-
276249# Zellen und Ranges
277250
278251## Autofilter setzen
279252
280253``` pascal
281254begin
282255 ...
283256 // setzt den Autofilter auf die erste Zeile
284257 varXLApp.WorkBooks[1].WorkSheets[1].Rows.Rows[1].AutoFilter;
285258 ...
286259end;
287260```
288261
289-\
290262==Rahmen zeichnen==
291263
292264``` pascal
293265begin
294266 ...
295267 // Zeichnet einen Rahmen um den Bereich "B2:C3"
296268 // Der Parameter BorderAround hat folgende Syntax: BorderAround(Linienstil, Linenstärke, Farbe)
297269 varXLApp.WorkBooks[1].WorkSheets[1].Range['B2:C3'].BorderAround(1, 2, 1);
298270 ...
299271end;
300272```
301273
302-\
303274==Hyperlinks und URLS einfügen==
304275
305276``` pascal
306277begin
307278 ...
308279 // Fügt eine URL in Zelle "A2" in Sheet 2 ein
309280 // Alternative 1
310281 varXLApp.WorkBooks[1].Worksheets[2].Hyperlinks.add(
311282 varXLApp.WorkBooks[1].Worksheets[2].Cells[2, 1], 'http://www.google.de');
312283 // Alternative 2
313284 varXLApp.WorkBooks[1].worksheets[2].Cells[2,1].Formula := '=HYPERLINK("http://www.google.de")';
314285
315286 // Fügt eine Emailadresse als Formel in Zelle "A3" in Sheet 2 ein
316287 varXLApp.WorkBooks[1].worksheets[2].Cells[3,1].Formula := '=HYPERLINK("mailto:test.testmann.@test.com","Email")';
317288 ...
318289end;
319290```
320291
321-\
322292==Wert einfügen== Um einen oder mehrere Werte in einen Bereich einzufügen gibt es verschiedene Möglichkeiten.\
323293
324294``` pascal
325295begin
326296 ...
327297 // Alternative 1
328298 varXLApp.WorkBooks[1].WorkSheets[1].Range['A5'].Value := 3;
329299 varXLApp.WorkBooks[1].WorkSheets[1].Range['A6'].Value := 3;
330300 varXLApp.WorkBooks[1].WorkSheets[1].Range['A7'].Value := 3;
331301
332302 // Alternative 2
333303 varXLApp.WorkBooks[1].WorkSheets[1].Range['A5', 'A7'].Value := 3;
334304
335305 // Alternative 3
336306 wstrRange := UTF8ToUTF16('A' + IntToStr(5) + ':A' + IntToStr(7));
337307 varXLApp.WorkBooks[1].WorkSheets[1].Range[wstrRange].Value := 3;
338308
339309 // Alternative 4
340310 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Range['A5', 'A7'].Value := 3;
341311
342312 // Alternative ...
343313 ...
344314
345315 // Übernimmt Umlaute usw. und benötigt dafür die Unit lclproc
346316 varXLApp.WorkSheets[1].Range['A15'].Value := UTF8ToUTF16('Überlegung');
347317 // Diese Vorgehensweise zur Verwendung von Umlauten ist sicherer
348318 wstrUebergabe := UTF8ToUTF16('Überlegung');
349319 varXLApp.WorkSheets[1].Range['A15'].Value := wstrUebergabe;
350320
351321 // Ermittelt die letzte Zeile und schreibt diese in Zeile 1 der Spalte F
352322 varXLWb.Worksheets['Tabelle2'].Range['F1'].Value :=
353323 varXLWb.Worksheets['Tabelle2'].UsedRange.SpecialCells(xlCellTypeLastCell).Row;
354324 // schreibt Text in die Zeile 1 der Spalte B
355325 varXLWb.Worksheets['Tabelle2'].Cells[1, 2].Value := 'Test';
356326 ...
357327end;
358328```
359329
360-\
361-
362330## Formel einfügen
363331
364332``` pascal
365333begin
366334 ...
367335 // Alternative 1
368336 varXLApp.WorkBooks[1].worksheets[2].Cells[6,3].Formula := '=Sum(A5:A7)';
369337 // Alternative 2
370338 varXLApp.WorkBooks[1].WorkSheets[2].Range['C6'].Formula := '=Sum(A5:A7)';
371339 ...
372340end;
373341```
374342
375-\
376343==Arbeiten mit Schriften==
377344
378345``` pascal
379346begin
380347 ...
381348 // Legt die Schriftart fest
382349 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Name := 'Arial';
383350 // Legt die Schriftgröße fest
384351 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Size := 20;
385352 // Legt die Fettschrift fest
386353 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Bold := True;
387354 //Legt die Kursivschrift fest
388355 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Italic := True;
389356 // Unterstreicht den Eintrag
390357 varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Underline := True;
391358 ...
392359end;
393360```
394361
395-\
396-
397362# Chart erstellen
398363
399364Die Beispiele gehen davon aus, dass das Excelobjekt (varXLApp) bereits existiert und die Exceldatei geöffnet ist.\
400365==Chart Speicher reservieren==
401366
402367``` pascal
403368var
404369 varDiagramm: OleVariant;
405370```
406371
407-\
408372==Chart Speicher freigeben==
409373
410374``` pascal
411375begin
412376 ...
413377 varDiagramm := UnAssigned;
414378 ...
415379end;
416380```
417381
418-\
419382==Chart Objekt erstellen==
420383
421384``` pascal
422385begin
423386 ...
424387 varDiagramm := varXLApp.Charts.Add; // Fügt ein Chart ein
425388 ...
426389end;
427390```
428391
429-\
430392==Chart aktivieren==
431393
432394``` pascal
433395begin
434396 ...
435397 varDiagramm.Activate; // Aktiviert das Chart
436398 ...
437399end;
438400```
439401
440-\
441402==Chart Diagramtyp festlegen==
442403
443404``` pascal
444405begin
445406 ...
446407 varDiagramm.ChartType := xlColumnClustered; // Legt den Diagramtyp fest
447408 ...
448409end;
449410```
450411
451-\
452412==Chart Datenherkunft (Datenquelle) festlegen==
453413
454414``` pascal
455415begin
456416 ...
457417 varDiagramm.SetSourceData (Source := varXLApp.WorkSheets['Tabelle1'].Range['A1:E13'],
458418 PlotBy := xlColumns); // Legt die Datenherkunft (das Excelsheet und den Bereich im Excelsheet) fest
459419 ...
460420end;
461421```
462422
463-\
464423==Chart verschieben==
465424
466425``` pascal
467426begin
468427 ...
469428 // Diagramm im selben Tabellenblatt wie die Datentabelle.
470429 varDiagramm.Location (Where := xlLocationAsObject, Name:= 'Tabelle1');
471430 ...
472431end;
473432```
474433
475-\
476-
477434## Chart Titel
478435
479436``` pascal
480437begin
481438 ...
482439 varXLApp.Worksheets[1].ChartObjects[1].Chart.HasTitle := True; // Legt fest, dass das Chart einen Titel haben darf
483440 varXLApp.Worksheets[1].ChartObjects[1].Chart.ChartTitle
484441 .Characters.Text := 'Test'; // Legt den Namen des Chart Titels fest
485442 varXLApp.Worksheets[1].ChartObjects[1].Chart.ChartTitle
486443 .Font.Color := vbRed; // Legt die Schriftfarbe des Diagrammtitels fest
487444 varXLApp.Worksheets[1].ChartObjects[1].Chart.ChartTitle
488445 .Interior.Color := vbCyan; // Legt die Hintergrundarbe des Diagrammtitels fest
489446 ...
490447end;
491448```
492449
493-\
494-
495450## Chart Achsenbeschriftung
496451
497452``` pascal
498453begin
499454 ...
500455 // Legt fest, dass das Chart Achsen hat
501456 varXLApp.Worksheets[1].ChartObjects[1].Chart.HasAxis(xlCategory) := True;
502457
503458 // Legt die Schriftfarbe der Achsenkategorie fest
504459 varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlCategory).TickLabels
505460 .Font.Color := vbBlue;
506461
507462 // Legt fest, dass das Chart eine Achsenbeschriftung haben darf
508463 varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlValue).HasTitle:= True;
509464
510465 // Legt den Achsentitel fest
511466 // Ermöglicht das Schreiben des Eurozeichens
512467 varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes[xlValue].AxisTitle
513468 .Characters.Text := UTF8ToUTF16('€');
514469
515470 // Diese Schreibweise des Eurozeichens ist sicherer
516471 wstrUebergabe := UTF8ToUTF16('€');
517472 varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes[xlValue].AxisTitle
518473 .Characters.Text := wstrUebergabe;
519474
520475 // Legt die Schriftfarbe des Achsentitels fest
521476 varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlValue).AxisTitle
522477 .Font.Color := vbBlue;
523478
524479 // Legt die Schriftgrösse des Achsentitels fest
525480 varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlValue).AxisTitle
526481 .Font.Size := 12;
527482 ...
528483end;
529484```
530-
531-\
532485
533486## Chart Legende
534487
535488``` pascal
536489begin
537490 ...
538491 //Legt die Beschriftung des ersten Elements der Chartlegende fest
539492 varXLApp.Worksheets[1].ChartObjects[1].Chart.SeriesCollection(1)
540493 .Name := '="Eins"';
541494 ...
542495end;
543496```
544497
545498# Auszug aus den Excelkonstanten
546499
547500``` pascal
548501unit uXLConst;
549502
550503interface
551504
552505const
553506// Klasse XlSheetType
554507xlChart = -4109;
555508xlDialogSheet = -4116;
556509xlExcel4IntlMacroSheet = 4;
557510xlExcel4MacroSheet = 3;
558511xlWorksheet = -4167;
559512
560513// Klasse XlWBATemplate
561514xlWBATChart = -4109;
562515xlWBATExcel4IntlMacroSheet = 4;
563516xlWBATExcel4MacroSheet = 3;
564517xlWBATWorksheet = -4167;
565518
566519// Klasse XlPattern
567520xlPatternAutomatic = -4105;
568521xlPatternChecker = 9;
569522xlPatternCrissCross = 16;
570523xlPatternDown = -4121;
571524xlPatternGray16 = 17;
572525xlPatternGray25 = -4124;
573526xlPatternGray50 = -4125;
574527xlPatternGray75 = -4126;
575528xlPatternGray8 = 18;
576529xlPatternGrid = 15;
577530xlPatternHorizontal = -4128;
578531xlPatternLightDown = 13;
579532xlPatternLightHorizontal = 11;
580533xlPatternLightUp = 14;
581534xlPatternLightVertical = 12;
582535xlPatternNone = -4142;
583536xlPatternSemiGray75 = 10;
584537xlPatternSolid = 1;
585538xlPatternUp = -4162;
586539xlUp = -4162;
587540xlPatternVertical = -4166;
588541
589542// Klasse XlBordersIndex
590543xlInsideHorizontal = 12;
591544xlInsideVertical = 11;
592545xlDiagonalDown = 5;
593546xlDiagonalUp = 6;
594547xlEdgeBottom = 9;
595548xlEdgeLeft = 7;
596549xlEdgeRight = 10;
597550xlEdgeTop = 8;
598551
599552// Klasse XlLineStyle
600553xlContinuous = 1;
601554xlDash = -4115;
602555xlDashDot = 4;
603556xlDashDotDot = 5;
604557xlDot = -4118;
605558xlDouble = -4119;
606559xlSlantDashDot = 13;
607560xlLineStyleNone = -4142;
608561
609562// Klasse XlChartType
610563xlColumnClustered = 51;
611564xlColumnStacked = 52;
612565xlColumnStacked100 = 53;
613566xl3DColumnClustered = 54;
614567xl3DColumnStacked = 55;
615568xl3DColumnStacked100 = 56;
616569xlBarClustered = 57;
617570xlBarStacked = 58;
618571xlBarStacked100 = 59;
619572xl3DBarClustered = 60;
620573xl3DBarStacked = 61;
621574xl3DBarStacked100 = 62;
622575xlLineStacked = 63;
623576xlLineStacked100 = 64;
624577xlLineMarkers = 65;
625578xlLineMarkersStacked = 66;
626579xlLineMarkersStacked100 = 67;
627580xlPieOfPie = 68;
628581xlPieExploded = 69;
629582xl3DPieExploded = 70;
630583xlBarOfPie = 71;
631584xlXYScatterSmooth = 72;
632585xlXYScatterSmoothNoMarkers = 73;
633586xlXYScatterLines = 74;
634587xlXYScatterLinesNoMarkers = 75;
635588xlAreaStacked = 76;
636589xlAreaStacked100 = 77;
637590xl3DAreaStacked = 78;
638591xl3DAreaStacked100 = 79;
639592xlDoughnutExploded = 80;
640593xlRadarMarkers = 81;
641594xlRadarFilled = 82;
642595xlSurface = 83;
643596xlSurfaceWireframe = 84;
644597xlSurfaceTopView = 85;
645598xlSurfaceTopViewWireframe = 86;
646599xlBubble = 15;
647600xlBubble3DEffect = 87;
648601xlStockHLC = 88;
649602xlStockOHLC = 89;
650603xlStockVHLC = 90;
651604xlStockVOHLC = 91;
652605xlCylinderColClustered = 92;
653606xlCylinderColStacked = 93;
654607xlCylinderColStacked100 = 94;
655608xlCylinderBarClustered = 95;
656609xlCylinderBarStacked = 96;
657610xlCylinderBarStacked100 = 97;
658611xlCylinderCol = 98;
659612xlConeColClustered = 99;
660613xlConeColStacked = 100;
661614xlConeColStacked100 = 101;
662615xlConeBarClustered = 102;
663616xlConeBarStacked = 103;
664617xlConeBarStacked100 = 104;
665618xlConeCol = 105;
666619xlPyramidColClustered = 106;
667620xlPyramidColStacked = 107;
668621xlPyramidColStacked100 = 108;
669622xlPyramidBarClustered = 109;
670623xlPyramidBarStacked = 110;
671624xlPyramidBarStacked100 = 111;
672625xlPyramidCol = 112;
673626xl3DColumn = -4100;
674627xlLine = 4;
675628xl3DLine = -4101;
676629xl3DPie = -4102;
677630xlPie = 5;
678631xlXYScatter = -4169;
679632xl3DArea = -4098;
680633xlArea = 1;
681634xlDoughnut = -4120;
682635xlRadar = -4151;
683636
684637// Klasse Constants
685638xlAll = -4104;
686639xlAutomatic = -4105;
687640xlBoth = 1;
688641xlCenter = -4108;
689642xlChecker = 9;
690643xlCircle = 8;
691644xlCorner = 2;
692645xlCrissCross = 16;
693646xlCross = 4;
694647xlDiamond = 2;
695648xlDistributed = -4117;
696649xlDoubleAccounting = 5;
697650xlFixedValue = 1;
698651xlFormats = -4122;
699652xlGray16 = 17;
700653xlGray8 = 18;
701654xlGrid = 15;
702655xlHigh = -4127;
703656xlInside = 2;
704657xlJustify = -4130;
705658xlLightDown = 13;
706659xlLightHorizontal = 11;
707660xlLightUp = 14;
708661xlLightVertical = 12;
709662xlLow = -4134;
710663xlManual = -4135;
711664xlMinusValues = 3;
712665xlModule = -4141;
713666xlNextToAxis = 4;
714667xlNone = -4142;
715668xlNotes = -4144;
716669xlOff = -4146;
717670xlOn = 1;
718671xlPercent = 2;
719672xlPlus = 9;
720673xlPlusValues = 2;
721674xlSemiGray75 = 10;
722675xlShowLabel = 4;
723676xlShowLabelAndPercent = 5;
724677xlShowPercent = 3;
725678xlShowValue = 2;
726679xlSimple = -4154;
727680xlSingle = 2;
728681xlSingleAccounting = 4;
729682xlSolid = 1;
730683xlSquare = 1;
731684xlStar = 5;
732685xlStError = 4;
733686xlToolbarButton = 2;
734687xlTriangle = 3;
735688xlGray25 = -4124;
736689xlGray50 = -4125;
737690xlGray75 = -4126;
738691xlBottom = -4107;
739692xlLeft = -4131;
740693xlRight = -4152;
741694xlTop = -4160;
742695xl3DBar = -4099;
743696xl3DSurface = -4103;
744697xlBar = 2;
745698xlColumn = 3;
746699xlCombination = -4111;
747700xlCustom = -4114;
748701xlDefaultAutoFormat = -1;
749702xlMaximum = 2;
750703xlMinimum = 4;
751704xlOpaque = 3;
752705xlTransparent = 2;
753706xlBidi = -5000;
754707xlLatin = -5001;
755708xlContext = -5002;
756709xlLTR = -5003;
757710xlRTL = -5004;
758711xlVisualCursor = 2;
759712xlLogicalCursor = 1;
760713xlSystem = 1;
761714xlPartial = 3;
762715xlHindiNumerals = 3;
763716xlBidiCalendar = 3;
764717xlGregorian = 2;
765718xlComplete = 4;
766719xlScale = 3;
767720xlClosed = 3;
768721xlColor1 = 7;
769722xlColor2 = 8;
770723xlColor3 = 9;
771724xlConstants = 2;
772725xlContents = 2;
773726xlBelow = 1;
774727xlCascade = 7;
775728xlCenterAcrossSelection = 7;
776729xlChart4 = 2;
777730xlChartSeries = 17;
778731xlChartShort = 6;
779732xlChartTitles = 18;
780733xlClassic1 = 1;
781734xlClassic2 = 2;
782735xlClassic3 = 3;
783736xl3DEffects1 = 13;
784737xl3DEffects2 = 14;
785738xlAbove = 0;
786739xlAccounting1 = 4;
787740xlAccounting2 = 5;
788741xlAccounting3 = 6;
789742xlAccounting4 = 17;
790743xlAdd = 2;
791744xlDebugCodePane = 13;
792745xlDesktop = 9;
793746xlDirect = 1;
794747xlDivide = 5;
795748xlDoubleClosed = 5;
796749xlDoubleOpen = 4;
797750xlDoubleQuote = 1;
798751xlEntireChart = 20;
799752xlExcelMenus = 1;
800753xlExtended = 3;
801754xlFill = 5;
802755xlFirst = 0;
803756xlFloating = 5;
804757xlFormula = 5;
805758xlGeneral = 1;
806759xlGridline = 22;
807760xlIcons = 1;
808761xlImmediatePane = 12;
809762xlInteger = 2;
810763xlLast = 1;
811764xlLastCell = 11;
812765xlList1 = 10;
813766xlList2 = 11;
814767xlList3 = 12;
815768xlLocalFormat1 = 15;
816769xlLocalFormat2 = 16;
817770xlLong = 3;
818771xlLotusHelp = 2;
819772xlMacrosheetCell = 7;
820773xlMixed = 2;
821774xlMultiply = 4;
822775xlNarrow = 1;
823776xlNoDocuments = 3;
824777xlOpen = 2;
825778xlOutside = 3;
826779xlReference = 4;
827780xlSemiautomatic = 2;
828781xlShort = 1;
829782xlSingleQuote = 2;
830783xlStrict = 2;
831784xlSubtract = 3;
832785xlTextBox = 16;
833786xlTiled = 1;
834787xlTitleBar = 8;
835788xlToolbar = 1;
836789xlVisible = 12;
837790xlWatchPane = 11;
838791xlWide = 3;
839792xlWorkbookTab = 6;
840793xlWorksheet4 = 1;
841794xlWorksheetCell = 3;
842795xlWorksheetShort = 5;
843796xlAllExceptBorders = 6;
844797xlLeftToRight = 2;
845798xlTopToBottom = 1;
846799xlVeryHidden = 2;
847800xlDrawingObject = 14;
848801
849802// Klasse XLPlacement
850803xlMoveAndSize = 1;
851804xlMove = 2;
852805xlFreeFloating = 3;
853806
854807// Klasse XlRowCol
855808xlRows = 1;
856809xlColumns = 2;
857810
858811// Klasse XlChartLocation
859812xlLocationAsNewSheet = 1;
860813xlLocationAsObject = 2;
861814xlLocationAutomatic = 3;
862815
863816// Klasse XlAxisType
864817xlCategory = 1;
865818xlValue = 2;
866819xlSeriesAxis = 3;
867820
868821// Klasse ColorConstants
869822vbBlack = 0;
870823vbBlue = 16711680;
871824vbCyan = 16776960;
872825vbGreen = 65280;
873826vbMagenta = 16711935;
874827vbRed = 255;
875828vbWhite = 16777215;
876829vbYellow = 65535;
877830
878831// Klasse XlCellType
879832xlCellTypeAllFormatConditions = -4172;
880833xlCellTypeAllValidation = -4174;
881834xlCellTypeBlanks = 4;
882835xlCellTypeComments = -4144;
883836xlCellTypeConstants = 2;
884837xlCellTypeFormulas = -4123;
885838xlCellTypeLastCell = 11;
886839xlCellTypeSameFormatConditions = -4173;
887840xlCellTypeSameValidation = -4175;
888841xlCellTypeVisible = 12;
889842
890843// Klasse XLAxisGroup
891844xlPrimary = 1;
892845xlSecondary = 2;
893846
894847implementation
895848
896849end.
897850```
898851
899852---
900853*From the Free Pascal wiki, page "ExcelAutomation/de", as it stood on 2020-02-14 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
901854Category: Tutorials/de

Back to history