Sign in Join
Wiki copytemporary

ExcelAutomation/de

Zurück zur Office Automation.\

=Excel= Alle Möglichkeiten der Excelautomation aufzuzeigen ist nicht möglich ich hoffe aber für jeden Bedarf Anregungen gefunden zu haben.
Excel ist zu dem die automatisierungsfreundlichste Software von Microsoft.
Wenn Sie Umlaute usw. verwenden, dann sollten Sie wissen, dass Excel UTF16 codierte Strings verwendet.
Für die Oleautomation muss die Unit ComObj eingebunden werden.
Für die Verwendung von Umlauten usw. muss die Unit lclproc eingebunden werden.\

==Speicherplatz reservieren==

pascal
var
  varXLApp: oleVariant;      // wird für die Adressierung des Programms Excel verwedet
  varXLWb: oleVariant;       // wird für die Adressierung des Exceldatei verwendet
  wstrUebergabe: WideString; // Hilfsvariable (wird z. B. für Umlaute usw. benötigt)
  wstrRange: WideString      // Hilfsvariable für eine Range

Excel OleObjekt erstellen

pascal
uses 
  comobj;

begin
   ...
   try
     varXLApp := CreateOleObject('Excel.Application');  // erstellt das Excelobjekt
   except
     WriteLn('MS Excel kann nicht gestartet werden.');  // Fehlerbehandlung
   end;
   ...
end;

Excel beenden und den Speicher freigeben

pascal
begin
   ...
   varXLApp.Quit;
   varXLApp := UnAssigned; //Der Speicher muss am Ende wieder freigegeben werden, sonst entstehen Speicherlecks 
   ...
end;

==Excel Version ermitteln==

pascal
begin
  ...
  ShowMessage(varXLApp.Version);
  ...
end;

==Fehlermeldungen und Warnungen deaktivieren== Das Dekativieren von bestimmten Fehlermeldungen und Warnungen kann die Softwaresteuerung vereinfachen.

pascal
begin
   ...
   varXLApp.DisplayAlerts := False;   // schaltet diverse Fehlermeldungen von Excel aus
   ...
end;

==Sichtbarkeit von Excel steuern== Für Excel 2003 und älter gilt, dass das Unterdrücken der Anzeige die Verarbeitungsgeschwindigkeit beschleunigt.
Für alle Excelversionen gilt, dass es das das Flackern des Bildschirms verhindert.

pascal
begin
   ...
   varXLApp.Visible := False;         // macht Excel unsichtbar
   varXLApp.ScreenUpdating := False;  // schaltet das ScreenUpdating von Excel aus

   varXLApp.ScreenUpdating := True;   // schaltet das ScreenUpdating von Excel ein
   varXLApp.Visible := True;          // macht Excel sichtbar
   ...
end;

Workbooks

Workbook (Datei) öffnen

Öffnet eine vorhandene Datei.\

pascal
begin
   ...
   varXLApp.Workbooks.Open(strPfad); // öffnet die Exceldatei (Pfad: maximal 255 Zeichen)

   // Alternative:
   // öffnet ein vorhandenes Workbook (Exceldatei) und weist seine Speicheradresse
   // der Variablen varXLWb zu. Diese Variable ermöglicht eine kürzere Schreibweise
   // und eindeutige (direkte) Ansprache des Dokuments.
   // Das ist besonders dann hilfreich, wenn man mit mehreren Exceldateien gleichzeitig arbeitet.
   varXLWb := varXLApp.Workbooks.Open(strPfad);
   ...
end;

==Workbook (Datei) einfügen== Erstellt eine neue Datei.\

pascal
begin
   ...
   varXLApp.Workbooks.Add;               // fügt ein neues Workbook ein
   ...
end;

==Workbook speichern==

pascal
begin
   ...
   varXLApp.Workbooks[1].Save;           // speichert ein Worksheet über seinen Index
   varXLApp.Workbooks['Test.xls'].Save;  // speicher ein Worksheet über seinen Namen
   ...
end;

==Workbook unter neuem Namen speichern==

pascal
begin
   ...
   varXLApp.Workbooks[1].SaveAs('D:\Test.xls', varXLApp.Workbooks[1].fileformat);
   ...
end;

==Workbook schliessen==

