FreePascal Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
FreePacal 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

FreePascal Q&A
[183] Re:라자루스에서 xlsx파일을 어떻게 읽고 쓸 수 있나요?
raven90 [raven90] 1511 읽음    2020-11-27 01:38
xlsxTest_2020-11-27.zip 8.1MB fpspreadsheetgrid 와 xlsxooxml 사용해서 xlsx 파일 read
첫눈 님이 쓰신 글 :
: 제목 그대로입니다.
: 라자루스에서 .xlsx파일을 읽고 써야 하는데요.
: 그 방법 좀 알려주시면 감사하겠습니다
: .
패키지 매니저-온라인 에서  fpspreadsheetgrid 설치후
TsWorksheetGrid 컨트롤 사용이 가능해집니다.

출처 : https://forum.lazarus.freepascal.org/index.php?topic=48185.0

    uses
      Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls,
      fpspreadsheetgrid, fpspreadsheetctrls, fpstypes,
      xlsxooxml;   // THIS MUST BE ADDED
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
       filename : string;
    begin
         filename := Application.Location + 'file.xlsx';
         if FileExists(filename) then
         begin
           sWorksheetGrid1.LoadFromSpreadsheetFile(filename, sfOOXML);
         end else begin
           ShowMessage('File not exists: ' + filename);
         end;
    end;
---------------------------------------
출처 : https://wiki.freepascal.org/FPSpreadsheet_tutorial:_Writing_a_mini_spreadsheet_application
sfOOXML;            // Excel 2007+
sfExcel8;           // Excel 97-2003
sfExcel5;           // Excel 5.0
sfExcel2;           // Excel 2.1
sfOpenDocument;     // Open/LibreOffice
sfCSV;                  // Text files

--------------------------------------------
아래는 제가 엑셀2007 exampl1.xlsx  파일을 테스트 해본 예제입니다.
첨부파일을 참고하세요...


unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls,
  xlsxooxml,  fpstypes, fpspreadsheetgrid;//2020.11.27

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    sWorksheetGrid1: TsWorksheetGrid;//2020.11.27 fpspreadsheetgrid 패키지 설치하면 사용할수 있는 컨트롤
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private

  public

  end;

var
  Form1: TForm1;
  MyDir : String; //2020.11.27

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
  MyDir := ExtractFilePath(ParamStr(0));
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  fmt: TsSpreadsheetFormat;
begin
  ShowMessage(Mydir + 'example1.xlsx');
  fmt:=sfOOXML;
  sWorkSheetGrid1.LoadFromSpreadsheetFile(Mydir + 'example1.xlsx', fmt);
end;

end.


+ -

관련 글 리스트
180 라자루스에서 xlsx파일을 어떻게 읽고 쓸 수 있나요? 첫눈 1200 2020/11/16
184     Re:라자루스에서 xlsx파일을 어떻게 읽고 쓸 수 있나요? 브리오 1427 2020/12/18
183     Re:라자루스에서 xlsx파일을 어떻게 읽고 쓸 수 있나요? raven90 1511 2020/11/27
181     Re:라자루스에서 xlsx파일을 어떻게 읽고 쓸 수 있나요? 정성훈.해미 1298 2020/11/16
182         Re:Re:라자루스에서 xlsx파일을 어떻게 읽고 쓸 수 있나요? 첫눈 1348 2020/11/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.