03. februar 2010 - 08:11Der er
4 kommentarer og 1 løsning
Udskrive graf fra Excel ark
Jeg har et Excel regneark som jeg åbner fra mit Delphi program og indsætter nogle værdier i sheet 'Data'. Disse værdier er grundlag for en graf på sheet 'Graph' Efterfølgende vil jeg gerne udskrive den graf, men der hopper kæden af for mig.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
xlApp.Workbooks.Open(sWorkbook); HandleDataDay(sWorkbook); //Fylder tal i Excel arket xlSheets := XLApp.Sheets; xlSheets.Item['Graph'].Select; xlApp.ActiveSheet.ChartObjects(1).Activate; xlApp.ActiveSheet.PrintOut; xlApp.ActiveWorkBook.Save; if not VarIsEmpty(xlApp) then begin xlApp.DisplayAlerts := False; xlApp.Quit; end; end;
Måske ikke så elegant, men det virker. Eneste catch er at jeg ikke kan greje vordan jeg sender printer oplysninger med som jeg normalt gør i VBA for at skrive ud på en betemt printer. Men det er en detalje.
procedure SetDefaultPrinter(const PrinterName: String); var I: Integer; Device: PChar; Driver: PChar; Port: PChar; HdeviceMode: THandle; aPrinter: TPrinter; begin Printer.PrinterIndex := -1; GetMem(Device, 255); GetMem(Driver, 255); GetMem(Port, 255); aPrinter := TPrinter.Create; try for I := 0 to Printer.Printers.Count - 1 do begin if Printer.Printers[i] = PrinterName then begin aprinter.PrinterIndex := i; aPrinter.getprinter(device, driver, port, HdeviceMode); StrCat(Device, ','); StrCat(Device, Driver); StrCat(Device, Port); WriteProfileString('windows', 'device', Device); StrCopy(Device, 'windows'); SendMessage(HWND_BROADCAST, WM_WININICHANGE, 0, Longint(@Device)); end; end; finally aPrinter.Free; end; FreeMem(Device, 255); FreeMem(Driver, 255); FreeMem(Port, 255); end;
Gem evt current først: FtempPrinter:=Printer.Printers[Printer.PrinterIndex];
Og sæt FtempPrinter tilbage bagefter vha: SetDefaultPrinter(FtempPrinter);
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.