pascal
begin
   ...
   varXLApp.Workbooks[1].Close;
   ...
end;

==Name des aktiven Workbooks ermitteln==

pascal
var
   strName: String;
begin
   ...
   // Ausgabe am Bildschirm
   ShowMessage(varXLApp.ActiveWorkbook.Name);
   // Alternative:
   // speichern in einer Variable
   strName := varXLApp.ActiveWorkbook.Name;
   ...
end;

Worksheets

Worksheet einfügen

pascal
begin
   ...
   varXLApp.WorkBooks[1].WorkSheets.Add; //fügt ein neues WorkSheet hinzu
   ...
end;

==Worksheet umbenennen==

pascal
begin
   ...
   varXLApp.WorkBooks[1].WorkSheets[1].Name := 'Neuer Name'; // benennt ein Worksheet über seinen Index um
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Name := 'Neuer Name'; // benennt ein Worksheet über seinen Namen um
   ...
end;

==Worksheet löschen==

pascal
begin
   ...
   varXLApp.WorkBooks[1].WorkSheets[3].Delete;               // löscht ein Worksheet über seinen Index
   varXLApp.WorkBooks[1].WorkSheets['Tabelle3'].Delete;      // löscht ein Worksheet über seinen Namen
   ...
end;

==Worksheet aktivieren==

pascal
begin
   ...
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Activate;
   ...
end;

==Hintergrundbild einfügen== Um ein Hintergrundbild in ein Worksheet einzufügen gibt es mehrere Möglichkeiten.\

pascal
begin
   ...
   //  Um das richtige Worksheet zu addressieren verwendet man den Index von Workbook und Worksheet
   varXLApp.WorkBooks[1].WorkSheets[1].SetBackGroundPicture('D:\Testbild.JPG');
   // Alternative
   // Um das richtige Worksheet zu addressieren verwendet man die Namen von Workbook und Worksheet
   varXLApp.WorkBooks['Test.xls'].WorkSheets['Tabelle2'].SetBackGroundPicture('D:\Testbild.JPG');
   ...
end;

Zeilen und Spalten

Zeilenbreite und Spaltenhöhe setzen

pascal
begin
   ...
   // Setzt die Spaltenbreite für Spalte 1
   varXLApp.WorkBooks[1].WorkSheets[1].Columns.Columns[1].ColumnWidth := 70;
   // oder
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Columns.Columns[1].ColumnWidth := 70;

   // Setzt die Spaltenhöhe für Zeile 1
   varXLApp.WorkBooks[1].WorkSheets[1].Rows.Rows[1].RowHeight := 60;
   // oder
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Rows.Rows[1].RowHeight := 60;
   ...
end;

==Zeilen löschen==

pascal
begin
   ...
   // Löscht die Zeilen  8 bis 10 und verschiebt die darunter liegenden Zeilen nach oben
   varXLWb.Worksheets['Tabelle2'].Rows['8:10'].Delete (xlUp);
   ...
end;

Zellen und Ranges

Autofilter setzen

pascal
begin
   ...
   // setzt den Autofilter auf die erste Zeile
   varXLApp.WorkBooks[1].WorkSheets[1].Rows.Rows[1].AutoFilter;
   ...
end;

==Rahmen zeichnen==

pascal
begin
   ...
   // Zeichnet einen Rahmen um den Bereich "B2:C3"
   // Der Parameter BorderAround hat folgende Syntax: BorderAround(Linienstil, Linenstärke, Farbe)
   varXLApp.WorkBooks[1].WorkSheets[1].Range['B2:C3'].BorderAround(1, 2, 1);
   ...
end;

==Hyperlinks und URLS einfügen==

pascal
begin
   ...
   // Fügt eine URL in Zelle "A2" in Sheet 2 ein
   // Alternative 1
   varXLApp.WorkBooks[1].Worksheets[2].Hyperlinks.add(
     varXLApp.WorkBooks[1].Worksheets[2].Cells[2, 1], 'http://www.google.de');
   // Alternative 2
   varXLApp.WorkBooks[1].worksheets[2].Cells[2,1].Formula := '=HYPERLINK("http://www.google.de")';

   // Fügt eine Emailadresse als Formel in Zelle "A3" in Sheet 2 ein
   varXLApp.WorkBooks[1].worksheets[2].Cells[3,1].Formula := '=HYPERLINK("mailto:test.testmann.@test.com","Email")';
   ...
end;

==Wert einfügen== Um einen oder mehrere Werte in einen Bereich einzufügen gibt es verschiedene Möglichkeiten.\

pascal
begin
  ...
  // Alternative 1
  varXLApp.WorkBooks[1].WorkSheets[1].Range['A5'].Value := 3;
  varXLApp.WorkBooks[1].WorkSheets[1].Range['A6'].Value := 3;
  varXLApp.WorkBooks[1].WorkSheets[1].Range['A7'].Value := 3;

  // Alternative 2
  varXLApp.WorkBooks[1].WorkSheets[1].Range['A5', 'A7'].Value := 3;

  // Alternative 3
  wstrRange := UTF8ToUTF16('A' + IntToStr(5) + ':A' + IntToStr(7));
  varXLApp.WorkBooks[1].WorkSheets[1].Range[wstrRange].Value := 3;

  // Alternative 4
  varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Range['A5', 'A7'].Value := 3;

  // Alternative ...
  ...

  // Übernimmt Umlaute usw. und benötigt dafür die Unit lclproc
  varXLApp.WorkSheets[1].Range['A15'].Value := UTF8ToUTF16('Überlegung');
  // Diese Vorgehensweise zur Verwendung von Umlauten ist sicherer
  wstrUebergabe := UTF8ToUTF16('Überlegung');
  varXLApp.WorkSheets[1].Range['A15'].Value := wstrUebergabe;

  // Ermittelt die letzte Zeile und schreibt diese in Zeile 1 der Spalte F
  varXLWb.Worksheets['Tabelle2'].Range['F1'].Value :=
    varXLWb.Worksheets['Tabelle2'].UsedRange.SpecialCells(xlCellTypeLastCell).Row;
  // schreibt Text in die Zeile 1 der Spalte B
  varXLWb.Worksheets['Tabelle2'].Cells[1, 2].Value := 'Test';
   ...
end;

Formel einfügen

pascal
begin
   ...
   // Alternative 1
   varXLApp.WorkBooks[1].worksheets[2].Cells[6,3].Formula := '=Sum(A5:A7)';
   // Alternative 2
   varXLApp.WorkBooks[1].WorkSheets[2].Range['C6'].Formula := '=Sum(A5:A7)';
   ...
end;

==Arbeiten mit Schriften==

pascal
begin
   ...
   // Legt die Schriftart fest
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Name := 'Arial';
   // Legt die Schriftgröße fest
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Size := 20;
   // Legt die Fettschrift fest
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Bold := True;
   //Legt die Kursivschrift fest
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Italic := True;
   // Unterstreicht den Eintrag
   varXLApp.WorkBooks[1].WorkSheets['Tabelle1'].Cells[1, 1].Font.Underline := True;
   ...
end;

Chart erstellen

Die Beispiele gehen davon aus, dass das Excelobjekt (varXLApp) bereits existiert und die Exceldatei geöffnet ist.
==Chart Speicher reservieren==

pascal
var
   varDiagramm: OleVariant;

==Chart Speicher freigeben==

pascal
begin
   ...
   varDiagramm := UnAssigned;
   ...
end;

==Chart Objekt erstellen==

pascal
begin
   ...
   varDiagramm := varXLApp.Charts.Add; // Fügt ein Chart ein
   ...
end;

==Chart aktivieren==

pascal
begin
   ...
   varDiagramm.Activate; // Aktiviert das Chart
   ...
end;

==Chart Diagramtyp festlegen==

pascal
begin
   ...
   varDiagramm.ChartType := xlColumnClustered; // Legt den Diagramtyp fest
   ...
end;

==Chart Datenherkunft (Datenquelle) festlegen==

pascal
begin
   ...
   varDiagramm.SetSourceData (Source := varXLApp.WorkSheets['Tabelle1'].Range['A1:E13'],
                           PlotBy := xlColumns);  // Legt die Datenherkunft (das Excelsheet und den Bereich im Excelsheet) fest
   ...
end;

==Chart verschieben==

pascal
begin
   ...
   // Diagramm im selben Tabellenblatt wie die Datentabelle.
   varDiagramm.Location (Where := xlLocationAsObject, Name:= 'Tabelle1');
   ...
end;

Chart Titel

pascal
begin
   ...
   varXLApp.Worksheets[1].ChartObjects[1].Chart.HasTitle := True; // Legt fest, dass das Chart einen Titel haben darf
   varXLApp.Worksheets[1].ChartObjects[1].Chart.ChartTitle
                                   .Characters.Text := 'Test';    // Legt den Namen des Chart Titels fest
   varXLApp.Worksheets[1].ChartObjects[1].Chart.ChartTitle
                                   .Font.Color := vbRed;          // Legt die Schriftfarbe des Diagrammtitels fest
   varXLApp.Worksheets[1].ChartObjects[1].Chart.ChartTitle
                                   .Interior.Color := vbCyan;     // Legt die Hintergrundarbe des Diagrammtitels fest
   ...
end;

Chart Achsenbeschriftung

pascal
begin
  ...
  // Legt fest, dass das Chart Achsen hat
  varXLApp.Worksheets[1].ChartObjects[1].Chart.HasAxis(xlCategory) := True;

  // Legt die Schriftfarbe der Achsenkategorie fest
  varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlCategory).TickLabels
    .Font.Color := vbBlue;

  // Legt fest, dass das Chart eine Achsenbeschriftung haben darf
  varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlValue).HasTitle:= True;

  // Legt den Achsentitel fest
  // Ermöglicht das Schreiben des Eurozeichens
  varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes[xlValue].AxisTitle
    .Characters.Text := UTF8ToUTF16('€');

  // Diese Schreibweise des Eurozeichens ist sicherer
  wstrUebergabe := UTF8ToUTF16('€');
  varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes[xlValue].AxisTitle
    .Characters.Text := wstrUebergabe;

  // Legt die Schriftfarbe des Achsentitels fest
  varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlValue).AxisTitle
    .Font.Color := vbBlue;

  // Legt die Schriftgrösse des Achsentitels fest
  varXLApp.Worksheets[1].ChartObjects[1].Chart.Axes(xlValue).AxisTitle
    .Font.Size := 12;
   ...
end;

Chart Legende

pascal
begin
  ...
  //Legt die Beschriftung des ersten Elements der Chartlegende fest
  varXLApp.Worksheets[1].ChartObjects[1].Chart.SeriesCollection(1)
    .Name := '="Eins"';
   ...
end;

Auszug aus den Excelkonstanten

pascal
unit uXLConst;

interface

const
// Klasse XlSheetType
xlChart = -4109;
xlDialogSheet = -4116;
xlExcel4IntlMacroSheet = 4;
xlExcel4MacroSheet = 3;
xlWorksheet = -4167;

// Klasse XlWBATemplate
xlWBATChart = -4109;
xlWBATExcel4IntlMacroSheet = 4;
xlWBATExcel4MacroSheet = 3;
xlWBATWorksheet = -4167;

// Klasse XlPattern
xlPatternAutomatic = -4105;
xlPatternChecker = 9;
xlPatternCrissCross = 16;
xlPatternDown = -4121;
xlPatternGray16 = 17;
xlPatternGray25 = -4124;
xlPatternGray50 = -4125;
xlPatternGray75 = -4126;
xlPatternGray8 = 18;
xlPatternGrid = 15;
xlPatternHorizontal = -4128;
xlPatternLightDown = 13;
xlPatternLightHorizontal = 11;
xlPatternLightUp = 14;
xlPatternLightVertical = 12;
xlPatternNone = -4142;
xlPatternSemiGray75 = 10;
xlPatternSolid = 1;
xlPatternUp = -4162;
xlUp = -4162;
xlPatternVertical = -4166;

// Klasse XlBordersIndex
xlInsideHorizontal = 12;
xlInsideVertical = 11;
xlDiagonalDown = 5;
xlDiagonalUp = 6;
xlEdgeBottom = 9;
xlEdgeLeft = 7;
xlEdgeRight = 10;
xlEdgeTop = 8;

// Klasse XlLineStyle
xlContinuous = 1;
xlDash = -4115;
xlDashDot = 4;
xlDashDotDot = 5;
xlDot = -4118;
xlDouble = -4119;
xlSlantDashDot = 13;
xlLineStyleNone = -4142;

// Klasse XlChartType
xlColumnClustered = 51;
xlColumnStacked = 52;
xlColumnStacked100 = 53;
xl3DColumnClustered = 54;
xl3DColumnStacked = 55;
xl3DColumnStacked100 = 56;
xlBarClustered = 57;
xlBarStacked = 58;
xlBarStacked100 = 59;
xl3DBarClustered = 60;
xl3DBarStacked = 61;
xl3DBarStacked100 = 62;
xlLineStacked = 63;
xlLineStacked100 = 64;
xlLineMarkers = 65;
xlLineMarkersStacked = 66;
xlLineMarkersStacked100 = 67;
xlPieOfPie = 68;
xlPieExploded = 69;
xl3DPieExploded = 70;
xlBarOfPie = 71;
xlXYScatterSmooth = 72;
xlXYScatterSmoothNoMarkers = 73;
xlXYScatterLines = 74;
xlXYScatterLinesNoMarkers = 75;
xlAreaStacked = 76;
xlAreaStacked100 = 77;
xl3DAreaStacked = 78;
xl3DAreaStacked100 = 79;
xlDoughnutExploded = 80;
xlRadarMarkers = 81;
xlRadarFilled = 82;
xlSurface = 83;
xlSurfaceWireframe = 84;
xlSurfaceTopView = 85;
xlSurfaceTopViewWireframe = 86;
xlBubble = 15;
xlBubble3DEffect = 87;
xlStockHLC = 88;
xlStockOHLC = 89;
xlStockVHLC = 90;
xlStockVOHLC = 91;
xlCylinderColClustered = 92;
xlCylinderColStacked = 93;
xlCylinderColStacked100 = 94;
xlCylinderBarClustered = 95;
xlCylinderBarStacked = 96;
xlCylinderBarStacked100 = 97;
xlCylinderCol = 98;
xlConeColClustered = 99;
xlConeColStacked = 100;
xlConeColStacked100 = 101;
xlConeBarClustered = 102;
xlConeBarStacked = 103;
xlConeBarStacked100 = 104;
xlConeCol = 105;
xlPyramidColClustered = 106;
xlPyramidColStacked = 107;
xlPyramidColStacked100 = 108;
xlPyramidBarClustered = 109;
xlPyramidBarStacked = 110;
xlPyramidBarStacked100 = 111;
xlPyramidCol = 112;
xl3DColumn = -4100;
xlLine = 4;
xl3DLine = -4101;
xl3DPie = -4102;
xlPie = 5;
xlXYScatter = -4169;
xl3DArea = -4098;
xlArea = 1;
xlDoughnut = -4120;
xlRadar = -4151;

// Klasse Constants
xlAll = -4104;
xlAutomatic = -4105;
xlBoth = 1;
xlCenter = -4108;
xlChecker = 9;
xlCircle = 8;
xlCorner = 2;
xlCrissCross = 16;
xlCross = 4;
xlDiamond = 2;
xlDistributed = -4117;
xlDoubleAccounting = 5;
xlFixedValue = 1;
xlFormats = -4122;
xlGray16 = 17;
xlGray8 = 18;
xlGrid = 15;
xlHigh = -4127;
xlInside = 2;
xlJustify = -4130;
xlLightDown = 13;
xlLightHorizontal = 11;
xlLightUp = 14;
xlLightVertical = 12;
xlLow = -4134;
xlManual = -4135;
xlMinusValues = 3;
xlModule = -4141;
xlNextToAxis = 4;
xlNone = -4142;
xlNotes = -4144;
xlOff = -4146;
xlOn = 1;
xlPercent = 2;
xlPlus = 9;
xlPlusValues = 2;
xlSemiGray75 = 10;
xlShowLabel = 4;
xlShowLabelAndPercent = 5;
xlShowPercent = 3;
xlShowValue = 2;
xlSimple = -4154;
xlSingle = 2;
xlSingleAccounting = 4;
xlSolid = 1;
xlSquare = 1;
xlStar = 5;
xlStError = 4;
xlToolbarButton = 2;
xlTriangle = 3;
xlGray25 = -4124;
xlGray50 = -4125;
xlGray75 = -4126;
xlBottom = -4107;
xlLeft = -4131;
xlRight = -4152;
xlTop = -4160;
xl3DBar = -4099;
xl3DSurface = -4103;
xlBar = 2;
xlColumn = 3;
xlCombination = -4111;
xlCustom = -4114;
xlDefaultAutoFormat = -1;
xlMaximum = 2;
xlMinimum = 4;
xlOpaque = 3;
xlTransparent = 2;
xlBidi = -5000;
xlLatin = -5001;
xlContext = -5002;
xlLTR = -5003;
xlRTL = -5004;
xlVisualCursor = 2;
xlLogicalCursor = 1;
xlSystem = 1;
xlPartial = 3;
xlHindiNumerals = 3;
xlBidiCalendar = 3;
xlGregorian = 2;
xlComplete = 4;
xlScale = 3;
xlClosed = 3;
xlColor1 = 7;
xlColor2 = 8;
xlColor3 = 9;
xlConstants = 2;
xlContents = 2;
xlBelow = 1;
xlCascade = 7;
xlCenterAcrossSelection = 7;
xlChart4 = 2;
xlChartSeries = 17;
xlChartShort = 6;
xlChartTitles = 18;
xlClassic1 = 1;
xlClassic2 = 2;
xlClassic3 = 3;
xl3DEffects1 = 13;
xl3DEffects2 = 14;
xlAbove = 0;
xlAccounting1 = 4;
xlAccounting2 = 5;
xlAccounting3 = 6;
xlAccounting4 = 17;
xlAdd = 2;
xlDebugCodePane = 13;
xlDesktop = 9;
xlDirect = 1;
xlDivide = 5;
xlDoubleClosed = 5;
xlDoubleOpen = 4;
xlDoubleQuote = 1;
xlEntireChart = 20;
xlExcelMenus = 1;
xlExtended = 3;
xlFill = 5;
xlFirst = 0;
xlFloating = 5;
xlFormula = 5;
xlGeneral = 1;
xlGridline = 22;
xlIcons = 1;
xlImmediatePane = 12;
xlInteger = 2;
xlLast = 1;
xlLastCell = 11;
xlList1 = 10;
xlList2 = 11;
xlList3 = 12;
xlLocalFormat1 = 15;
xlLocalFormat2 = 16;
xlLong = 3;
xlLotusHelp = 2;
xlMacrosheetCell = 7;
xlMixed = 2;
xlMultiply = 4;
xlNarrow = 1;
xlNoDocuments = 3;
xlOpen = 2;
xlOutside = 3;
xlReference = 4;
xlSemiautomatic = 2;
xlShort = 1;
xlSingleQuote = 2;
xlStrict = 2;
xlSubtract = 3;
xlTextBox = 16;
xlTiled = 1;
xlTitleBar = 8;
xlToolbar = 1;
xlVisible = 12;
xlWatchPane = 11;
xlWide = 3;
xlWorkbookTab = 6;
xlWorksheet4 = 1;
xlWorksheetCell = 3;
xlWorksheetShort = 5;
xlAllExceptBorders = 6;
xlLeftToRight = 2;
xlTopToBottom = 1;
xlVeryHidden = 2;
xlDrawingObject = 14;

// Klasse XLPlacement
xlMoveAndSize = 1;
xlMove = 2;
xlFreeFloating = 3;

// Klasse XlRowCol
xlRows = 1;
xlColumns = 2;

// Klasse XlChartLocation
xlLocationAsNewSheet = 1;
xlLocationAsObject = 2;
xlLocationAutomatic = 3;

// Klasse XlAxisType
xlCategory = 1;
xlValue = 2;
xlSeriesAxis = 3;

// Klasse ColorConstants
vbBlack = 0;
vbBlue = 16711680;
vbCyan = 16776960;
vbGreen = 65280;
vbMagenta = 16711935;
vbRed = 255;
vbWhite = 16777215;
vbYellow = 65535;

// Klasse XlCellType
xlCellTypeAllFormatConditions = -4172;
xlCellTypeAllValidation = -4174;
xlCellTypeBlanks = 4;
xlCellTypeComments = -4144;
xlCellTypeConstants = 2;
xlCellTypeFormulas = -4123;
xlCellTypeLastCell = 11;
xlCellTypeSameFormatConditions = -4173;
xlCellTypeSameValidation = -4175;
xlCellTypeVisible = 12;

// Klasse XLAxisGroup
xlPrimary = 1;
xlSecondary = 2;

implementation

end.

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.

Revision 2, last changed by WikiArchive .

Edited on wiki.freepascal.org by 4 people, 2012–2020

From the official wiki's backup of 26 May 2024: who edited this page there, and when. Edits made there after that date were not recorded, and the earlier versions are not shown here; the main page says why.

WhenWhoWhat changed
OlafCreated page
Olaf
OlafExcel OleObjekt beenden und Speicher freigeben
OlafExcel als OleObjekt
OlafExcel Version ermitteln
OlafExcel OleObjekt: Datei öffnen und Datei schliessen
OlafExcel OleObjekt: Datei öffnen und Datei schliessen
OlafExcel OleObjekt: Autofilter setzen
OlafExcel OleObjekt: Chart erstellen
Olaf
Olaf
OlafExcel OleObjekt: Workbooks
Olaf
Olaf
OlafExcel OleObjekt: Worksheets
Olaf
OlafExcel OleObjekt: Sichtbarkeit steuern
OlafExcel OleObjekt: Sichtbarkeit steuern
OlafExcel als OleObjekt
OlafExcel als OleObjekt
Chronos
OlafWert einfügen
OlafExcel als OleObjekt
OlafExcel als OleObjekt
Olaf
OlafAuszug aus den Excelkonstanten
Olaf
OlafHintergrundbild einfügen
OlafHintergrundbild einfügen
OlafWert einfügen
OlafWert einfügen
OlafHintergrundbild einfügen
OlafChart Achsenbeschriftung
OlafAuszug aus den Excelkonstanten
OlafWorkbook unter neuem Namen speichern
OlafExcel OleObjekt: Datei öffnen und Datei schliessen
OlafExcel OleObjekt: Datei öffnen
OlafWorkbook einfügen
OlafExcel OleObjekt: Workbooks
OlafExcel OleObjekt: Worksheets
OlafExcel OleObjekt: Formel einfügen
OlafExcel OleObjekt Zellen und Ranges
OlafExcel OleObjekt: Zeilenbreite und Spaltenhöhe setzen
OlafExcel OleObjekt: Chart erstellen
OlafExcel OleObjekt: Sichtbarkeit steuern
OlafSichtbarkeit steuern
OlafExcel OleObjekt: Fehlermeldungen und Warnungen deaktivieren
OlafExcel OleObjekt beenden und Speicher freigeben
OlafDas Excel OleObjekt beenden und den Speicher freigeben
OlafChart Legende
OlafWert einfügen
OlafFormel einfügen
OlafFormel einfügen
OlafSpeicherplatz reservieren
OlafExcel OleObjekt erstellen
OlafExcel beenden und den Speicher freigeben
OlafExcel Version ermitteln
OlafSichtbarkeit von Excel steuern
OlafFehlermeldungen und Warnungen deaktivieren
OlafZeilen löschen
OlafArbeiten mit Schriften
OlafExcel als OleObjekt
OlafZellen und Ranges
OlafZellen, Ranges, Zeilen und Spalten
Olaf=Zeilen und Spalten
OlafZeilen und Spalten
OlafZeilen und Spalten
OlafZellen und Ranges=
OlafHintergrundbild einfügen
OlafWorksheets
OlafSpeicherplatz reservieren
OlafWorkbook (Datei) öffnen
OlafWorkbook (Datei) öffnen
OlafWorkbook schliessen
OlafName des aktiven Workbooks ermitteln
Olaf
OlafChart Titel
Olaf
Olaf (minor)
Olaf (minor)
OlafAuszug aus den Excelkonstanten (minor)
OlafChart verschieben festlegen (minor)
OlafSpeicherplatz reservieren (minor)
OlafWert einfügen
OlafChart Achsenbeschriftung
OlafChart Legende
OlafAuszug aus den Excelkonstanten (minor)
OlafSpeicherplatz reservieren (minor)
OlafSichtbarkeit von Excel steuern (minor)
OlafWert einfügen (minor)
OlafWert einfügen (minor)
OlafSpeicherplatz reservieren (minor)
Olaf
OlafWert einfügen
WpExcel OleObjekt erstellen: Hinweis auf Unit comobj
TrevFixed syntax highlighting (minor)

Talk about this page

Nobody has opened a bench for this page yet. Sign in to open one.